From 62cac30480cdf9b4047c5a4e6ef5f293a4e7c706 Mon Sep 17 00:00:00 2001 From: Rob Davies Date: Mon, 3 Jul 2017 16:47:07 +0100 Subject: [PATCH] Core and composer updates --- web/.gitattributes | 1 + web/composer.lock | 252 +- web/core/CHANGELOG.txt | 4 + web/core/MAINTAINERS.txt | 33 +- web/core/composer.json | 6 +- web/core/core.link_relation_types.yml | 3 + web/core/core.services.yml | 2 +- web/core/includes/bootstrap.inc | 18 +- web/core/includes/file.inc | 30 + web/core/lib/Drupal.php | 2 +- .../Context/ContextDefinitionInterface.php | 4 +- .../Plugin/Context/ContextInterface.php | 9 +- .../Component/Serialization/YamlPecl.php | 6 + .../lib/Drupal/Component/Utility/Html.php | 6 +- .../Drupal/Component/Utility/UrlHelper.php | 9 +- .../Core/Annotation/ContextDefinition.php | 2 - .../Core/Cache/ChainedFastBackendFactory.php | 2 + .../lib/Drupal/Core/Composer/Composer.php | 23 - .../Drupal/Core/Config/ConfigInstaller.php | 2 +- .../Drupal/Core/Controller/ControllerBase.php | 6 +- .../Compiler/StackedKernelPass.php | 6 +- web/core/lib/Drupal/Core/DrupalKernel.php | 15 + .../Drupal/Core/Entity/ContentEntityBase.php | 6 +- .../Entity/Element/EntityAutocomplete.php | 6 + .../Drupal/Core/Entity/EntityInterface.php | 3 + .../Entity/EntityListBuilderInterface.php | 4 +- .../Entity/Sql/SqlContentEntityStorage.php | 7 + .../BaseFieldOverrideAccessControlHandler.php | 23 + .../Core/Field/Entity/BaseFieldOverride.php | 3 +- .../EntityReferenceFormatterBase.php | 3 +- .../Core/Field/Plugin/migrate/field/Email.php | 54 + .../Drupal/Core/Lock/LockBackendInterface.php | 35 +- .../Core/Menu/LocalTaskManagerInterface.php | 2 +- .../lib/Drupal/Core/Menu/MenuLinkTree.php | 7 + .../lib/Drupal/Core/Menu/MenuTreeStorage.php | 39 +- .../Context/ContextDefinitionInterface.php | 5 +- .../Core/Plugin/Context/ContextInterface.php | 5 +- .../Core/Plugin/DefaultPluginManager.php | 2 +- .../ObjectWithPluginCollectionInterface.php | 2 +- .../Core/Render/Element/StatusMessages.php | 27 +- web/core/lib/Drupal/Core/Render/theme.api.php | 7 +- .../Drupal/Core/Test/ObjectSerialization.php | 24 + web/core/misc/autocomplete.js | 8 +- web/core/misc/icons/787878/plus.svg | 2 +- web/core/misc/icons/bebebe/plus.svg | 2 +- web/core/misc/tabledrag.js | 8 +- .../views.view.aggregator_rss_feed.yml | 5 + .../views.view.aggregator_sources.yml | 9 +- .../d6_aggregator_item.yml | 2 +- .../d7_aggregator_item.yml | 2 +- .../src/Tests/FeedAdminDisplayTest.php | 10 + .../src/Tests/BigPipePlaceholderTestCases.php | 26 +- .../big_pipe/src/Tests/BigPipeTest.php | 2 +- .../block/migration_templates/d6_block.yml | 3 +- .../Kernel/Migrate/d6/MigrateBlockTest.php | 268 +- .../block_content/block_content.module | 2 +- .../block_content/block_content.routing.yml | 1 + .../block_content_entity_display.yml | 39 + .../block_content_entity_form_display.yml | 36 + .../migration_templates/d6_custom_block.yml | 2 +- .../migration_templates/d7_custom_block.yml | 2 +- .../src/Tests/BlockContentTypeTest.php | 11 + .../MigrateBlockContentEntityDisplayTest.php | 54 + ...grateBlockContentEntityFormDisplayTest.php | 54 + .../book/migration_templates/d6_book.yml | 2 +- .../Migrate/d6/MigrateBookConfigsTest.php | 2 +- .../src/Kernel/Migrate/d6/MigrateBookTest.php | 2 +- web/core/modules/ckeditor/ckeditor.api.php | 2 +- .../modules/ckeditor/ckeditor.libraries.yml | 1 + .../src/CKEditorPluginButtonsInterface.php | 5 +- .../src/Functional}/CKEditorAdminTest.php | 42 +- .../src/Functional}/CKEditorLoadingTest.php | 6 +- .../CKEditorStylesComboAdminTest.php | 6 +- .../migration_templates/d6_comment.yml | 4 +- .../migration_templates/d7_comment.yml | 2 +- .../src/Kernel/CommentFieldAccessTest.php | 5 +- .../Kernel/Migrate/d6/MigrateCommentTest.php | 2 +- ...igrateCommentVariableEntityDisplayTest.php | 5 + ...teCommentVariableEntityFormDisplayTest.php | 5 + .../d6/MigrateCommentVariableFieldTest.php | 2 +- .../d6/MigrateCommentVariableInstanceTest.php | 2 +- .../d7/MigrateCommentEntityDisplayTest.php | 2 +- ...ateCommentEntityFormDisplaySubjectTest.php | 2 +- .../MigrateCommentEntityFormDisplayTest.php | 2 +- .../d7/MigrateCommentFieldInstanceTest.php | 2 +- .../Migrate/d7/MigrateCommentFieldTest.php | 2 +- .../Kernel/Migrate/d7/MigrateCommentTest.php | 2 +- .../Migrate/d7/MigrateCommentTypeTest.php | 2 +- .../d6/CommentSourceWithHighWaterTest.php | 106 + .../Plugin/migrate/source/d6/CommentTest.php | 116 + .../d6/CommentVariablePerCommentTypeTest.php | 62 + .../migrate/source/d6/CommentVariableTest.php | 92 + .../Plugin/migrate/source/d7/CommentTest.php | 117 + .../migrate/source}/d7/CommentTypeTest.php | 63 +- .../tests/src/Unit/CommentLinkBuilderTest.php | 6 +- .../d6/CommentSourceWithHighWaterTest.php | 23 - .../tests/src/Unit/Migrate/d6/CommentTest.php | 12 - .../src/Unit/Migrate/d6/CommentTestBase.php | 80 - .../d6/CommentVariablePerCommentTypeTest.php | 59 - .../Unit/Migrate/d6/CommentVariableTest.php | 89 - .../tests/src/Unit/Migrate/d7/CommentTest.php | 100 - .../Tests/ConfigSingleImportExportTest.php | 23 + ...amic.other_module_test_with_dependency.yml | 13 + ...et_another_module_test_with_dependency.yml | 13 + ...ig_install_double_dependency_test.info.yml | 5 + .../src/Form/ConfigTranslationFormBase.php | 4 +- .../src/Tests/ConfigTranslationUiTest.php | 40 + .../ConfigTranslationViewListUiTest.php | 2 +- .../migration_templates/contact_category.yml | 2 +- .../d6_contact_settings.yml | 2 +- .../d7_contact_settings.yml | 2 +- .../content_moderation.libraries.yml | 8 +- .../content_moderation.module | 17 - .../content_moderation.permissions.yml | 2 +- ...form.css => content_moderation.module.css} | 11 +- .../css/content_moderation.theme.css | 7 + .../src/Access/LatestRevisionCheck.php | 23 +- ...entModerationStateAccessControlHandler.php | 37 + .../ContentModerationStateStorageSchema.php | 19 +- .../src/Entity/ContentModerationState.php | 6 +- .../src/EntityOperations.php | 40 +- .../src/Form/EntityModerationForm.php | 6 +- .../EntityRevisionConverter.php | 2 +- .../FieldWidget/ModerationStateWidget.php | 7 +- .../Field/ModerationStateFieldItemList.php | 4 +- .../src/Plugin/Menu/EditTab.php | 105 - .../ModerationStateConstraintValidator.php | 4 +- .../Plugin/WorkflowType/ContentModeration.php | 11 + .../Routing/EntityModerationRouteProvider.php | 1 - .../src/StateTransitionValidation.php | 2 +- .../src/Tests/ModerationFormTest.php | 106 - .../src/Tests/ModerationStateTestBase.php | 146 - .../entity-moderation-form.html.twig | 2 +- .../tests/src/Functional/LocalTaskTest.php | 96 - .../src/Functional/ModerationFormTest.php | 208 ++ .../ModerationRevisionRevertTest.php | 90 + .../Functional}/ModerationStateBlockTest.php | 2 +- .../Functional}/ModerationStateNodeTest.php | 4 +- .../ModerationStateNodeTypeTest.php | 30 +- .../Functional/ModerationStateTestBase.php | 1 + .../tests/src/Functional/NodeAccessTest.php | 58 +- ...oderationStateAccessControlHandlerTest.php | 54 + ...ontentModerationStateStorageSchemaTest.php | 142 + .../src/Kernel/ContentModerationStateTest.php | 20 +- .../src/Kernel/DefaultRevisionStateTest.php | 109 + .../tests/src/Kernel/InitialStateTest.php | 82 + .../ModerationStateFieldItemListTest.php | 4 +- .../src/Unit/LatestRevisionCheckTest.php | 69 +- .../content_translation.module | 6 +- .../ContentTranslationController.php | 8 +- .../ContentTranslationOperationsTest.php | 2 +- .../ContentTranslationUITestBase.php | 5 +- .../src/Plugin/migrate/field/d6/DateField.php | 79 + .../datetime/src/Tests/DateTestBase.php | 5 + .../tests/src/Functional/DateTestBase.php | 184 ++ .../src/Functional}/DateTimeFieldTest.php | 77 +- .../Plugin/migrate/field/d6/DateFieldTest.php | 35 + .../src/Functional}/DateRangeFieldTest.php | 158 +- .../field/migration_templates/d6_field.yml | 13 +- .../d6_field_formatter_settings.yml | 26 +- .../migration_templates/d6_field_instance.yml | 4 +- .../d6_field_instance_widget_settings.yml | 7 +- .../d7_field_formatter_settings.yml | 4 +- .../d7_field_instance_widget_settings.yml | 2 +- .../field/src/Entity/FieldStorageConfig.php | 1 + .../src/FieldConfigAccessControlHandler.php | 23 +- ...FieldStorageConfigAccessControlHandler.php | 33 + .../src/Plugin/migrate/process/FieldType.php | 27 +- .../migrate/process/d6/FieldSettings.php | 22 +- ...erenceFieldTranslatedReferenceViewTest.php | 29 + .../EntityReferenceFormatterTest.php | 13 + .../d6/MigrateFieldFormatterSettingsTest.php | 29 + .../Migrate/d6/MigrateFieldInstanceTest.php | 65 + .../Kernel/Migrate/d6/MigrateFieldTest.php | 74 +- .../d6/MigrateFieldWidgetSettingsTest.php | 15 + ...MigrateFieldInstanceWidgetSettingsTest.php | 1 + .../FieldConfigAccessControlHandlerTest.php | 43 + ...dStorageConfigAccessControlHandlerTest.php | 200 ++ .../migrate/process/d6/FieldSettingsTest.php | 2 +- .../field_layout_test.module | 16 + .../tests/src/Functional/FieldLayoutTest.php | 20 +- .../FunctionalJavascript/FieldLayoutTest.php | 58 +- .../field_ui/src/Element/FieldUiTable.php | 2 +- .../field_ui/src/FieldConfigListBuilder.php | 8 +- .../src/Form/EntityDisplayFormBase.php | 10 +- .../field_ui/src/Form/FieldStorageAddForm.php | 4 +- .../field_ui/src/Tests/ManageDisplayTest.php | 4 + .../field_ui_test/field_ui_test.module | 9 + .../tests/src/Functional/ManageFieldsTest.php | 61 + web/core/modules/file/file.module | 8 + .../file/migration_templates/d6_file.yml | 2 +- .../file/migration_templates/d6_upload.yml | 2 +- .../d6_upload_entity_display.yml | 9 +- .../d6_upload_entity_form_display.yml | 9 +- .../d6_upload_field_instance.yml | 2 +- .../file/migration_templates/d7_file.yml | 7 +- .../file/src/FileAccessControlHandler.php | 37 +- .../file/src/FileUsage/FileUsageInterface.php | 12 +- .../file/src/Tests/FilePrivateTest.php | 113 + .../file/tests/src/Kernel/AccessTest.php | 25 +- .../src/Kernel/FileItemValidationTest.php | 2 + .../d6/MigrateUploadEntityDisplayTest.php | 29 +- .../d6/MigrateUploadEntityFormDisplayTest.php | 29 +- .../Migrate/d6/MigrateUploadFieldTest.php | 5 + .../Migrate/d6/MigrateUploadInstanceTest.php | 5 + .../Kernel/Migrate/d6/MigrateUploadTest.php | 5 + .../Plugin/migrate/process/FilterSettings.php | 4 +- .../migrate/process/FilterSettingsTest.php | 102 + .../migration_templates/d6_forum_settings.yml | 2 +- .../migration_templates/d7_forum_settings.yml | 2 +- .../Migrate/d6/MigrateForumConfigsTest.php | 4 +- .../src/LinkManager/RelationLinkManager.php | 38 +- .../RelationLinkManagerInterface.php | 8 +- .../BaseFieldOverrideHalJsonAnonTest.php | 30 + .../BaseFieldOverrideHalJsonBasicAuthTest.php | 35 + .../BaseFieldOverrideHalJsonCookieTest.php | 35 + .../BlockContentTypeHalJsonAnonTest.php | 30 + .../BlockContentTypeHalJsonBasicAuthTest.php | 35 + .../BlockContentTypeHalJsonCookieTest.php | 35 + ...ContentLanguageSettingsHalJsonAnonTest.php | 30 + ...ntLanguageSettingsHalJsonBasicAuthTest.php | 35 + ...ntentLanguageSettingsHalJsonCookieTest.php | 35 + .../Editor/EditorHalJsonAnonTest.php | 30 + .../Editor/EditorHalJsonBasicAuthTest.php | 35 + .../Editor/EditorHalJsonCookieTest.php | 35 + .../Feed/FeedHalJsonAnonTest.php | 19 + .../Feed/FeedHalJsonBasicAuthTest.php | 24 + .../Feed/FeedHalJsonCookieTest.php | 19 + .../Feed/FeedHalJsonTestBase.php | 60 + .../FieldConfigHalJsonAnonTest.php | 30 + .../FieldConfigHalJsonBasicAuthTest.php | 35 + .../FieldConfigHalJsonCookieTest.php | 35 + .../FieldStorageConfigHalJsonAnonTest.php | 30 + ...FieldStorageConfigHalJsonBasicAuthTest.php | 35 + .../FieldStorageConfigHalJsonCookieTest.php | 35 + .../RdfMapping/RdfMappingHalJsonAnonTest.php | 30 + .../RdfMappingHalJsonBasicAuthTest.php | 35 + .../RdfMappingHalJsonCookieTest.php | 35 + .../RestResourceConfigHalJsonAnonTest.php | 30 + ...RestResourceConfigHalJsonBasicAuthTest.php | 35 + .../RestResourceConfigHalJsonCookieTest.php | 35 + .../ShortcutSetHalJsonAnonTest.php | 30 + .../ShortcutSetHalJsonBasicAuthTest.php | 24 + .../ShortcutSetHalJsonCookieTest.php | 19 + .../tests/src/Kernel/HalLinkManagerTest.php | 39 +- .../d6_imagecache_presets.yml | 2 +- .../FormErrorHandlerCKEditorTest.php | 6 +- .../Migrate/MigrateDefaultLanguageTrait.php | 76 - .../Migrate/d6/MigrateDefaultLanguageTest.php | 60 +- .../d6/MigrateLanguageContentSettingsTest.php | 2 +- .../Migrate/d7/MigrateDefaultLanguageTest.php | 60 +- .../d7/MigrateLanguageContentSettingsTest.php | 2 +- .../layout_discovery.layouts.yml | 54 +- .../layouts/onecol/layout--onecol.html.twig | 15 +- .../layouts/onecol/onecol.css | 6 +- .../layout--threecol-25-50-25.html.twig | 59 +- .../threecol_25_50_25/threecol_25_50_25.css | 27 +- .../layout--threecol-33-34-33.html.twig | 53 +- .../threecol_33_34_33/threecol_33_34_33.css | 25 +- .../layouts/twocol/layout--twocol.html.twig | 39 +- .../layouts/twocol/twocol.css | 22 +- .../layout--twocol-bricks.html.twig | 65 +- .../layouts/twocol_bricks/twocol_bricks.css | 24 +- .../templates/layout.html.twig | 23 +- .../tests/src/Kernel/LayoutTest.php | 154 +- .../Plugin/Field/FieldWidget/LinkWidget.php | 5 +- .../{cckfield => field/d6}/LinkField.php | 14 +- .../{cckfield => field}/d7/LinkField.php | 6 +- .../src/Plugin/migrate/process/d6/CckLink.php | 83 +- .../Plugin/migrate/process/d6/FieldLink.php | 86 + .../tests/src/Functional/LinkFieldTest.php | 70 +- .../d6/{CckLinkTest.php => FieldLinkTest.php} | 8 +- web/core/modules/locale/locale.compare.inc | 2 +- .../migration_templates/d6_menu_links.yml | 2 +- .../migration_templates/d7_menu_links.yml | 2 +- .../src/Plugin/migrate/process/d6/LinkUri.php | 2 + .../Plugin/migrate/process/d7/InternalUri.php | 2 + .../MenuLinkContentDeleteFormTest.php | 6 +- .../Functional}/MenuLinkContentFormTest.php | 8 +- .../MenuLinkContentTranslationUITest.php | 4 +- .../src/Plugin/migrate/destination/Config.php | 52 +- .../migrate/destination/EntityConfigBase.php | 50 +- .../migrate/destination/EntityViewMode.php | 19 + .../destination/PerComponentEntityDisplay.php | 39 + .../PerComponentEntityFormDisplay.php | 32 + .../migrate/src/Plugin/migrate/id_map/Sql.php | 2 +- .../src/Plugin/migrate/process/DedupeBase.php | 47 +- .../Plugin/migrate/process/DedupeEntity.php | 74 +- .../Plugin/migrate/process/DefaultValue.php | 2 +- .../Plugin/migrate/process/EntityExists.php | 82 + .../src/Plugin/migrate/process/FormatDate.php | 113 + .../src/Plugin/migrate/process/Log.php | 42 + .../Plugin/migrate/process/MakeUniqueBase.php | 78 + .../migrate/process/MakeUniqueEntityField.php | 149 + .../src/Plugin/migrate/process/Migration.php | 168 +- .../migrate/process/MigrationLookup.php | 260 ++ .../Plugin/migrate/process/SkipOnEmpty.php | 10 +- .../migrate/process/SkipRowIfNotSet.php | 9 +- .../src/Plugin/migrate/process/StaticMap.php | 93 +- .../migrate/source/EmbeddedDataSource.php | 33 +- .../src/Plugin/migrate/source/SqlBase.php | 23 +- web/core/modules/migrate/src/Row.php | 5 +- ...ernal_translated_test_node_translation.yml | 2 +- .../migrate_high_water_test.info.yml | 7 + .../migrate_sql_test.info.yml | 7 - .../Plugin/migrate/source/HighWaterTest.php | 8 +- .../src/Kernel/HighWaterNotJoinableTest.php | 57 +- .../tests/src/Kernel/HighWaterTest.php | 2 +- .../src/Kernel/MigrateSourceTestBase.php | 9 +- .../src/Kernel/Plugin/EntityExistsTest.php | 61 + .../tests/src/Kernel/Plugin/LogTest.php | 36 + .../migrate/tests/src/Unit/RowTest.php | 33 + .../migrate/tests/src/Unit/SqlBaseTest.php | 9 +- .../src/Unit/process/DedupeEntityTest.php | 3 + .../tests/src/Unit/process/FormatDateTest.php | 124 + .../process/MakeUniqueEntityFieldTest.php | 214 ++ .../src/Unit/process/MigrationLookupTest.php | 202 ++ .../tests/src/Unit/process/MigrationTest.php | 165 +- .../src/Unit/process/SkipOnEmptyTest.php | 30 + .../src/Unit/process/SkipRowIfNotSetTest.php | 45 + .../migrate_drupal.services.yml | 9 + .../src/Annotation/MigrateCckField.php | 47 +- .../src/Annotation/MigrateField.php | 54 + .../src/Plugin/MigrateCckFieldInterface.php | 72 +- .../Plugin/MigrateCckFieldPluginManager.php | 52 +- .../MigrateCckFieldPluginManagerInterface.php | 33 +- .../src/Plugin/MigrateFieldInterface.php | 87 + .../src/Plugin/MigrateFieldPluginManager.php | 56 + .../MigrateFieldPluginManagerInterface.php | 28 + .../src/Plugin/migrate/CckMigration.php | 126 +- .../src/Plugin/migrate/FieldMigration.php | 171 ++ .../migrate/cckfield/CckFieldPluginBase.php | 93 +- .../Plugin/migrate/field/FieldPluginBase.php | 83 + .../Plugin/migrate/field/NodeReference.php | 43 + .../migrate_drupal/tests/fixtures/drupal6.php | 2349 +++++++++++++-- .../migrate_drupal/tests/fixtures/drupal7.php | 17 + ...migrate_field_plugin_manager_test.info.yml | 6 + .../migrate_field_plugin_manager_test.module | 14 + .../Plugin/migrate/cckfield/d6/FileField.php | 32 + .../src/Plugin/migrate/field/D6FileField.php | 31 + .../field/D6NoCoreVersionSpecified.php | 27 + .../CckFieldBackwardsCompatibilityTest.php | 29 + .../Kernel/MigrateFieldPluginManagerTest.php | 51 + .../migrate/source/VariableMultiRowTest.php | 57 + .../Plugin/migrate/source/VariableTest.php | 54 + .../migrate/source/d6/i18nVariableTest.php | 77 + .../dependencies/MigrateDependenciesTest.php | 9 +- ...ariableMultiRowSourceWithHighwaterTest.php | 20 - .../src/Unit/source/VariableMultiRowTest.php | 12 - .../migrate_drupal_ui.links.menu.yml | 12 + .../migrate_drupal_ui.routing.yml | 2 +- .../src/Form/MigrateUpgradeForm.php | 17 +- .../src/Tests/MigrateUpgradeTestBase.php | 16 +- .../src/Tests/d6/MigrateUpgrade6Test.php | 28 +- .../src/Tests/d7/MigrateUpgrade7Test.php | 22 +- .../optional/views.view.content_recent.yml | 4 +- .../config/optional/views.view.glossary.yml | 2 + .../node/migration_templates/d6_node.yml | 2 +- .../migration_templates/d6_node_revision.yml | 2 +- .../d6_node_translation.yml | 2 +- .../node/migration_templates/d6_node_type.yml | 2 + .../node/migration_templates/d7_node_type.yml | 2 + web/core/modules/node/node.routing.yml | 1 + .../node/src/Form/NodeRevisionRevertForm.php | 10 + .../node/src/Plugin/migrate/D6NodeDeriver.php | 48 +- .../node/src/Plugin/migrate/D7NodeDeriver.php | 43 +- .../src/Plugin/migrate/source/d6/NodeType.php | 4 + .../src/Plugin/migrate/source/d7/NodeType.php | 6 + .../src/Plugin/views/argument/UidRevision.php | 2 +- .../node/src/Tests/AssertButtonsTrait.php | 5 + .../node/src/Tests/NodeRevisionsTest.php | 1 + .../modules/node/src/Tests/NodeTypeTest.php | 13 +- .../node/src/Tests/Views/NodeTestBase.php | 5 + ...s.view.test_argument_node_uid_revision.yml | 106 + .../src/Functional/AssertButtonsTrait.php | 49 + .../Migrate/d6/MigrateNodeRevisionTest.php | 2 +- .../NodeAccessAutoBubblingTest.php | 5 +- .../Functional}/NodeAccessBaseTableTest.php | 4 +- .../src/Functional}/NodeAccessPagerTest.php | 6 +- .../NodeAccessRebuildNodeGrantsTest.php | 2 +- .../src/Functional}/NodeAdminTest.php | 4 +- .../Functional}/NodeBlockFunctionalTest.php | 2 +- .../src/Functional}/NodeEditFormTest.php | 2 +- .../NodeEntityViewModeAlterTest.php | 7 +- .../Functional}/NodeFieldMultilingualTest.php | 8 +- .../src/Functional}/NodeFormButtonsTest.php | 2 +- .../src/Functional}/NodeQueryAlterTest.php | 2 +- .../NodeRevisionPermissionsTest.php | 6 +- .../src/Functional/NodeRevisionsAllTest.php | 25 +- .../Functional}/NodeSyndicateBlockTest.php | 2 +- .../src/Functional}/NodeTitleTest.php | 12 +- .../src/Functional}/NodeTitleXSSTest.php | 5 +- .../src/Functional}/NodeTranslationUITest.php | 10 +- .../src/Functional}/NodeViewTest.php | 18 +- .../Functional}/Views/BulkFormAccessTest.php | 6 +- .../src/Functional}/Views/BulkFormTest.php | 2 +- .../Views/FilterNodeAccessTest.php | 9 +- .../Views/FilterUidRevisionTest.php | 2 +- .../src/Functional}/Views/FrontPageTest.php | 11 +- .../Functional}/Views/NodeFieldFilterTest.php | 9 +- .../Functional}/Views/NodeFieldTokensTest.php | 3 +- .../Functional}/Views/NodeIntegrationTest.php | 4 +- .../Functional}/Views/NodeLanguageTest.php | 4 +- .../Views/NodeRevisionWizardTest.php | 4 +- .../src/Functional/Views/NodeTestBase.php | 29 + .../src/Functional}/Views/PathPluginTest.php | 9 +- .../Functional}/Views/RevisionLinkTest.php | 2 +- .../src/Functional}/Views/RowPluginTest.php | 9 +- .../src/Functional}/Views/StatusExtraTest.php | 2 +- .../d6/MigrateNodeBundleSettingsTest.php | 5 + .../d6/MigrateNodeSettingPromoteTest.php | 2 +- .../d6/MigrateNodeSettingStatusTest.php | 2 +- .../d6/MigrateNodeSettingStickyTest.php | 2 +- .../src/Kernel/Migrate/d6/MigrateNodeTest.php | 16 +- .../Kernel/Migrate/d6/MigrateNodeTypeTest.php | 22 + .../src/Kernel/Migrate/d7/MigrateNodeTest.php | 4 + .../Migrate/d7/MigrateNodeTitleLabelTest.php | 2 +- .../Kernel/Migrate/d7/MigrateNodeTypeTest.php | 29 +- .../src/Kernel}/SummaryLengthTest.php | 71 +- .../Kernel/Views/ArgumentUidRevisionTest.php | 93 + .../Views/RevisionRelationshipsTest.php | 30 +- .../css/{offcanvas.css => off-canvas.css} | 12 +- ...anvas.motion.css => off-canvas.motion.css} | 10 +- .../outside_in/css/outside_in.module.css | 2 +- .../outside_in/css/outside_in.motion.css | 6 +- .../outside_in/css/outside_in.theme.css | 8 +- .../js/{offcanvas.js => off-canvas.js} | 34 +- web/core/modules/outside_in/js/outside_in.js | 33 +- .../outside_in/outside_in.libraries.yml | 2 +- .../outside_in.links.contextual.yml | 2 +- web/core/modules/outside_in/outside_in.module | 21 +- .../modules/outside_in/outside_in.routing.yml | 6 +- .../outside_in/outside_in.services.yml | 2 +- .../src/Ajax/OpenOffCanvasDialogCommand.php | 6 +- .../src/Block/BlockEntityOffCanvasForm.php | 4 +- .../src/Form/SystemMenuOffCanvasForm.php | 22 +- .../Render/MainContent/OffCanvasRender.php | 4 +- .../src/Tests/Ajax/OffCanvasDialogTest.php | 10 +- .../outside-in-page-wrapper.html.twig | 6 +- .../off_canvas_test.info.yml} | 0 .../off_canvas_test.routing.yml | 29 + .../src/Controller/TestController.php | 38 +- .../offcanvas_test/offcanvas_test.routing.yml | 29 - .../FunctionalJavascript/OffCanvasTest.php | 57 +- .../OutsideInBlockFormTest.php | 425 ++- .../OutsideInJavascriptTestBase.php | 34 +- .../Ajax/OpenOffCanvasDialogCommandTest.php | 2 +- .../src/StackMiddleware/PageCache.php | 2 +- .../page_cache/src/Tests/PageCacheTest.php | 40 + .../path/migration_templates/d6_url_alias.yml | 2 +- .../path/migration_templates/d7_url_alias.yml | 2 +- .../Plugin/Field/FieldWidget/PathWidget.php | 4 +- .../tests/src/Functional/PathAliasTest.php | 16 + .../Kernel/Migrate/d6/MigrateUrlAliasTest.php | 2 +- .../Kernel/Migrate/d7/MigrateUrlAliasTest.php | 1 + .../modules/rdf/src/Entity/RdfMapping.php | 1 + .../rest/config/schema/rest.schema.yml | 19 +- .../rest/src/Annotation/RestResource.php | 18 +- .../modules/rest/src/Plugin/ResourceBase.php | 10 - web/core/modules/rest/src/RequestHandler.php | 31 +- .../rest/src/Routing/ResourceRoutes.php | 11 +- .../BaseFieldOverrideJsonAnonTest.php | 24 + .../BaseFieldOverrideJsonBasicAuthTest.php | 34 + .../BaseFieldOverrideJsonCookieTest.php | 29 + .../BaseFieldOverrideResourceTestBase.php | 111 + .../BlockContentTypeJsonAnonTest.php | 24 + .../BlockContentTypeJsonBasicAuthTest.php | 34 + .../BlockContentTypeJsonCookieTest.php | 29 + .../BlockContentTypeResourceTestBase.php | 71 + .../Comment/CommentResourceTestBase.php | 2 +- .../ContentLanguageSettingsJsonAnonTest.php | 24 + ...ntentLanguageSettingsJsonBasicAuthTest.php | 34 + .../ContentLanguageSettingsJsonCookieTest.php | 29 + ...ontentLanguageSettingsResourceTestBase.php | 92 + .../Editor/EditorJsonAnonTest.php | 24 + .../Editor/EditorJsonBasicAuthTest.php | 34 + .../Editor/EditorJsonCookieTest.php | 29 + .../Editor/EditorResourceTestBase.php | 184 ++ .../EntityResource/EntityResourceTestBase.php | 38 +- .../EntityResource/Feed/FeedJsonAnonTest.php | 24 + .../Feed/FeedJsonBasicAuthTest.php | 34 + .../Feed/FeedJsonCookieTest.php | 29 + .../Feed/FeedResourceTestBase.php | 185 ++ .../FieldConfig/FieldConfigJsonAnonTest.php | 24 + .../FieldConfigJsonBasicAuthTest.php | 34 + .../FieldConfig/FieldConfigJsonCookieTest.php | 29 + .../FieldConfigResourceTestBase.php | 119 + .../FieldStorageConfigJsonAnonTest.php | 24 + .../FieldStorageConfigJsonBasicAuthTest.php | 34 + .../FieldStorageConfigJsonCookieTest.php | 29 + .../FieldStorageConfigResourceTestBase.php | 104 + .../RdfMapping/RdfMappingJsonAnonTest.php | 24 + .../RdfMappingJsonBasicAuthTest.php | 34 + .../RdfMapping/RdfMappingJsonCookieTest.php | 29 + .../RdfMapping/RdfMappingResourceTestBase.php | 125 + .../RestResourceConfigJsonAnonTest.php | 24 + .../RestResourceConfigJsonBasicAuthTest.php | 34 + .../RestResourceConfigJsonCookieTest.php | 29 + .../RestResourceConfigResourceTestBase.php | 103 + .../ShortcutSet/ShortcutSetJsonAnonTest.php | 24 + .../ShortcutSetJsonBasicAuthTest.php | 34 + .../ShortcutSet/ShortcutSetJsonCookieTest.php | 29 + .../ShortcutSetResourceTestBase.php | 88 + .../User/UserResourceTestBase.php | 53 +- .../tests/src/Functional/ResourceTestBase.php | 12 +- .../serialization/src/Encoder/XmlEncoder.php | 4 +- .../tests/src/Unit/Encoder/XmlEncoderTest.php | 27 +- .../migration_templates/d7_shortcut.yml | 2 +- .../d7_shortcut_set_users.yml | 4 +- .../src/ShortcutSetAccessControlHandler.php | 2 + web/core/modules/simpletest/src/TestBase.php | 51 +- .../modules/simpletest/src/WebTestBase.php | 64 +- .../statistics/src/StatisticsSettingsForm.php | 2 +- .../src/StatisticsStorageInterface.php | 9 +- web/core/modules/statistics/statistics.module | 7 + .../src/Functional}/StatisticsAdminTest.php | 9 +- .../src/Functional}/StatisticsLoggingTest.php | 18 +- .../src/Functional}/StatisticsReportsTest.php | 2 +- .../d6/MigrateStatisticsConfigsTest.php | 2 +- web/core/modules/syslog/src/Logger/SysLog.php | 3 - .../migration_templates/d7_theme_settings.yml | 44 + .../system/src/Element/StatusReportPage.php | 8 +- .../migrate/destination/d7/ThemeSettings.php | 94 + .../migrate/source/d7/ThemeSettings.php | 44 + .../src/Tests/Ajax/AjaxFormPageCacheTest.php | 102 - web/core/modules/system/system.install | 2 +- .../src/Entity/EntityTestNoBundle.php | 24 + ...tyTestReferenceCustomCacheTagFormatter.php | 28 + .../test_page_test/src/Form/TestForm.php | 12 + .../src/Functional}/Batch/PageTest.php | 6 +- .../src/Functional}/Batch/ProcessingTest.php | 6 +- .../src/Functional/System/StatusTest.php | 10 + .../Migrate/d7/MigrateThemeSettingsTest.php | 59 + .../migrate/source/d7/ThemeSettingsTest.php | 65 + .../migration_templates/d6_taxonomy_term.yml | 4 +- .../d6_taxonomy_vocabulary.yml | 2 +- .../migration_templates/d6_term_node.yml | 2 +- .../d6_term_node_revision.yml | 2 +- .../d6_vocabulary_entity_display.yml | 11 +- .../d6_vocabulary_entity_form_display.yml | 11 +- .../d6_vocabulary_field.yml | 2 +- .../d6_vocabulary_field_instance.yml | 11 +- .../migration_templates/d7_taxonomy_term.yml | 4 +- .../d7_taxonomy_vocabulary.yml | 11 +- .../Plugin/migrate/D7TaxonomyTermDeriver.php | 46 +- .../src/Plugin/migrate/source/Term.php | 2 + .../modules/taxonomy/src/TermInterface.php | 2 +- .../migrations/taxonomy_term_stub_test.yml | 2 +- .../d6/MigrateTermNodeRevisionTest.php | 2 +- .../Kernel/Migrate/d6/MigrateTermNodeTest.php | 2 +- .../d6/MigrateVocabularyEntityDisplayTest.php | 34 +- ...MigrateVocabularyEntityFormDisplayTest.php | 34 +- .../d6/MigrateVocabularyFieldInstanceTest.php | 35 +- .../Migrate/d6/MigrateVocabularyFieldTest.php | 2 +- .../Migrate/d7/MigrateNodeTaxonomyTest.php | 1 + .../Migrate/d7/MigrateTaxonomyTermTest.php | 1 + .../d7/MigrateTaxonomyVocabularyTest.php | 1 + .../src/Plugin/migrate/cckfield/TextField.php | 28 +- .../tests/src/Unit/Migrate/TextFieldTest.php | 10 +- .../src/Functional}/TrackerTest.php | 6 +- .../Migrate/d7/MigrateTrackerNodeTest.php | 1 + .../Migrate/d7/MigrateTrackerUserTest.php | 1 + web/core/modules/update/update.manager.inc | 16 +- .../user/migration_templates/d6_user.yml | 4 +- .../user/migration_templates/d7_user.yml | 4 +- .../modules/user/src/Plugin/migrate/User.php | 26 +- .../user/src/Plugin/views/filter/Roles.php | 3 + .../modules/user/templates/username.html.twig | 8 +- .../src/Functional}/UserCancelTest.php | 10 +- .../Kernel/Views/HandlerFilterRolesTest.php | 36 +- .../views/src/Plugin/views/area/Result.php | 12 +- .../src/Plugin/views/field/NumericField.php | 34 +- .../Plugin/views/style/StylePluginBase.php | 4 +- .../src/Tests/Handler/HandlerTestBase.php | 4 +- .../src/Tests/Plugin/DisplayFeedTest.php | 20 + .../views/src/Tests/Plugin/PluginTestBase.php | 4 +- .../modules/views/src/Tests/ViewTestBase.php | 4 + .../views/src/Tests/Wizard/WizardTestBase.php | 4 + .../views.view.test_area_result.yml | 79 + .../src/Functional}/DefaultViewsTest.php | 6 +- .../Entity/BaseFieldAccessTest.php | 8 +- .../Functional}/Entity/FieldEntityTest.php | 4 +- .../Entity/FieldEntityTranslationTest.php | 8 +- .../Entity/FilterEntityBundleTest.php | 6 +- .../Entity/ViewNonTranslatableEntityTest.php | 6 +- .../src/Functional}/GlossaryTest.php | 12 +- .../Handler/AreaHTTPStatusCodeTest.php | 5 +- .../src/Functional}/Handler/AreaTest.php | 44 +- .../Functional}/Handler/AreaTitleWebTest.php | 8 +- .../Handler/ArgumentStringTest.php | 5 +- .../Handler/FieldDropButtonTest.php | 12 +- .../Handler/FieldEntityOperationsTest.php | 11 +- .../Handler/FieldGroupRowsTest.php | 9 +- .../Handler/FieldGroupRowsWebTest.php | 12 +- .../src/Functional}/Handler/FieldWebTest.php | 11 +- .../Functional}/Handler/FilterDateTest.php | 42 +- .../Functional}/Handler/HandlerAllTest.php | 5 +- .../src/Functional}/Handler/HandlerTest.php | 15 +- .../src/Functional}/Plugin/AccessTest.php | 9 +- .../Plugin/ArgumentDefaultTest.php | 13 +- .../src/Functional}/Plugin/CacheTagTest.php | 9 +- .../src/Functional}/Plugin/CacheWebTest.php | 9 +- .../ContextualFiltersBlockContextTest.php | 8 +- .../Plugin/DisabledDisplayTest.php | 14 +- .../Plugin/DisplayAttachmentTest.php | 9 +- .../Plugin/DisplayEntityReferenceTest.php | 9 +- .../Functional}/Plugin/DisplayPageWebTest.php | 29 +- .../src/Functional}/Plugin/DisplayTest.php | 97 +- .../Functional}/Plugin/ExposedFormTest.php | 33 +- .../src/Functional}/Plugin/FilterTest.php | 9 +- .../src/Functional}/Plugin/MenuLinkTest.php | 8 +- .../src/Functional}/Plugin/MiniPagerTest.php | 9 +- .../Plugin/NumericFormatPluralTest.php | 8 +- .../src/Functional}/Plugin/PagerTest.php | 5 +- .../Functional}/Plugin/StyleSummaryTest.php | 12 +- .../src/Functional}/Plugin/StyleTableTest.php | 29 +- .../src/Functional}/Plugin/StyleTest.php | 8 +- .../src/Functional}/Plugin/ViewsBulkTest.php | 10 +- .../src/Functional}/Plugin/ViewsFormTest.php | 6 +- .../Plugin/ViewsSqlExceptionTest.php | 9 +- .../src/Functional}/RenderCacheWebTest.php | 8 +- .../src/Functional}/SearchIntegrationTest.php | 15 +- .../Functional}/SearchMultilingualTest.php | 5 +- .../src/Functional}/TaxonomyGlossaryTest.php | 6 +- .../src/Functional}/ViewRenderTest.php | 6 +- .../tests/src/Functional/ViewTestBase.php | 158 + .../src/Functional}/ViewsEscapingTest.php | 6 +- .../src/Functional}/ViewsFormMultipleTest.php | 10 +- .../src/Functional}/ViewsTemplateTest.php | 5 +- .../Functional}/ViewsThemeIntegrationTest.php | 6 +- .../src/Functional}/Wizard/BasicTest.php | 14 +- .../Functional}/Wizard/ItemsPerPageTest.php | 8 +- .../src/Functional}/Wizard/MenuTest.php | 2 +- .../src/Functional}/Wizard/NodeWizardTest.php | 3 +- .../src/Functional}/Wizard/PagerTest.php | 2 +- .../src/Functional}/Wizard/SortingTest.php | 6 +- .../src/Functional}/Wizard/TaggedWithTest.php | 6 +- .../src/Functional/Wizard/WizardTestBase.php | 28 + .../src/Kernel/Handler/AreaEmptyTest.php | 94 + .../src/Kernel/Handler/AreaResultTest.php | 72 + .../src/Kernel/Handler/FieldNumericTest.php | 164 + .../Kernel}/Plugin/DisplayExtenderTest.php | 11 +- .../src/Kernel/Plugin/DisplayPageTest.php | 70 +- .../Kernel/Plugin/ExposedFormRenderTest.php | 55 + .../Kernel/Plugin/RelationshipJoinInTest.php | 130 + web/core/modules/views/views.module | 13 +- web/core/modules/views/views.theme.inc | 5 +- .../FunctionalJavascript/ViewsListingTest.php | 20 +- .../modules/workflows/src/Entity/Workflow.php | 31 +- .../workflows/src/Plugin/WorkflowTypeBase.php | 8 + .../workflows/src/WorkflowInterface.php | 8 - .../workflows/src/WorkflowTypeInterface.php | 11 + .../tests/src/Functional/WorkflowUiTest.php | 4 +- .../workflows/tests/src/Unit/WorkflowTest.php | 19 - web/core/modules/workflows/workflows.module | 36 - .../workflows/workflows.permissions.yml | 4 +- web/core/phpcs.xml.dist | 79 +- .../src/Functional}/MinimalTest.php | 6 +- web/core/scripts/run-tests.sh | 4 +- .../Ajax/AjaxFormPageCacheTest.php | 127 + .../FunctionalTests/BrowserTestBaseTest.php | 228 +- .../HttpKernel/CorsIntegrationTest.php | 77 + .../Core/Config/ConfigInstallTest.php | 9 + .../Core/Database/ConnectionUnitTest.php | 6 + .../Core/Entity/ContentEntityCloneTest.php | 83 + .../KernelTests/Core/Entity/EntityApiTest.php | 6 + .../Entity/EntityRevisionTranslationTest.php | 25 + .../Core/File/UnmanagedCopyTest.php | 2 +- .../Core/HttpKernel/CorsIntegrationTest.php | 84 - .../Drupal/KernelTests/KernelTestBase.php | 103 +- .../Drupal/KernelTests/KernelTestBaseTest.php | 15 +- .../tests/Drupal/Tests/BrowserTestBase.php | 49 + .../Component/Serialization/YamlPeclTest.php | 10 + .../Serialization/YamlSymfonyTest.php | 12 + .../Component/Serialization/YamlTest.php | 17 + .../Tests/Component/Utility/HtmlTest.php | 17 +- .../Tests/Component/Utility/UrlHelperTest.php | 2 +- .../Tests/Core/Ajax/AjaxCommandsTest.php | 17 + .../Tests/Core/Test/KernelTestBaseTest.php | 34 + web/core/tests/Drupal/Tests/Core/UrlTest.php | 1 + .../tests/Drupal/Tests/EntityViewTrait.php | 71 + .../Traits/Core/GeneratePermutationsTrait.php | 59 + web/core/tests/README.md | 6 +- .../themes/bartik/css/components/menu.css | 2 +- .../classy/templates/user/username.html.twig | 8 +- .../stable/templates/user/username.html.twig | 8 +- web/vendor/composer/autoload_files.php | 2 +- web/vendor/composer/autoload_psr4.php | 1 + web/vendor/composer/autoload_static.php | 10 +- web/vendor/composer/installed.json | 2656 +++++++++-------- web/vendor/guzzlehttp/guzzle/.travis.yml | 41 - web/vendor/guzzlehttp/guzzle/CHANGELOG.md | 21 + web/vendor/guzzlehttp/guzzle/README.md | 21 +- web/vendor/guzzlehttp/guzzle/composer.json | 5 +- web/vendor/guzzlehttp/guzzle/src/Client.php | 8 +- .../guzzle/src/Cookie/CookieJar.php | 49 + .../src/Exception/BadResponseException.php | 22 +- .../guzzle/src/Exception/RequestException.php | 19 +- .../guzzle/src/Handler/CurlFactory.php | 33 +- .../guzzle/src/Handler/MockHandler.php | 21 +- .../guzzle/src/Handler/StreamHandler.php | 51 +- .../guzzlehttp/guzzle/src/Middleware.php | 2 +- .../guzzle/src/PrepareBodyMiddleware.php | 10 +- .../guzzle/src/RedirectMiddleware.php | 18 +- .../guzzlehttp/guzzle/src/RequestOptions.php | 11 + .../guzzlehttp/guzzle/src/RetryMiddleware.php | 2 +- .../guzzlehttp/guzzle/src/functions.php | 2 + .../routing/Candidates/Candidates.php | 2 +- web/vendor/symfony-cmf/routing/README.md | 2 +- .../class-loader/ClassCollectionLoader.php | 2 +- .../class-loader/ClassMapGenerator.php | 4 +- .../symfony/class-loader/phpunit.xml.dist | 2 + web/vendor/symfony/console/Application.php | 82 +- .../symfony/console/Command/Command.php | 2 + .../console/Descriptor/TextDescriptor.php | 2 +- .../console/Formatter/OutputFormatter.php | 33 +- .../Formatter/OutputFormatterInterface.php | 2 + web/vendor/symfony/console/Helper/Table.php | 2 +- .../console/Question/ChoiceQuestion.php | 6 +- web/vendor/symfony/console/phpunit.xml.dist | 2 + web/vendor/symfony/debug/DebugClassLoader.php | 2 +- web/vendor/symfony/debug/ErrorHandler.php | 20 +- web/vendor/symfony/debug/ExceptionHandler.php | 4 +- web/vendor/symfony/debug/phpunit.xml.dist | 2 + .../Compiler/AutowirePass.php | 24 +- .../dependency-injection/Definition.php | 8 +- .../dependency-injection/Dumper/PhpDumper.php | 7 +- .../dependency-injection/Dumper/XmlDumper.php | 4 + .../Dumper/YamlDumper.php | 6 +- .../schema/dic/services/services-1.0.xsd | 15 +- .../dependency-injection/phpunit.xml.dist | 2 + .../ContainerAwareEventDispatcher.php | 2 +- .../Debug/TraceableEventDispatcher.php | 6 + .../Tests/AbstractEventDispatcherTest.php | 1 + .../Debug/TraceableEventDispatcherTest.php | 31 +- .../symfony/event-dispatcher/phpunit.xml.dist | 2 + .../symfony/http-foundation/FileBag.php | 2 +- .../symfony/http-foundation/JsonResponse.php | 10 +- .../symfony/http-foundation/ParameterBag.php | 2 +- .../symfony/http-foundation/Request.php | 6 +- .../symfony/http-foundation/Response.php | 4 +- .../Storage/Handler/NativeSessionHandler.php | 2 +- .../Session/Storage/NativeSessionStorage.php | 15 +- .../Session/Storage/Proxy/AbstractProxy.php | 4 +- .../symfony/http-foundation/phpunit.xml.dist | 2 + .../symfony/http-kernel/Bundle/Bundle.php | 2 +- .../DataCollector/DumpDataCollector.php | 7 +- .../Fragment/HIncludeFragmentRenderer.php | 23 +- web/vendor/symfony/http-kernel/Kernel.php | 8 +- .../symfony/http-kernel/Profiler/Profile.php | 5 +- web/vendor/symfony/http-kernel/composer.json | 3 +- .../symfony/http-kernel/phpunit.xml.dist | 2 + .../symfony/polyfill-apcu/bootstrap.php | 2 +- .../symfony/polyfill-apcu/composer.json | 2 +- .../symfony/polyfill-iconv/composer.json | 2 +- .../symfony/polyfill-mbstring/Mbstring.php | 22 +- .../symfony/polyfill-mbstring/composer.json | 2 +- .../symfony/polyfill-php54/composer.json | 2 +- .../symfony/polyfill-php55/composer.json | 2 +- web/vendor/symfony/process/phpunit.xml.dist | 2 + .../routing/Loader/AnnotationFileLoader.php | 2 +- web/vendor/symfony/routing/phpunit.xml.dist | 2 + .../symfony/serializer/Encoder/JsonDecode.php | 2 +- .../symfony/serializer/Encoder/XmlEncoder.php | 16 +- .../Normalizer/ObjectNormalizer.php | 16 +- .../symfony/serializer/phpunit.xml.dist | 2 + web/vendor/symfony/translation/Translator.php | 2 +- .../symfony/translation/phpunit.xml.dist | 2 + .../validator/Constraints/EmailValidator.php | 6 +- .../validator/Constraints/UrlValidator.php | 2 +- web/vendor/symfony/validator/Validator.php | 2 +- web/vendor/symfony/validator/phpunit.xml.dist | 2 + web/vendor/symfony/yaml/Escaper.php | 10 +- .../symfony/yaml/Exception/ParseException.php | 12 +- web/vendor/symfony/yaml/Inline.php | 14 +- web/vendor/symfony/yaml/Parser.php | 58 +- web/vendor/symfony/yaml/phpunit.xml.dist | 2 + web/vendor/twig/twig/.travis.yml | 19 +- web/vendor/twig/twig/CHANGELOG | 30 + web/vendor/twig/twig/composer.json | 7 +- .../twig/twig/lib/Twig/BaseNodeVisitor.php | 4 + .../twig/twig/lib/Twig/Cache/Filesystem.php | 2 + web/vendor/twig/twig/lib/Twig/Cache/Null.php | 2 + .../twig/twig/lib/Twig/CacheInterface.php | 2 + web/vendor/twig/twig/lib/Twig/Compiler.php | 3 + .../twig/lib/Twig/ContainerRuntimeLoader.php | 2 + web/vendor/twig/twig/lib/Twig/Environment.php | 31 +- web/vendor/twig/twig/lib/Twig/Error.php | 8 +- .../twig/twig/lib/Twig/Error/Loader.php | 2 + .../twig/twig/lib/Twig/Error/Runtime.php | 2 + .../twig/twig/lib/Twig/Error/Syntax.php | 2 + .../twig/lib/Twig/ExistsLoaderInterface.php | 2 + .../twig/twig/lib/Twig/ExpressionParser.php | 2 + web/vendor/twig/twig/lib/Twig/Extension.php | 4 + .../twig/twig/lib/Twig/Extension/Core.php | 71 +- .../twig/twig/lib/Twig/Extension/Debug.php | 4 +- .../twig/twig/lib/Twig/Extension/Escaper.php | 2 + .../lib/Twig/Extension/GlobalsInterface.php | 2 + .../Twig/Extension/InitRuntimeInterface.php | 2 + .../twig/lib/Twig/Extension/Optimizer.php | 2 + .../twig/twig/lib/Twig/Extension/Profiler.php | 3 + .../twig/twig/lib/Twig/Extension/Sandbox.php | 2 + .../twig/twig/lib/Twig/Extension/Staging.php | 2 + .../twig/lib/Twig/Extension/StringLoader.php | 2 + .../twig/twig/lib/Twig/ExtensionInterface.php | 3 + .../twig/lib/Twig/FactoryRuntimeLoader.php | 2 + .../Twig/FileExtensionEscapingStrategy.php | 2 + web/vendor/twig/twig/lib/Twig/Lexer.php | 2 + .../twig/twig/lib/Twig/Loader/Array.php | 4 +- .../twig/twig/lib/Twig/Loader/Chain.php | 2 + .../twig/twig/lib/Twig/Loader/Filesystem.php | 2 + .../twig/twig/lib/Twig/LoaderInterface.php | 2 + web/vendor/twig/twig/lib/Twig/Markup.php | 2 + web/vendor/twig/twig/lib/Twig/Node.php | 3 + .../twig/twig/lib/Twig/Node/AutoEscape.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Block.php | 2 + .../twig/lib/Twig/Node/BlockReference.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Body.php | 2 + .../twig/twig/lib/Twig/Node/CheckSecurity.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Do.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Embed.php | 2 + .../twig/twig/lib/Twig/Node/Expression.php | 2 + .../twig/lib/Twig/Node/Expression/Array.php | 2 + .../lib/Twig/Node/Expression/AssignName.php | 2 + .../twig/lib/Twig/Node/Expression/Binary.php | 2 + .../lib/Twig/Node/Expression/Binary/Add.php | 2 + .../lib/Twig/Node/Expression/Binary/And.php | 2 + .../Node/Expression/Binary/BitwiseAnd.php | 2 + .../Twig/Node/Expression/Binary/BitwiseOr.php | 2 + .../Node/Expression/Binary/BitwiseXor.php | 2 + .../Twig/Node/Expression/Binary/Concat.php | 2 + .../lib/Twig/Node/Expression/Binary/Div.php | 2 + .../Twig/Node/Expression/Binary/EndsWith.php | 2 + .../lib/Twig/Node/Expression/Binary/Equal.php | 2 + .../Twig/Node/Expression/Binary/FloorDiv.php | 2 + .../Twig/Node/Expression/Binary/Greater.php | 2 + .../Node/Expression/Binary/GreaterEqual.php | 2 + .../lib/Twig/Node/Expression/Binary/In.php | 2 + .../lib/Twig/Node/Expression/Binary/Less.php | 2 + .../Twig/Node/Expression/Binary/LessEqual.php | 2 + .../Twig/Node/Expression/Binary/Matches.php | 2 + .../lib/Twig/Node/Expression/Binary/Mod.php | 2 + .../lib/Twig/Node/Expression/Binary/Mul.php | 2 + .../Twig/Node/Expression/Binary/NotEqual.php | 2 + .../lib/Twig/Node/Expression/Binary/NotIn.php | 2 + .../lib/Twig/Node/Expression/Binary/Or.php | 2 + .../lib/Twig/Node/Expression/Binary/Power.php | 2 + .../lib/Twig/Node/Expression/Binary/Range.php | 2 + .../Node/Expression/Binary/StartsWith.php | 2 + .../lib/Twig/Node/Expression/Binary/Sub.php | 2 + .../Twig/Node/Expression/BlockReference.php | 2 + .../twig/lib/Twig/Node/Expression/Call.php | 2 + .../lib/Twig/Node/Expression/Conditional.php | 2 + .../lib/Twig/Node/Expression/Constant.php | 2 + .../twig/lib/Twig/Node/Expression/Filter.php | 2 + .../Twig/Node/Expression/Filter/Default.php | 2 + .../lib/Twig/Node/Expression/Function.php | 2 + .../twig/lib/Twig/Node/Expression/GetAttr.php | 2 + .../lib/Twig/Node/Expression/MethodCall.php | 2 + .../twig/lib/Twig/Node/Expression/Name.php | 2 + .../lib/Twig/Node/Expression/NullCoalesce.php | 2 + .../twig/lib/Twig/Node/Expression/Parent.php | 2 + .../lib/Twig/Node/Expression/TempName.php | 2 + .../twig/lib/Twig/Node/Expression/Test.php | 2 + .../Twig/Node/Expression/Test/Constant.php | 2 + .../lib/Twig/Node/Expression/Test/Defined.php | 2 + .../Twig/Node/Expression/Test/Divisibleby.php | 2 + .../lib/Twig/Node/Expression/Test/Even.php | 2 + .../lib/Twig/Node/Expression/Test/Null.php | 2 + .../lib/Twig/Node/Expression/Test/Odd.php | 2 + .../lib/Twig/Node/Expression/Test/Sameas.php | 2 + .../twig/lib/Twig/Node/Expression/Unary.php | 2 + .../lib/Twig/Node/Expression/Unary/Neg.php | 2 + .../lib/Twig/Node/Expression/Unary/Not.php | 2 + .../lib/Twig/Node/Expression/Unary/Pos.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Flush.php | 2 + web/vendor/twig/twig/lib/Twig/Node/For.php | 2 + .../twig/twig/lib/Twig/Node/ForLoop.php | 2 + web/vendor/twig/twig/lib/Twig/Node/If.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Import.php | 2 + .../twig/twig/lib/Twig/Node/Include.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Macro.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Module.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Print.php | 2 + .../twig/twig/lib/Twig/Node/Sandbox.php | 2 + .../twig/lib/Twig/Node/SandboxedPrint.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Set.php | 2 + .../twig/twig/lib/Twig/Node/SetTemp.php | 5 + .../twig/twig/lib/Twig/Node/Spaceless.php | 2 + web/vendor/twig/twig/lib/Twig/Node/Text.php | 2 + web/vendor/twig/twig/lib/Twig/Node/With.php | 2 + .../twig/lib/Twig/NodeCaptureInterface.php | 2 + .../twig/lib/Twig/NodeOutputInterface.php | 2 + .../twig/twig/lib/Twig/NodeTraverser.php | 2 + .../twig/lib/Twig/NodeVisitor/Escaper.php | 2 + .../twig/lib/Twig/NodeVisitor/Optimizer.php | 2 + .../lib/Twig/NodeVisitor/SafeAnalysis.php | 2 + .../twig/lib/Twig/NodeVisitor/Sandbox.php | 2 + .../twig/lib/Twig/NodeVisitorInterface.php | 4 + web/vendor/twig/twig/lib/Twig/Parser.php | 4 + .../lib/Twig/Profiler/Dumper/Blackfire.php | 4 +- .../twig/lib/Twig/Profiler/Dumper/Html.php | 2 + .../twig/lib/Twig/Profiler/Dumper/Text.php | 2 + .../lib/Twig/Profiler/Node/EnterProfile.php | 2 + .../lib/Twig/Profiler/Node/LeaveProfile.php | 2 + .../Twig/Profiler/NodeVisitor/Profiler.php | 2 + .../twig/twig/lib/Twig/Profiler/Profile.php | 2 + .../twig/lib/Twig/RuntimeLoaderInterface.php | 2 + .../twig/lib/Twig/Sandbox/SecurityError.php | 2 + .../Sandbox/SecurityNotAllowedFilterError.php | 2 + .../SecurityNotAllowedFunctionError.php | 2 + .../Sandbox/SecurityNotAllowedMethodError.php | 2 + .../SecurityNotAllowedPropertyError.php | 2 + .../Sandbox/SecurityNotAllowedTagError.php | 2 + .../twig/lib/Twig/Sandbox/SecurityPolicy.php | 2 + .../Twig/Sandbox/SecurityPolicyInterface.php | 2 + .../twig/twig/lib/Twig/SimpleFilter.php | 2 + .../twig/twig/lib/Twig/SimpleFunction.php | 2 + web/vendor/twig/twig/lib/Twig/SimpleTest.php | 2 + web/vendor/twig/twig/lib/Twig/Source.php | 2 + .../lib/Twig/SourceContextLoaderInterface.php | 2 + web/vendor/twig/twig/lib/Twig/Template.php | 15 +- .../twig/twig/lib/Twig/TemplateWrapper.php | 2 + .../lib/Twig/Test/IntegrationTestCase.php | 9 +- .../twig/twig/lib/Twig/Test/NodeTestCase.php | 9 +- web/vendor/twig/twig/lib/Twig/Token.php | 2 + web/vendor/twig/twig/lib/Twig/TokenParser.php | 2 + .../twig/lib/Twig/TokenParser/AutoEscape.php | 2 + .../twig/twig/lib/Twig/TokenParser/Block.php | 2 + .../twig/twig/lib/Twig/TokenParser/Do.php | 2 + .../twig/twig/lib/Twig/TokenParser/Embed.php | 2 + .../twig/lib/Twig/TokenParser/Extends.php | 2 + .../twig/twig/lib/Twig/TokenParser/Filter.php | 2 + .../twig/twig/lib/Twig/TokenParser/Flush.php | 2 + .../twig/twig/lib/Twig/TokenParser/For.php | 2 + .../twig/twig/lib/Twig/TokenParser/From.php | 2 + .../twig/twig/lib/Twig/TokenParser/If.php | 2 + .../twig/twig/lib/Twig/TokenParser/Import.php | 2 + .../twig/lib/Twig/TokenParser/Include.php | 4 +- .../twig/twig/lib/Twig/TokenParser/Macro.php | 2 + .../twig/lib/Twig/TokenParser/Sandbox.php | 2 + .../twig/twig/lib/Twig/TokenParser/Set.php | 2 + .../twig/lib/Twig/TokenParser/Spaceless.php | 2 + .../twig/twig/lib/Twig/TokenParser/Use.php | 2 + .../twig/twig/lib/Twig/TokenParser/With.php | 2 + .../twig/lib/Twig/TokenParserInterface.php | 4 + web/vendor/twig/twig/lib/Twig/TokenStream.php | 2 + .../lib/Twig/Util/DeprecationCollector.php | 2 + .../lib/Twig/Util/TemplateDirIterator.php | 2 + .../twig/twig/src/Cache/CacheInterface.php | 11 + .../twig/twig/src/Cache/FilesystemCache.php | 11 + web/vendor/twig/twig/src/Cache/NullCache.php | 11 + web/vendor/twig/twig/src/Compiler.php | 11 + web/vendor/twig/twig/src/Environment.php | 11 + web/vendor/twig/twig/src/Error/Error.php | 11 + .../twig/twig/src/Error/LoaderError.php | 11 + .../twig/twig/src/Error/RuntimeError.php | 11 + .../twig/twig/src/Error/SyntaxError.php | 11 + web/vendor/twig/twig/src/ExpressionParser.php | 11 + .../twig/src/Extension/AbstractExtension.php | 11 + .../twig/twig/src/Extension/CoreExtension.php | 11 + .../twig/src/Extension/DebugExtension.php | 11 + .../twig/src/Extension/EscaperExtension.php | 11 + .../twig/src/Extension/ExtensionInterface.php | 11 + .../twig/src/Extension/GlobalsInterface.php | 11 + .../src/Extension/InitRuntimeInterface.php | 11 + .../twig/src/Extension/OptimizerExtension.php | 11 + .../twig/src/Extension/ProfilerExtension.php | 11 + .../twig/src/Extension/SandboxExtension.php | 11 + .../twig/src/Extension/StagingExtension.php | 11 + .../src/Extension/StringLoaderExtension.php | 11 + .../src/FileExtensionEscapingStrategy.php | 11 + web/vendor/twig/twig/src/Lexer.php | 11 + .../twig/twig/src/Loader/ArrayLoader.php | 11 + .../twig/twig/src/Loader/ChainLoader.php | 11 + .../twig/src/Loader/ExistsLoaderInterface.php | 11 + .../twig/twig/src/Loader/FilesystemLoader.php | 11 + .../twig/twig/src/Loader/LoaderInterface.php | 11 + .../Loader/SourceContextLoaderInterface.php | 11 + web/vendor/twig/twig/src/Markup.php | 11 + .../twig/twig/src/Node/AutoEscapeNode.php | 11 + web/vendor/twig/twig/src/Node/BlockNode.php | 11 + .../twig/twig/src/Node/BlockReferenceNode.php | 11 + web/vendor/twig/twig/src/Node/BodyNode.php | 11 + .../twig/twig/src/Node/CheckSecurityNode.php | 11 + web/vendor/twig/twig/src/Node/DoNode.php | 11 + web/vendor/twig/twig/src/Node/EmbedNode.php | 11 + .../Node/Expression/AbstractExpression.php | 11 + .../src/Node/Expression/ArrayExpression.php | 11 + .../Node/Expression/AssignNameExpression.php | 11 + .../Node/Expression/Binary/AbstractBinary.php | 11 + .../src/Node/Expression/Binary/AddBinary.php | 11 + .../src/Node/Expression/Binary/AndBinary.php | 11 + .../Expression/Binary/BitwiseAndBinary.php | 11 + .../Expression/Binary/BitwiseOrBinary.php | 11 + .../Expression/Binary/BitwiseXorBinary.php | 11 + .../Node/Expression/Binary/ConcatBinary.php | 11 + .../src/Node/Expression/Binary/DivBinary.php | 11 + .../Node/Expression/Binary/EndsWithBinary.php | 11 + .../Node/Expression/Binary/EqualBinary.php | 11 + .../Node/Expression/Binary/FloorDivBinary.php | 11 + .../Node/Expression/Binary/GreaterBinary.php | 11 + .../Expression/Binary/GreaterEqualBinary.php | 11 + .../src/Node/Expression/Binary/InBinary.php | 11 + .../src/Node/Expression/Binary/LessBinary.php | 11 + .../Expression/Binary/LessEqualBinary.php | 11 + .../Node/Expression/Binary/MatchesBinary.php | 11 + .../src/Node/Expression/Binary/ModBinary.php | 11 + .../src/Node/Expression/Binary/MulBinary.php | 11 + .../Node/Expression/Binary/NotEqualBinary.php | 11 + .../Node/Expression/Binary/NotInBinary.php | 11 + .../src/Node/Expression/Binary/OrBinary.php | 11 + .../Node/Expression/Binary/PowerBinary.php | 11 + .../Node/Expression/Binary/RangeBinary.php | 11 + .../Expression/Binary/StartsWithBinary.php | 11 + .../src/Node/Expression/Binary/SubBinary.php | 11 + .../Expression/BlockReferenceExpression.php | 11 + .../src/Node/Expression/CallExpression.php | 11 + .../Node/Expression/ConditionalExpression.php | 11 + .../Node/Expression/ConstantExpression.php | 11 + .../Node/Expression/Filter/DefaultFilter.php | 11 + .../src/Node/Expression/FilterExpression.php | 11 + .../Node/Expression/FunctionExpression.php | 11 + .../src/Node/Expression/GetAttrExpression.php | 11 + .../Node/Expression/MethodCallExpression.php | 11 + .../src/Node/Expression/NameExpression.php | 11 + .../Expression/NullCoalesceExpression.php | 11 + .../src/Node/Expression/ParentExpression.php | 11 + .../Node/Expression/TempNameExpression.php | 11 + .../src/Node/Expression/Test/ConstantTest.php | 11 + .../src/Node/Expression/Test/DefinedTest.php | 11 + .../Node/Expression/Test/DivisiblebyTest.php | 11 + .../src/Node/Expression/Test/EvenTest.php | 11 + .../src/Node/Expression/Test/NullTest.php | 11 + .../twig/src/Node/Expression/Test/OddTest.php | 11 + .../src/Node/Expression/Test/SameasTest.php | 11 + .../src/Node/Expression/TestExpression.php | 11 + .../Node/Expression/Unary/AbstractUnary.php | 11 + .../src/Node/Expression/Unary/NegUnary.php | 11 + .../src/Node/Expression/Unary/NotUnary.php | 11 + .../src/Node/Expression/Unary/PosUnary.php | 11 + web/vendor/twig/twig/src/Node/FlushNode.php | 11 + web/vendor/twig/twig/src/Node/ForLoopNode.php | 11 + web/vendor/twig/twig/src/Node/ForNode.php | 11 + web/vendor/twig/twig/src/Node/IfNode.php | 11 + web/vendor/twig/twig/src/Node/ImportNode.php | 11 + web/vendor/twig/twig/src/Node/IncludeNode.php | 11 + web/vendor/twig/twig/src/Node/MacroNode.php | 11 + web/vendor/twig/twig/src/Node/ModuleNode.php | 11 + web/vendor/twig/twig/src/Node/Node.php | 11 + .../twig/src/Node/NodeCaptureInterface.php | 11 + .../twig/src/Node/NodeOutputInterface.php | 11 + web/vendor/twig/twig/src/Node/PrintNode.php | 11 + web/vendor/twig/twig/src/Node/SandboxNode.php | 11 + .../twig/twig/src/Node/SandboxedPrintNode.php | 11 + web/vendor/twig/twig/src/Node/SetNode.php | 11 + web/vendor/twig/twig/src/Node/SetTempNode.php | 11 + .../twig/twig/src/Node/SpacelessNode.php | 11 + web/vendor/twig/twig/src/Node/TextNode.php | 11 + web/vendor/twig/twig/src/Node/WithNode.php | 11 + web/vendor/twig/twig/src/NodeTraverser.php | 11 + .../src/NodeVisitor/AbstractNodeVisitor.php | 11 + .../src/NodeVisitor/EscaperNodeVisitor.php | 11 + .../src/NodeVisitor/NodeVisitorInterface.php | 11 + .../src/NodeVisitor/OptimizerNodeVisitor.php | 11 + .../NodeVisitor/SafeAnalysisNodeVisitor.php | 11 + .../src/NodeVisitor/SandboxNodeVisitor.php | 11 + web/vendor/twig/twig/src/Parser.php | 11 + .../src/Profiler/Dumper/BlackfireDumper.php | 11 + .../twig/src/Profiler/Dumper/HtmlDumper.php | 11 + .../twig/src/Profiler/Dumper/TextDumper.php | 11 + .../src/Profiler/Node/EnterProfileNode.php | 11 + .../src/Profiler/Node/LeaveProfileNode.php | 11 + .../NodeVisitor/ProfilerNodeVisitor.php | 11 + web/vendor/twig/twig/src/Profiler/Profile.php | 11 + .../RuntimeLoader/ContainerRuntimeLoader.php | 11 + .../RuntimeLoader/FactoryRuntimeLoader.php | 11 + .../RuntimeLoader/RuntimeLoaderInterface.php | 11 + .../twig/twig/src/Sandbox/SecurityError.php | 11 + .../Sandbox/SecurityNotAllowedFilterError.php | 11 + .../SecurityNotAllowedFunctionError.php | 11 + .../Sandbox/SecurityNotAllowedMethodError.php | 11 + .../SecurityNotAllowedPropertyError.php | 11 + .../Sandbox/SecurityNotAllowedTagError.php | 11 + .../twig/twig/src/Sandbox/SecurityPolicy.php | 11 + .../src/Sandbox/SecurityPolicyInterface.php | 11 + web/vendor/twig/twig/src/Source.php | 11 + web/vendor/twig/twig/src/Template.php | 11 + web/vendor/twig/twig/src/TemplateWrapper.php | 11 + .../twig/src/Test/IntegrationTestCase.php | 11 + .../twig/twig/src/Test/NodeTestCase.php | 11 + web/vendor/twig/twig/src/Token.php | 11 + .../src/TokenParser/AbstractTokenParser.php | 11 + .../src/TokenParser/AutoEscapeTokenParser.php | 11 + .../twig/src/TokenParser/BlockTokenParser.php | 11 + .../twig/src/TokenParser/DoTokenParser.php | 11 + .../twig/src/TokenParser/EmbedTokenParser.php | 11 + .../src/TokenParser/ExtendsTokenParser.php | 11 + .../src/TokenParser/FilterTokenParser.php | 11 + .../twig/src/TokenParser/FlushTokenParser.php | 11 + .../twig/src/TokenParser/ForTokenParser.php | 11 + .../twig/src/TokenParser/FromTokenParser.php | 11 + .../twig/src/TokenParser/IfTokenParser.php | 11 + .../src/TokenParser/ImportTokenParser.php | 11 + .../src/TokenParser/IncludeTokenParser.php | 11 + .../twig/src/TokenParser/MacroTokenParser.php | 11 + .../src/TokenParser/SandboxTokenParser.php | 11 + .../twig/src/TokenParser/SetTokenParser.php | 11 + .../src/TokenParser/SpacelessTokenParser.php | 11 + .../src/TokenParser/TokenParserInterface.php | 11 + .../twig/src/TokenParser/UseTokenParser.php | 11 + .../twig/src/TokenParser/WithTokenParser.php | 11 + web/vendor/twig/twig/src/TokenStream.php | 11 + web/vendor/twig/twig/src/TwigFilter.php | 11 + web/vendor/twig/twig/src/TwigFunction.php | 11 + web/vendor/twig/twig/src/TwigTest.php | 11 + .../twig/src/Util/DeprecationCollector.php | 11 + .../twig/src/Util/TemplateDirIterator.php | 11 + 1118 files changed, 21770 insertions(+), 6306 deletions(-) create mode 100644 web/core/lib/Drupal/Core/Field/BaseFieldOverrideAccessControlHandler.php create mode 100644 web/core/lib/Drupal/Core/Field/Plugin/migrate/field/Email.php create mode 100644 web/core/lib/Drupal/Core/Test/ObjectSerialization.php create mode 100644 web/core/modules/block_content/migration_templates/block_content_entity_display.yml create mode 100644 web/core/modules/block_content/migration_templates/block_content_entity_form_display.yml create mode 100644 web/core/modules/block_content/tests/src/Kernel/Migrate/MigrateBlockContentEntityDisplayTest.php create mode 100644 web/core/modules/block_content/tests/src/Kernel/Migrate/MigrateBlockContentEntityFormDisplayTest.php rename web/core/modules/ckeditor/{src/Tests => tests/src/Functional}/CKEditorAdminTest.php (87%) rename web/core/modules/ckeditor/{src/Tests => tests/src/Functional}/CKEditorLoadingTest.php (98%) rename web/core/modules/ckeditor/{src/Tests => tests/src/Functional}/CKEditorStylesComboAdminTest.php (95%) create mode 100644 web/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentSourceWithHighWaterTest.php create mode 100644 web/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentTest.php create mode 100644 web/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentVariablePerCommentTypeTest.php create mode 100644 web/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentVariableTest.php create mode 100644 web/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d7/CommentTest.php rename web/core/modules/comment/tests/src/{Unit/Migrate => Kernel/Plugin/migrate/source}/d7/CommentTypeTest.php (60%) delete mode 100644 web/core/modules/comment/tests/src/Unit/Migrate/d6/CommentSourceWithHighWaterTest.php delete mode 100644 web/core/modules/comment/tests/src/Unit/Migrate/d6/CommentTest.php delete mode 100644 web/core/modules/comment/tests/src/Unit/Migrate/d6/CommentTestBase.php delete mode 100644 web/core/modules/comment/tests/src/Unit/Migrate/d6/CommentVariablePerCommentTypeTest.php delete mode 100644 web/core/modules/comment/tests/src/Unit/Migrate/d6/CommentVariableTest.php delete mode 100644 web/core/modules/comment/tests/src/Unit/Migrate/d7/CommentTest.php create mode 100644 web/core/modules/config/tests/config_install_double_dependency_test/config/install/config_test.dynamic.other_module_test_with_dependency.yml create mode 100644 web/core/modules/config/tests/config_install_double_dependency_test/config/install/config_test.dynamic.yet_another_module_test_with_dependency.yml create mode 100644 web/core/modules/config/tests/config_install_double_dependency_test/config_install_double_dependency_test.info.yml rename web/core/modules/config_translation/{tests/src/Functional => src/Tests}/ConfigTranslationViewListUiTest.php (96%) rename web/core/modules/content_moderation/css/{entity-moderation-form.css => content_moderation.module.css} (68%) create mode 100644 web/core/modules/content_moderation/css/content_moderation.theme.css create mode 100644 web/core/modules/content_moderation/src/ContentModerationStateAccessControlHandler.php delete mode 100644 web/core/modules/content_moderation/src/Plugin/Menu/EditTab.php delete mode 100644 web/core/modules/content_moderation/src/Tests/ModerationFormTest.php delete mode 100644 web/core/modules/content_moderation/src/Tests/ModerationStateTestBase.php delete mode 100644 web/core/modules/content_moderation/tests/src/Functional/LocalTaskTest.php create mode 100644 web/core/modules/content_moderation/tests/src/Functional/ModerationFormTest.php create mode 100644 web/core/modules/content_moderation/tests/src/Functional/ModerationRevisionRevertTest.php rename web/core/modules/content_moderation/{src/Tests => tests/src/Functional}/ModerationStateBlockTest.php (98%) rename web/core/modules/content_moderation/{src/Tests => tests/src/Functional}/ModerationStateNodeTest.php (98%) rename web/core/modules/content_moderation/{src/Tests => tests/src/Functional}/ModerationStateNodeTypeTest.php (69%) create mode 100644 web/core/modules/content_moderation/tests/src/Kernel/ContentModerationStateAccessControlHandlerTest.php create mode 100644 web/core/modules/content_moderation/tests/src/Kernel/ContentModerationStateStorageSchemaTest.php create mode 100644 web/core/modules/content_moderation/tests/src/Kernel/DefaultRevisionStateTest.php create mode 100644 web/core/modules/content_moderation/tests/src/Kernel/InitialStateTest.php create mode 100644 web/core/modules/datetime/src/Plugin/migrate/field/d6/DateField.php create mode 100644 web/core/modules/datetime/tests/src/Functional/DateTestBase.php rename web/core/modules/datetime/{src/Tests => tests/src/Functional}/DateTimeFieldTest.php (89%) create mode 100644 web/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/d6/DateFieldTest.php rename web/core/modules/datetime_range/{src/Tests => tests/src/Functional}/DateRangeFieldTest.php (87%) create mode 100644 web/core/modules/field/src/FieldStorageConfigAccessControlHandler.php create mode 100644 web/core/modules/field/tests/src/Unit/FieldConfigAccessControlHandlerTest.php create mode 100644 web/core/modules/field/tests/src/Unit/FieldStorageConfigAccessControlHandlerTest.php create mode 100644 web/core/modules/field_layout/tests/modules/field_layout_test/field_layout_test.module create mode 100644 web/core/modules/field_ui/tests/src/Functional/ManageFieldsTest.php create mode 100644 web/core/modules/filter/tests/src/Kernel/Plugin/migrate/process/FilterSettingsTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/BaseFieldOverride/BaseFieldOverrideHalJsonAnonTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/BaseFieldOverride/BaseFieldOverrideHalJsonBasicAuthTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/BaseFieldOverride/BaseFieldOverrideHalJsonCookieTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/BlockContentType/BlockContentTypeHalJsonAnonTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/BlockContentType/BlockContentTypeHalJsonBasicAuthTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/BlockContentType/BlockContentTypeHalJsonCookieTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/ContentLanguageSettings/ContentLanguageSettingsHalJsonAnonTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/ContentLanguageSettings/ContentLanguageSettingsHalJsonBasicAuthTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/ContentLanguageSettings/ContentLanguageSettingsHalJsonCookieTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/Editor/EditorHalJsonAnonTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/Editor/EditorHalJsonBasicAuthTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/Editor/EditorHalJsonCookieTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/Feed/FeedHalJsonAnonTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/Feed/FeedHalJsonBasicAuthTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/Feed/FeedHalJsonCookieTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/Feed/FeedHalJsonTestBase.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/FieldConfig/FieldConfigHalJsonAnonTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/FieldConfig/FieldConfigHalJsonBasicAuthTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/FieldConfig/FieldConfigHalJsonCookieTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/FieldStorageConfig/FieldStorageConfigHalJsonAnonTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/FieldStorageConfig/FieldStorageConfigHalJsonBasicAuthTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/FieldStorageConfig/FieldStorageConfigHalJsonCookieTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/RdfMapping/RdfMappingHalJsonAnonTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/RdfMapping/RdfMappingHalJsonBasicAuthTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/RdfMapping/RdfMappingHalJsonCookieTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/RestResourceConfig/RestResourceConfigHalJsonAnonTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/RestResourceConfig/RestResourceConfigHalJsonBasicAuthTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/RestResourceConfig/RestResourceConfigHalJsonCookieTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/ShortcutSet/ShortcutSetHalJsonAnonTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/ShortcutSet/ShortcutSetHalJsonBasicAuthTest.php create mode 100644 web/core/modules/hal/tests/src/Functional/EntityResource/ShortcutSet/ShortcutSetHalJsonCookieTest.php delete mode 100644 web/core/modules/language/tests/src/Kernel/Migrate/MigrateDefaultLanguageTrait.php rename web/core/modules/link/src/Plugin/migrate/{cckfield => field/d6}/LinkField.php (63%) rename web/core/modules/link/src/Plugin/migrate/{cckfield => field}/d7/LinkField.php (88%) create mode 100644 web/core/modules/link/src/Plugin/migrate/process/d6/FieldLink.php rename web/core/modules/link/tests/src/Unit/Plugin/migrate/process/d6/{CckLinkTest.php => FieldLinkTest.php} (81%) rename web/core/modules/menu_link_content/{src/Tests => tests/src/Functional}/MenuLinkContentDeleteFormTest.php (91%) rename web/core/modules/menu_link_content/{src/Tests => tests/src/Functional}/MenuLinkContentFormTest.php (91%) rename web/core/modules/menu_link_content/{src/Tests => tests/src/Functional}/MenuLinkContentTranslationUITest.php (96%) create mode 100644 web/core/modules/migrate/src/Plugin/migrate/process/EntityExists.php create mode 100644 web/core/modules/migrate/src/Plugin/migrate/process/FormatDate.php create mode 100644 web/core/modules/migrate/src/Plugin/migrate/process/Log.php create mode 100644 web/core/modules/migrate/src/Plugin/migrate/process/MakeUniqueBase.php create mode 100644 web/core/modules/migrate/src/Plugin/migrate/process/MakeUniqueEntityField.php create mode 100644 web/core/modules/migrate/src/Plugin/migrate/process/MigrationLookup.php create mode 100644 web/core/modules/migrate/tests/modules/migrate_high_water_test/migrate_high_water_test.info.yml delete mode 100644 web/core/modules/migrate/tests/modules/migrate_high_water_test/migrate_sql_test.info.yml create mode 100644 web/core/modules/migrate/tests/src/Kernel/Plugin/EntityExistsTest.php create mode 100644 web/core/modules/migrate/tests/src/Kernel/Plugin/LogTest.php create mode 100644 web/core/modules/migrate/tests/src/Unit/process/FormatDateTest.php create mode 100644 web/core/modules/migrate/tests/src/Unit/process/MakeUniqueEntityFieldTest.php create mode 100644 web/core/modules/migrate/tests/src/Unit/process/MigrationLookupTest.php create mode 100644 web/core/modules/migrate/tests/src/Unit/process/SkipRowIfNotSetTest.php create mode 100644 web/core/modules/migrate_drupal/src/Annotation/MigrateField.php create mode 100644 web/core/modules/migrate_drupal/src/Plugin/MigrateFieldInterface.php create mode 100644 web/core/modules/migrate_drupal/src/Plugin/MigrateFieldPluginManager.php create mode 100644 web/core/modules/migrate_drupal/src/Plugin/MigrateFieldPluginManagerInterface.php create mode 100644 web/core/modules/migrate_drupal/src/Plugin/migrate/FieldMigration.php create mode 100644 web/core/modules/migrate_drupal/src/Plugin/migrate/field/FieldPluginBase.php create mode 100644 web/core/modules/migrate_drupal/src/Plugin/migrate/field/NodeReference.php create mode 100644 web/core/modules/migrate_drupal/tests/modules/migrate_field_plugin_manager_test/migrate_field_plugin_manager_test.info.yml create mode 100644 web/core/modules/migrate_drupal/tests/modules/migrate_field_plugin_manager_test/migrate_field_plugin_manager_test.module create mode 100644 web/core/modules/migrate_drupal/tests/modules/migrate_field_plugin_manager_test/src/Plugin/migrate/cckfield/d6/FileField.php create mode 100644 web/core/modules/migrate_drupal/tests/modules/migrate_field_plugin_manager_test/src/Plugin/migrate/field/D6FileField.php create mode 100644 web/core/modules/migrate_drupal/tests/modules/migrate_field_plugin_manager_test/src/Plugin/migrate/field/D6NoCoreVersionSpecified.php create mode 100644 web/core/modules/migrate_drupal/tests/src/Kernel/CckFieldBackwardsCompatibilityTest.php create mode 100644 web/core/modules/migrate_drupal/tests/src/Kernel/MigrateFieldPluginManagerTest.php create mode 100644 web/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/VariableMultiRowTest.php create mode 100644 web/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/VariableTest.php create mode 100644 web/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d6/i18nVariableTest.php delete mode 100644 web/core/modules/migrate_drupal/tests/src/Unit/source/VariableMultiRowSourceWithHighwaterTest.php delete mode 100644 web/core/modules/migrate_drupal/tests/src/Unit/source/VariableMultiRowTest.php create mode 100644 web/core/modules/migrate_drupal_ui/migrate_drupal_ui.links.menu.yml create mode 100644 web/core/modules/node/tests/modules/node_test_views/test_views/views.view.test_argument_node_uid_revision.yml create mode 100644 web/core/modules/node/tests/src/Functional/AssertButtonsTrait.php rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeAccessAutoBubblingTest.php (92%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeAccessBaseTableTest.php (97%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeAccessPagerTest.php (95%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeAccessRebuildNodeGrantsTest.php (99%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeAdminTest.php (98%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeBlockFunctionalTest.php (99%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeEditFormTest.php (99%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeEntityViewModeAlterTest.php (92%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeFieldMultilingualTest.php (95%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeFormButtonsTest.php (99%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeQueryAlterTest.php (99%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeRevisionPermissionsTest.php (97%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeSyndicateBlockTest.php (95%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeTitleTest.php (76%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeTitleXSSTest.php (87%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeTranslationUITest.php (98%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/NodeViewTest.php (81%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/BulkFormAccessTest.php (97%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/BulkFormTest.php (99%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/FilterNodeAccessTest.php (95%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/FilterUidRevisionTest.php (97%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/FrontPageTest.php (98%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/NodeFieldFilterTest.php (95%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/NodeFieldTokensTest.php (97%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/NodeIntegrationTest.php (94%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/NodeLanguageTest.php (99%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/NodeRevisionWizardTest.php (94%) create mode 100644 web/core/modules/node/tests/src/Functional/Views/NodeTestBase.php rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/PathPluginTest.php (90%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/RevisionLinkTest.php (98%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/RowPluginTest.php (92%) rename web/core/modules/node/{src/Tests => tests/src/Functional}/Views/StatusExtraTest.php (98%) rename web/core/modules/node/{src/Tests => tests/src/Kernel}/SummaryLengthTest.php (61%) create mode 100644 web/core/modules/node/tests/src/Kernel/Views/ArgumentUidRevisionTest.php rename web/core/modules/node/{src/Tests => tests/src/Kernel}/Views/RevisionRelationshipsTest.php (70%) rename web/core/modules/outside_in/css/{offcanvas.css => off-canvas.css} (51%) rename web/core/modules/outside_in/css/{offcanvas.motion.css => off-canvas.motion.css} (72%) rename web/core/modules/outside_in/js/{offcanvas.js => off-canvas.js} (77%) rename web/core/modules/outside_in/tests/modules/{offcanvas_test/offcanvas_test.info.yml => off_canvas_test/off_canvas_test.info.yml} (100%) create mode 100644 web/core/modules/outside_in/tests/modules/off_canvas_test/off_canvas_test.routing.yml rename web/core/modules/outside_in/tests/modules/{offcanvas_test => off_canvas_test}/src/Controller/TestController.php (72%) delete mode 100644 web/core/modules/outside_in/tests/modules/offcanvas_test/offcanvas_test.routing.yml create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/BaseFieldOverride/BaseFieldOverrideJsonAnonTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/BaseFieldOverride/BaseFieldOverrideJsonBasicAuthTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/BaseFieldOverride/BaseFieldOverrideJsonCookieTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/BaseFieldOverride/BaseFieldOverrideResourceTestBase.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/BlockContentType/BlockContentTypeJsonAnonTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/BlockContentType/BlockContentTypeJsonBasicAuthTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/BlockContentType/BlockContentTypeJsonCookieTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/BlockContentType/BlockContentTypeResourceTestBase.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/ContentLanguageSettings/ContentLanguageSettingsJsonAnonTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/ContentLanguageSettings/ContentLanguageSettingsJsonBasicAuthTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/ContentLanguageSettings/ContentLanguageSettingsJsonCookieTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/ContentLanguageSettings/ContentLanguageSettingsResourceTestBase.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/Editor/EditorJsonAnonTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/Editor/EditorJsonBasicAuthTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/Editor/EditorJsonCookieTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/Editor/EditorResourceTestBase.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/Feed/FeedJsonAnonTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/Feed/FeedJsonBasicAuthTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/Feed/FeedJsonCookieTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/Feed/FeedResourceTestBase.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/FieldConfig/FieldConfigJsonAnonTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/FieldConfig/FieldConfigJsonBasicAuthTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/FieldConfig/FieldConfigJsonCookieTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/FieldConfig/FieldConfigResourceTestBase.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/FieldStorageConfig/FieldStorageConfigJsonAnonTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/FieldStorageConfig/FieldStorageConfigJsonBasicAuthTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/FieldStorageConfig/FieldStorageConfigJsonCookieTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/FieldStorageConfig/FieldStorageConfigResourceTestBase.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/RdfMapping/RdfMappingJsonAnonTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/RdfMapping/RdfMappingJsonBasicAuthTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/RdfMapping/RdfMappingJsonCookieTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/RdfMapping/RdfMappingResourceTestBase.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/RestResourceConfig/RestResourceConfigJsonAnonTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/RestResourceConfig/RestResourceConfigJsonBasicAuthTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/RestResourceConfig/RestResourceConfigJsonCookieTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/RestResourceConfig/RestResourceConfigResourceTestBase.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/ShortcutSet/ShortcutSetJsonAnonTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/ShortcutSet/ShortcutSetJsonBasicAuthTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/ShortcutSet/ShortcutSetJsonCookieTest.php create mode 100644 web/core/modules/rest/tests/src/Functional/EntityResource/ShortcutSet/ShortcutSetResourceTestBase.php rename web/core/modules/statistics/{src/Tests => tests/src/Functional}/StatisticsAdminTest.php (96%) rename web/core/modules/statistics/{src/Tests => tests/src/Functional}/StatisticsLoggingTest.php (88%) rename web/core/modules/statistics/{src/Tests => tests/src/Functional}/StatisticsReportsTest.php (98%) create mode 100644 web/core/modules/system/migration_templates/d7_theme_settings.yml create mode 100644 web/core/modules/system/src/Plugin/migrate/destination/d7/ThemeSettings.php create mode 100644 web/core/modules/system/src/Plugin/migrate/source/d7/ThemeSettings.php delete mode 100644 web/core/modules/system/src/Tests/Ajax/AjaxFormPageCacheTest.php create mode 100644 web/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestNoBundle.php create mode 100644 web/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldFormatter/EntityTestReferenceCustomCacheTagFormatter.php rename web/core/modules/system/{src/Tests => tests/src/Functional}/Batch/PageTest.php (95%) rename web/core/modules/system/{src/Tests => tests/src/Functional}/Batch/ProcessingTest.php (98%) create mode 100644 web/core/modules/system/tests/src/Kernel/Migrate/d7/MigrateThemeSettingsTest.php create mode 100644 web/core/modules/system/tests/src/Kernel/Plugin/migrate/source/d7/ThemeSettingsTest.php rename web/core/modules/tracker/{src/Tests => tests/src/Functional}/TrackerTest.php (99%) rename web/core/modules/user/{src/Tests => tests/src/Functional}/UserCancelTest.php (99%) create mode 100644 web/core/modules/views/tests/modules/views_test_config/test_views/views.view.test_area_result.yml rename web/core/modules/views/{src/Tests => tests/src/Functional}/DefaultViewsTest.php (97%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Entity/BaseFieldAccessTest.php (89%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Entity/FieldEntityTest.php (96%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Entity/FieldEntityTranslationTest.php (91%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Entity/FilterEntityBundleTest.php (95%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Entity/ViewNonTranslatableEntityTest.php (87%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/GlossaryTest.php (89%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/AreaHTTPStatusCodeTest.php (86%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/AreaTest.php (81%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/AreaTitleWebTest.php (91%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/ArgumentStringTest.php (89%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/FieldDropButtonTest.php (85%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/FieldEntityOperationsTest.php (92%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/FieldGroupRowsTest.php (92%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/FieldGroupRowsWebTest.php (90%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/FieldWebTest.php (99%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/FilterDateTest.php (89%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/HandlerAllTest.php (95%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Handler/HandlerTest.php (97%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/AccessTest.php (91%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/ArgumentDefaultTest.php (93%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/CacheTagTest.php (96%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/CacheWebTest.php (91%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/ContextualFiltersBlockContextTest.php (96%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/DisabledDisplayTest.php (86%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/DisplayAttachmentTest.php (93%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/DisplayEntityReferenceTest.php (97%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/DisplayPageWebTest.php (84%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/DisplayTest.php (80%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/ExposedFormTest.php (91%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/FilterTest.php (96%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/MenuLinkTest.php (93%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/MiniPagerTest.php (95%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/NumericFormatPluralTest.php (97%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/PagerTest.php (99%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/StyleSummaryTest.php (90%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/StyleTableTest.php (89%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/StyleTest.php (98%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/ViewsBulkTest.php (90%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/ViewsFormTest.php (83%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Plugin/ViewsSqlExceptionTest.php (85%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/RenderCacheWebTest.php (83%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/SearchIntegrationTest.php (89%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/SearchMultilingualTest.php (96%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/TaxonomyGlossaryTest.php (89%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/ViewRenderTest.php (84%) create mode 100644 web/core/modules/views/tests/src/Functional/ViewTestBase.php rename web/core/modules/views/{src/Tests => tests/src/Functional}/ViewsEscapingTest.php (94%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/ViewsFormMultipleTest.php (81%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/ViewsTemplateTest.php (88%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/ViewsThemeIntegrationTest.php (95%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Wizard/BasicTest.php (94%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Wizard/ItemsPerPageTest.php (95%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Wizard/MenuTest.php (97%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Wizard/NodeWizardTest.php (97%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Wizard/PagerTest.php (97%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Wizard/SortingTest.php (95%) rename web/core/modules/views/{src/Tests => tests/src/Functional}/Wizard/TaggedWithTest.php (98%) create mode 100644 web/core/modules/views/tests/src/Functional/Wizard/WizardTestBase.php create mode 100644 web/core/modules/views/tests/src/Kernel/Handler/AreaEmptyTest.php create mode 100644 web/core/modules/views/tests/src/Kernel/Handler/AreaResultTest.php create mode 100644 web/core/modules/views/tests/src/Kernel/Handler/FieldNumericTest.php rename web/core/modules/views/{src/Tests => tests/src/Kernel}/Plugin/DisplayExtenderTest.php (88%) create mode 100644 web/core/modules/views/tests/src/Kernel/Plugin/ExposedFormRenderTest.php create mode 100644 web/core/modules/views/tests/src/Kernel/Plugin/RelationshipJoinInTest.php rename web/core/profiles/minimal/{src/Tests => tests/src/Functional}/MinimalTest.php (90%) create mode 100644 web/core/tests/Drupal/FunctionalJavascriptTests/Ajax/AjaxFormPageCacheTest.php create mode 100644 web/core/tests/Drupal/FunctionalTests/HttpKernel/CorsIntegrationTest.php delete mode 100644 web/core/tests/Drupal/KernelTests/Core/HttpKernel/CorsIntegrationTest.php create mode 100644 web/core/tests/Drupal/Tests/Core/Test/KernelTestBaseTest.php create mode 100644 web/core/tests/Drupal/Tests/EntityViewTrait.php create mode 100644 web/core/tests/Drupal/Tests/Traits/Core/GeneratePermutationsTrait.php delete mode 100644 web/vendor/guzzlehttp/guzzle/.travis.yml create mode 100644 web/vendor/twig/twig/src/Cache/CacheInterface.php create mode 100644 web/vendor/twig/twig/src/Cache/FilesystemCache.php create mode 100644 web/vendor/twig/twig/src/Cache/NullCache.php create mode 100644 web/vendor/twig/twig/src/Compiler.php create mode 100644 web/vendor/twig/twig/src/Environment.php create mode 100644 web/vendor/twig/twig/src/Error/Error.php create mode 100644 web/vendor/twig/twig/src/Error/LoaderError.php create mode 100644 web/vendor/twig/twig/src/Error/RuntimeError.php create mode 100644 web/vendor/twig/twig/src/Error/SyntaxError.php create mode 100644 web/vendor/twig/twig/src/ExpressionParser.php create mode 100644 web/vendor/twig/twig/src/Extension/AbstractExtension.php create mode 100644 web/vendor/twig/twig/src/Extension/CoreExtension.php create mode 100644 web/vendor/twig/twig/src/Extension/DebugExtension.php create mode 100644 web/vendor/twig/twig/src/Extension/EscaperExtension.php create mode 100644 web/vendor/twig/twig/src/Extension/ExtensionInterface.php create mode 100644 web/vendor/twig/twig/src/Extension/GlobalsInterface.php create mode 100644 web/vendor/twig/twig/src/Extension/InitRuntimeInterface.php create mode 100644 web/vendor/twig/twig/src/Extension/OptimizerExtension.php create mode 100644 web/vendor/twig/twig/src/Extension/ProfilerExtension.php create mode 100644 web/vendor/twig/twig/src/Extension/SandboxExtension.php create mode 100644 web/vendor/twig/twig/src/Extension/StagingExtension.php create mode 100644 web/vendor/twig/twig/src/Extension/StringLoaderExtension.php create mode 100644 web/vendor/twig/twig/src/FileExtensionEscapingStrategy.php create mode 100644 web/vendor/twig/twig/src/Lexer.php create mode 100644 web/vendor/twig/twig/src/Loader/ArrayLoader.php create mode 100644 web/vendor/twig/twig/src/Loader/ChainLoader.php create mode 100644 web/vendor/twig/twig/src/Loader/ExistsLoaderInterface.php create mode 100644 web/vendor/twig/twig/src/Loader/FilesystemLoader.php create mode 100644 web/vendor/twig/twig/src/Loader/LoaderInterface.php create mode 100644 web/vendor/twig/twig/src/Loader/SourceContextLoaderInterface.php create mode 100644 web/vendor/twig/twig/src/Markup.php create mode 100644 web/vendor/twig/twig/src/Node/AutoEscapeNode.php create mode 100644 web/vendor/twig/twig/src/Node/BlockNode.php create mode 100644 web/vendor/twig/twig/src/Node/BlockReferenceNode.php create mode 100644 web/vendor/twig/twig/src/Node/BodyNode.php create mode 100644 web/vendor/twig/twig/src/Node/CheckSecurityNode.php create mode 100644 web/vendor/twig/twig/src/Node/DoNode.php create mode 100644 web/vendor/twig/twig/src/Node/EmbedNode.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/AbstractExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/ArrayExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/AssignNameExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/AbstractBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/AddBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/AndBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/BitwiseAndBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/BitwiseOrBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/BitwiseXorBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/ConcatBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/DivBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/EndsWithBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/EqualBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/FloorDivBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/GreaterBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/GreaterEqualBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/InBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/LessBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/LessEqualBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/MatchesBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/ModBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/MulBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/NotEqualBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/NotInBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/OrBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/PowerBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/RangeBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/StartsWithBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Binary/SubBinary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/BlockReferenceExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/CallExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/ConditionalExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/ConstantExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Filter/DefaultFilter.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/FilterExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/FunctionExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/GetAttrExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/MethodCallExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/NameExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/NullCoalesceExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/ParentExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/TempNameExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Test/ConstantTest.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Test/DefinedTest.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Test/DivisiblebyTest.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Test/EvenTest.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Test/NullTest.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Test/OddTest.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Test/SameasTest.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/TestExpression.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Unary/AbstractUnary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Unary/NegUnary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Unary/NotUnary.php create mode 100644 web/vendor/twig/twig/src/Node/Expression/Unary/PosUnary.php create mode 100644 web/vendor/twig/twig/src/Node/FlushNode.php create mode 100644 web/vendor/twig/twig/src/Node/ForLoopNode.php create mode 100644 web/vendor/twig/twig/src/Node/ForNode.php create mode 100644 web/vendor/twig/twig/src/Node/IfNode.php create mode 100644 web/vendor/twig/twig/src/Node/ImportNode.php create mode 100644 web/vendor/twig/twig/src/Node/IncludeNode.php create mode 100644 web/vendor/twig/twig/src/Node/MacroNode.php create mode 100644 web/vendor/twig/twig/src/Node/ModuleNode.php create mode 100644 web/vendor/twig/twig/src/Node/Node.php create mode 100644 web/vendor/twig/twig/src/Node/NodeCaptureInterface.php create mode 100644 web/vendor/twig/twig/src/Node/NodeOutputInterface.php create mode 100644 web/vendor/twig/twig/src/Node/PrintNode.php create mode 100644 web/vendor/twig/twig/src/Node/SandboxNode.php create mode 100644 web/vendor/twig/twig/src/Node/SandboxedPrintNode.php create mode 100644 web/vendor/twig/twig/src/Node/SetNode.php create mode 100644 web/vendor/twig/twig/src/Node/SetTempNode.php create mode 100644 web/vendor/twig/twig/src/Node/SpacelessNode.php create mode 100644 web/vendor/twig/twig/src/Node/TextNode.php create mode 100644 web/vendor/twig/twig/src/Node/WithNode.php create mode 100644 web/vendor/twig/twig/src/NodeTraverser.php create mode 100644 web/vendor/twig/twig/src/NodeVisitor/AbstractNodeVisitor.php create mode 100644 web/vendor/twig/twig/src/NodeVisitor/EscaperNodeVisitor.php create mode 100644 web/vendor/twig/twig/src/NodeVisitor/NodeVisitorInterface.php create mode 100644 web/vendor/twig/twig/src/NodeVisitor/OptimizerNodeVisitor.php create mode 100644 web/vendor/twig/twig/src/NodeVisitor/SafeAnalysisNodeVisitor.php create mode 100644 web/vendor/twig/twig/src/NodeVisitor/SandboxNodeVisitor.php create mode 100644 web/vendor/twig/twig/src/Parser.php create mode 100644 web/vendor/twig/twig/src/Profiler/Dumper/BlackfireDumper.php create mode 100644 web/vendor/twig/twig/src/Profiler/Dumper/HtmlDumper.php create mode 100644 web/vendor/twig/twig/src/Profiler/Dumper/TextDumper.php create mode 100644 web/vendor/twig/twig/src/Profiler/Node/EnterProfileNode.php create mode 100644 web/vendor/twig/twig/src/Profiler/Node/LeaveProfileNode.php create mode 100644 web/vendor/twig/twig/src/Profiler/NodeVisitor/ProfilerNodeVisitor.php create mode 100644 web/vendor/twig/twig/src/Profiler/Profile.php create mode 100644 web/vendor/twig/twig/src/RuntimeLoader/ContainerRuntimeLoader.php create mode 100644 web/vendor/twig/twig/src/RuntimeLoader/FactoryRuntimeLoader.php create mode 100644 web/vendor/twig/twig/src/RuntimeLoader/RuntimeLoaderInterface.php create mode 100644 web/vendor/twig/twig/src/Sandbox/SecurityError.php create mode 100644 web/vendor/twig/twig/src/Sandbox/SecurityNotAllowedFilterError.php create mode 100644 web/vendor/twig/twig/src/Sandbox/SecurityNotAllowedFunctionError.php create mode 100644 web/vendor/twig/twig/src/Sandbox/SecurityNotAllowedMethodError.php create mode 100644 web/vendor/twig/twig/src/Sandbox/SecurityNotAllowedPropertyError.php create mode 100644 web/vendor/twig/twig/src/Sandbox/SecurityNotAllowedTagError.php create mode 100644 web/vendor/twig/twig/src/Sandbox/SecurityPolicy.php create mode 100644 web/vendor/twig/twig/src/Sandbox/SecurityPolicyInterface.php create mode 100644 web/vendor/twig/twig/src/Source.php create mode 100644 web/vendor/twig/twig/src/Template.php create mode 100644 web/vendor/twig/twig/src/TemplateWrapper.php create mode 100644 web/vendor/twig/twig/src/Test/IntegrationTestCase.php create mode 100644 web/vendor/twig/twig/src/Test/NodeTestCase.php create mode 100644 web/vendor/twig/twig/src/Token.php create mode 100644 web/vendor/twig/twig/src/TokenParser/AbstractTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/AutoEscapeTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/BlockTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/DoTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/EmbedTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/ExtendsTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/FilterTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/FlushTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/ForTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/FromTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/IfTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/ImportTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/IncludeTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/MacroTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/SandboxTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/SetTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/SpacelessTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/TokenParserInterface.php create mode 100644 web/vendor/twig/twig/src/TokenParser/UseTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenParser/WithTokenParser.php create mode 100644 web/vendor/twig/twig/src/TokenStream.php create mode 100644 web/vendor/twig/twig/src/TwigFilter.php create mode 100644 web/vendor/twig/twig/src/TwigFunction.php create mode 100644 web/vendor/twig/twig/src/TwigTest.php create mode 100644 web/vendor/twig/twig/src/Util/DeprecationCollector.php create mode 100644 web/vendor/twig/twig/src/Util/TemplateDirIterator.php diff --git a/web/.gitattributes b/web/.gitattributes index fca87f351..1c6f27454 100644 --- a/web/.gitattributes +++ b/web/.gitattributes @@ -35,6 +35,7 @@ *.script text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 *.sh text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=php *.sql text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 +*.svg text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 *.theme text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff=php *.twig text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 *.txt text eol=lf whitespace=blank-at-eol,-blank-at-eof,-space-before-tab,tab-in-indent,tabwidth=2 diff --git a/web/composer.lock b/web/composer.lock index fcc11480e..58313a161 100644 --- a/web/composer.lock +++ b/web/composer.lock @@ -880,16 +880,16 @@ }, { "name": "drupal/core", - "version": "8.3.1", + "version": "8.3.4", "source": { "type": "git", - "url": "https://github.com/drupal-composer/drupal-core.git", - "reference": "53326f9503e5e9e406fab22e4fbae6ddb706f7be" + "url": "https://github.com/drupal/core.git", + "reference": "f34eee7255142ab5416107972ef13d011f11e163" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drupal-composer/drupal-core/zipball/53326f9503e5e9e406fab22e4fbae6ddb706f7be", - "reference": "53326f9503e5e9e406fab22e4fbae6ddb706f7be", + "url": "https://api.github.com/repos/drupal/core/zipball/f34eee7255142ab5416107972ef13d011f11e163", + "reference": "f34eee7255142ab5416107972ef13d011f11e163", "shasum": "" }, "require": { @@ -923,6 +923,9 @@ "zendframework/zend-diactoros": "~1.1", "zendframework/zend-feed": "~2.4" }, + "conflict": { + "drush/drush": "<8.1.10" + }, "replace": { "drupal/action": "self.version", "drupal/aggregator": "self.version", @@ -1058,7 +1061,7 @@ "GPL-2.0+" ], "description": "Drupal is an open source content management platform powering millions of websites and applications.", - "time": "2017-04-19T16:07:22+00:00" + "time": "2017-06-21T18:13:27+00:00" }, { "name": "easyrdf/easyrdf", @@ -1225,16 +1228,16 @@ }, { "name": "guzzlehttp/guzzle", - "version": "6.2.3", + "version": "6.3.0", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "8d6c6cc55186db87b7dc5009827429ba4e9dc006" + "reference": "f4db5a78a5ea468d4831de7f0bf9d9415e348699" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/8d6c6cc55186db87b7dc5009827429ba4e9dc006", - "reference": "8d6c6cc55186db87b7dc5009827429ba4e9dc006", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/f4db5a78a5ea468d4831de7f0bf9d9415e348699", + "reference": "f4db5a78a5ea468d4831de7f0bf9d9415e348699", "shasum": "" }, "require": { @@ -1244,9 +1247,12 @@ }, "require-dev": { "ext-curl": "*", - "phpunit/phpunit": "^4.0", + "phpunit/phpunit": "^4.0 || ^5.0", "psr/log": "^1.0" }, + "suggest": { + "psr/log": "Required for using the Log middleware" + }, "type": "library", "extra": { "branch-alias": { @@ -1283,7 +1289,7 @@ "rest", "web service" ], - "time": "2017-02-28T22:50:30+00:00" + "time": "2017-06-22T18:50:49+00:00" }, { "name": "guzzlehttp/promises", @@ -2716,16 +2722,16 @@ }, { "name": "symfony-cmf/routing", - "version": "1.4.0", + "version": "1.4.1", "source": { "type": "git", - "url": "https://github.com/symfony-cmf/Routing.git", - "reference": "b93704ca098334f56e9b317932f21a4362e620db" + "url": "https://github.com/symfony-cmf/routing.git", + "reference": "fb1e7f85ff8c6866238b7e73a490a0a0243ae8ac" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/b93704ca098334f56e9b317932f21a4362e620db", - "reference": "b93704ca098334f56e9b317932f21a4362e620db", + "url": "https://api.github.com/repos/symfony-cmf/routing/zipball/fb1e7f85ff8c6866238b7e73a490a0a0243ae8ac", + "reference": "fb1e7f85ff8c6866238b7e73a490a0a0243ae8ac", "shasum": "" }, "require": { @@ -2771,7 +2777,7 @@ "database", "routing" ], - "time": "2016-03-31T09:11:39+00:00" + "time": "2017-05-09T08:10:41+00:00" }, { "name": "symfony/browser-kit", @@ -2832,16 +2838,16 @@ }, { "name": "symfony/class-loader", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/class-loader.git", - "reference": "2c8de07a8a4cc4da9c018ab7a81888b80e762f93" + "reference": "48b96f2fa9bf394cb428aced8efb28709ab54cfc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/class-loader/zipball/2c8de07a8a4cc4da9c018ab7a81888b80e762f93", - "reference": "2c8de07a8a4cc4da9c018ab7a81888b80e762f93", + "url": "https://api.github.com/repos/symfony/class-loader/zipball/48b96f2fa9bf394cb428aced8efb28709ab54cfc", + "reference": "48b96f2fa9bf394cb428aced8efb28709ab54cfc", "shasum": "" }, "require": { @@ -2881,20 +2887,20 @@ ], "description": "Symfony ClassLoader Component", "homepage": "https://symfony.com", - "time": "2017-02-18T19:13:35+00:00" + "time": "2017-06-01T20:52:29+00:00" }, { "name": "symfony/console", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "86407ff20855a5eaa2a7219bd815e9c40a88633e" + "reference": "3ef6ef64abecd566d551d9e7f6393ac6e93b2462" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/86407ff20855a5eaa2a7219bd815e9c40a88633e", - "reference": "86407ff20855a5eaa2a7219bd815e9c40a88633e", + "url": "https://api.github.com/repos/symfony/console/zipball/3ef6ef64abecd566d551d9e7f6393ac6e93b2462", + "reference": "3ef6ef64abecd566d551d9e7f6393ac6e93b2462", "shasum": "" }, "require": { @@ -2942,7 +2948,7 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2017-04-03T20:37:06+00:00" + "time": "2017-06-02T14:36:56+00:00" }, { "name": "symfony/css-selector", @@ -2999,16 +3005,16 @@ }, { "name": "symfony/debug", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", - "reference": "e90099a2958d4833a02d05b504cc06e1c234abcc" + "reference": "8470d7701177a88edeb0cec59b44d50ef4477e9b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/e90099a2958d4833a02d05b504cc06e1c234abcc", - "reference": "e90099a2958d4833a02d05b504cc06e1c234abcc", + "url": "https://api.github.com/repos/symfony/debug/zipball/8470d7701177a88edeb0cec59b44d50ef4477e9b", + "reference": "8470d7701177a88edeb0cec59b44d50ef4477e9b", "shasum": "" }, "require": { @@ -3052,20 +3058,20 @@ ], "description": "Symfony Debug Component", "homepage": "https://symfony.com", - "time": "2017-02-18T19:13:35+00:00" + "time": "2017-06-01T20:52:29+00:00" }, { "name": "symfony/dependency-injection", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "14b9d8ae69ac4c74e8f05fee7e0a57039b99c81e" + "reference": "b4a4b8f6ae1d69a6b2c0c31623bbc474121ee075" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/14b9d8ae69ac4c74e8f05fee7e0a57039b99c81e", - "reference": "14b9d8ae69ac4c74e8f05fee7e0a57039b99c81e", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/b4a4b8f6ae1d69a6b2c0c31623bbc474121ee075", + "reference": "b4a4b8f6ae1d69a6b2c0c31623bbc474121ee075", "shasum": "" }, "require": { @@ -3115,7 +3121,7 @@ ], "description": "Symfony DependencyInjection Component", "homepage": "https://symfony.com", - "time": "2017-04-03T22:14:48+00:00" + "time": "2017-06-02T14:36:56+00:00" }, { "name": "symfony/dom-crawler", @@ -3175,16 +3181,16 @@ }, { "name": "symfony/event-dispatcher", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "88b65f0ac25355090e524aba4ceb066025df8bd2" + "reference": "1377400fd641d7d1935981546aaef780ecd5bf6d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/88b65f0ac25355090e524aba4ceb066025df8bd2", - "reference": "88b65f0ac25355090e524aba4ceb066025df8bd2", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/1377400fd641d7d1935981546aaef780ecd5bf6d", + "reference": "1377400fd641d7d1935981546aaef780ecd5bf6d", "shasum": "" }, "require": { @@ -3231,20 +3237,20 @@ ], "description": "Symfony EventDispatcher Component", "homepage": "https://symfony.com", - "time": "2017-04-03T20:37:06+00:00" + "time": "2017-06-02T07:47:27+00:00" }, { "name": "symfony/http-foundation", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "0717efd2f2264dbd3d8e1bc69a0418c2fd6295d2" + "reference": "de8d8e83b9ec898e14ef8db84cee5919753b2ae5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/0717efd2f2264dbd3d8e1bc69a0418c2fd6295d2", - "reference": "0717efd2f2264dbd3d8e1bc69a0418c2fd6295d2", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/de8d8e83b9ec898e14ef8db84cee5919753b2ae5", + "reference": "de8d8e83b9ec898e14ef8db84cee5919753b2ae5", "shasum": "" }, "require": { @@ -3286,20 +3292,20 @@ ], "description": "Symfony HttpFoundation Component", "homepage": "https://symfony.com", - "time": "2017-04-04T15:24:26+00:00" + "time": "2017-06-01T20:52:29+00:00" }, { "name": "symfony/http-kernel", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "3256e9e554f02ba2dd49cff253f15df69c36cf40" + "reference": "03ca9421948142df8b9d3ffaeb3bfe8ddee02ca4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/3256e9e554f02ba2dd49cff253f15df69c36cf40", - "reference": "3256e9e554f02ba2dd49cff253f15df69c36cf40", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/03ca9421948142df8b9d3ffaeb3bfe8ddee02ca4", + "reference": "03ca9421948142df8b9d3ffaeb3bfe8ddee02ca4", "shasum": "" }, "require": { @@ -3310,7 +3316,8 @@ "symfony/http-foundation": "~2.7.20|~2.8.13|~3.1.6" }, "conflict": { - "symfony/config": "<2.7" + "symfony/config": "<2.7", + "twig/twig": "<1.34|<2.4,>=2" }, "require-dev": { "symfony/browser-kit": "~2.3|~3.0.0", @@ -3368,20 +3375,20 @@ ], "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", - "time": "2017-04-05T04:04:34+00:00" + "time": "2017-06-07T20:12:31+00:00" }, { "name": "symfony/polyfill-apcu", - "version": "v1.3.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-apcu.git", - "reference": "5d4474f447403c3348e37b70acc2b95475b7befa" + "reference": "2e7965b8cdfbba50d0092d3f6dca97dddec409e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-apcu/zipball/5d4474f447403c3348e37b70acc2b95475b7befa", - "reference": "5d4474f447403c3348e37b70acc2b95475b7befa", + "url": "https://api.github.com/repos/symfony/polyfill-apcu/zipball/2e7965b8cdfbba50d0092d3f6dca97dddec409e2", + "reference": "2e7965b8cdfbba50d0092d3f6dca97dddec409e2", "shasum": "" }, "require": { @@ -3390,7 +3397,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -3421,20 +3428,20 @@ "portable", "shim" ], - "time": "2016-11-14T01:06:16+00:00" + "time": "2017-06-09T08:25:21+00:00" }, { "name": "symfony/polyfill-iconv", - "version": "v1.3.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-iconv.git", - "reference": "cba36f3616d9866b3e52662e88da5c090fac1e97" + "reference": "ae1347fa81423b67dbc232c8c111facb367ff8b9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/cba36f3616d9866b3e52662e88da5c090fac1e97", - "reference": "cba36f3616d9866b3e52662e88da5c090fac1e97", + "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/ae1347fa81423b67dbc232c8c111facb367ff8b9", + "reference": "ae1347fa81423b67dbc232c8c111facb367ff8b9", "shasum": "" }, "require": { @@ -3446,7 +3453,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -3480,20 +3487,20 @@ "portable", "shim" ], - "time": "2016-11-14T01:06:16+00:00" + "time": "2017-06-09T08:25:21+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.3.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4" + "reference": "f29dca382a6485c3cbe6379f0c61230167681937" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4", - "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/f29dca382a6485c3cbe6379f0c61230167681937", + "reference": "f29dca382a6485c3cbe6379f0c61230167681937", "shasum": "" }, "require": { @@ -3505,7 +3512,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -3539,20 +3546,20 @@ "portable", "shim" ], - "time": "2016-11-14T01:06:16+00:00" + "time": "2017-06-09T14:24:12+00:00" }, { "name": "symfony/polyfill-php54", - "version": "v1.3.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php54.git", - "reference": "90e085822963fdcc9d1c5b73deb3d2e5783b16a0" + "reference": "7dd1a8b9f0442273fdfeb1c4f5eaff6890a82789" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php54/zipball/90e085822963fdcc9d1c5b73deb3d2e5783b16a0", - "reference": "90e085822963fdcc9d1c5b73deb3d2e5783b16a0", + "url": "https://api.github.com/repos/symfony/polyfill-php54/zipball/7dd1a8b9f0442273fdfeb1c4f5eaff6890a82789", + "reference": "7dd1a8b9f0442273fdfeb1c4f5eaff6890a82789", "shasum": "" }, "require": { @@ -3561,7 +3568,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -3597,20 +3604,20 @@ "portable", "shim" ], - "time": "2016-11-14T01:06:16+00:00" + "time": "2017-06-09T08:25:21+00:00" }, { "name": "symfony/polyfill-php55", - "version": "v1.3.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php55.git", - "reference": "03e3f0350bca2220e3623a0e340eef194405fc67" + "reference": "94566239a7720cde0820f15f0cc348ddb51ba51d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php55/zipball/03e3f0350bca2220e3623a0e340eef194405fc67", - "reference": "03e3f0350bca2220e3623a0e340eef194405fc67", + "url": "https://api.github.com/repos/symfony/polyfill-php55/zipball/94566239a7720cde0820f15f0cc348ddb51ba51d", + "reference": "94566239a7720cde0820f15f0cc348ddb51ba51d", "shasum": "" }, "require": { @@ -3620,7 +3627,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -3653,20 +3660,20 @@ "portable", "shim" ], - "time": "2016-11-14T01:06:16+00:00" + "time": "2017-06-09T08:25:21+00:00" }, { "name": "symfony/process", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "41336b20b52f5fd5b42a227e394e673c8071118f" + "reference": "d54232f5682fda2f8bbebff7c81b864646867ab9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/41336b20b52f5fd5b42a227e394e673c8071118f", - "reference": "41336b20b52f5fd5b42a227e394e673c8071118f", + "url": "https://api.github.com/repos/symfony/process/zipball/d54232f5682fda2f8bbebff7c81b864646867ab9", + "reference": "d54232f5682fda2f8bbebff7c81b864646867ab9", "shasum": "" }, "require": { @@ -3702,7 +3709,7 @@ ], "description": "Symfony Process Component", "homepage": "https://symfony.com", - "time": "2017-03-04T12:20:59+00:00" + "time": "2017-05-08T01:19:21+00:00" }, { "name": "symfony/psr-http-message-bridge", @@ -3766,16 +3773,16 @@ }, { "name": "symfony/routing", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "d145cd396f702c497cb24b21785ddac90a23fe71" + "reference": "d428588038f13a0e5771a2a8ccbc9de46bba9a19" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/d145cd396f702c497cb24b21785ddac90a23fe71", - "reference": "d145cd396f702c497cb24b21785ddac90a23fe71", + "url": "https://api.github.com/repos/symfony/routing/zipball/d428588038f13a0e5771a2a8ccbc9de46bba9a19", + "reference": "d428588038f13a0e5771a2a8ccbc9de46bba9a19", "shasum": "" }, "require": { @@ -3837,20 +3844,20 @@ "uri", "url" ], - "time": "2017-03-02T15:56:34+00:00" + "time": "2017-06-01T20:52:29+00:00" }, { "name": "symfony/serializer", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/serializer.git", - "reference": "d1c3d68daee29bbf0b4600745899a7000c215642" + "reference": "c6ccf71a899711efa21b0a98150b2c0af08f3cb2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/serializer/zipball/d1c3d68daee29bbf0b4600745899a7000c215642", - "reference": "d1c3d68daee29bbf0b4600745899a7000c215642", + "url": "https://api.github.com/repos/symfony/serializer/zipball/c6ccf71a899711efa21b0a98150b2c0af08f3cb2", + "reference": "c6ccf71a899711efa21b0a98150b2c0af08f3cb2", "shasum": "" }, "require": { @@ -3901,20 +3908,20 @@ ], "description": "Symfony Serializer Component", "homepage": "https://symfony.com", - "time": "2017-03-21T22:47:17+00:00" + "time": "2017-06-01T20:52:29+00:00" }, { "name": "symfony/translation", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "047e97a64d609778cadfc76e3a09793696bb19f1" + "reference": "14db4cc1172a722aaa3b558bfa8eff593b43cd46" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/047e97a64d609778cadfc76e3a09793696bb19f1", - "reference": "047e97a64d609778cadfc76e3a09793696bb19f1", + "url": "https://api.github.com/repos/symfony/translation/zipball/14db4cc1172a722aaa3b558bfa8eff593b43cd46", + "reference": "14db4cc1172a722aaa3b558bfa8eff593b43cd46", "shasum": "" }, "require": { @@ -3965,20 +3972,20 @@ ], "description": "Symfony Translation Component", "homepage": "https://symfony.com", - "time": "2017-03-21T21:39:01+00:00" + "time": "2017-06-01T20:52:29+00:00" }, { "name": "symfony/validator", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/validator.git", - "reference": "43f617ee200af4f4dedbb0782c6c689e06994286" + "reference": "9f323f762ad21bfb9df7c1afacbdd8addf0f8c50" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/43f617ee200af4f4dedbb0782c6c689e06994286", - "reference": "43f617ee200af4f4dedbb0782c6c689e06994286", + "url": "https://api.github.com/repos/symfony/validator/zipball/9f323f762ad21bfb9df7c1afacbdd8addf0f8c50", + "reference": "9f323f762ad21bfb9df7c1afacbdd8addf0f8c50", "shasum": "" }, "require": { @@ -4038,20 +4045,20 @@ ], "description": "Symfony Validator Component", "homepage": "https://symfony.com", - "time": "2017-03-23T16:08:03+00:00" + "time": "2017-06-02T14:36:56+00:00" }, { "name": "symfony/yaml", - "version": "v2.8.19", + "version": "v2.8.22", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "286d84891690b0e2515874717e49360d1c98a703" + "reference": "4c29dec8d489c4e37cf87ccd7166cd0b0e6a45c5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/286d84891690b0e2515874717e49360d1c98a703", - "reference": "286d84891690b0e2515874717e49360d1c98a703", + "url": "https://api.github.com/repos/symfony/yaml/zipball/4c29dec8d489c4e37cf87ccd7166cd0b0e6a45c5", + "reference": "4c29dec8d489c4e37cf87ccd7166cd0b0e6a45c5", "shasum": "" }, "require": { @@ -4087,24 +4094,24 @@ ], "description": "Symfony Yaml Component", "homepage": "https://symfony.com", - "time": "2017-03-20T09:41:44+00:00" + "time": "2017-06-01T20:52:29+00:00" }, { "name": "twig/twig", - "version": "v1.33.0", + "version": "v1.34.3", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "05cf49921b13f6f01d3cfdf9018cfa7a8086fd5a" + "reference": "451c6f4197e113e24c1c85bc3fc8c2d77adeff2e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/05cf49921b13f6f01d3cfdf9018cfa7a8086fd5a", - "reference": "05cf49921b13f6f01d3cfdf9018cfa7a8086fd5a", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/451c6f4197e113e24c1c85bc3fc8c2d77adeff2e", + "reference": "451c6f4197e113e24c1c85bc3fc8c2d77adeff2e", "shasum": "" }, "require": { - "php": ">=5.2.7" + "php": ">=5.3.3" }, "require-dev": { "psr/container": "^1.0", @@ -4114,12 +4121,15 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.33-dev" + "dev-master": "1.34-dev" } }, "autoload": { "psr-0": { "Twig_": "lib/" + }, + "psr-4": { + "Twig\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -4149,7 +4159,7 @@ "keywords": [ "templating" ], - "time": "2017-03-22T15:40:09+00:00" + "time": "2017-06-07T18:45:17+00:00" }, { "name": "wikimedia/composer-merge-plugin", diff --git a/web/core/CHANGELOG.txt b/web/core/CHANGELOG.txt index 0436c10b0..eab901996 100644 --- a/web/core/CHANGELOG.txt +++ b/web/core/CHANGELOG.txt @@ -1,3 +1,7 @@ +Drupal 8.3.4, 2017-06-21 +------------------------ +- Fixed security issues. See SA-CORE-2017-003. + Drupal 8.3.1, 2017-04-19 ------------------------ - Fixed security issues. See SA-CORE-2017-002. diff --git a/web/core/MAINTAINERS.txt b/web/core/MAINTAINERS.txt index 6b9e83365..9e9431638 100644 --- a/web/core/MAINTAINERS.txt +++ b/web/core/MAINTAINERS.txt @@ -22,6 +22,8 @@ Drupal 8 (Product Manager) - Nathaniel Catchpole 'catch' https://www.drupal.org/u/catch (Framework Manager, Release Manager) +- Chris McCafferty 'cilefen' https://www.drupal.org/u/cilefen + (Release Manager) - Jess Myrbo 'xjm' https://www.drupal.org/u/xjm (Release Manager) - Alex Pott 'alexpott' https://www.drupal.org/u/alexpott @@ -34,8 +36,6 @@ Provisional membership: (Framework Manager - Frontend) - Gábor Hojtsy 'Gábor Hojtsy' https://www.drupal.org/u/gábor-hojtsy (Product Manager) -- Chris McCafferty 'cilefen' https://www.drupal.org/u/cilefen - (Release Manager) - Roy Scholten 'yoroy' https://www.drupal.org/u/yoroy (Product Manager) @@ -87,7 +87,6 @@ Base system - ? Basic Auth -- Klaus Purer 'klausi' https://www.drupal.org/u/klausi - Juampy Novillo Requena 'juampy' https://www.drupal.org/u/juampy Batch API @@ -255,6 +254,7 @@ Interface Translation (locale) JavaScript - Théodore Biadala 'nod_' https://www.drupal.org/u/nod_ - Kay Leung 'droplet' https://www.drupal.org/u/droplet +- Matthew Grill 'drpal' https://www.drupal.org/u/drpal Language - Francesco Placella 'plach' https://www.drupal.org/u/plach @@ -297,7 +297,7 @@ Menu UI - ? Node -- ? +- Tim Millwood 'timmillwood' https://www.drupal.org/u/timmillwood Node Access - Ken Rickard 'agentrickard' https://www.drupal.org/u/agentrickard @@ -340,7 +340,6 @@ Request Processing - Larry Garfield 'Crell' https://www.drupal.org/u/crell REST -- Klaus Purer 'klausi' https://www.drupal.org/u/klausi - Larry Garfield 'Crell' https://www.drupal.org/u/crell - Wim Leers 'Wim Leers' https://www.drupal.org/u/wim-leers @@ -376,7 +375,7 @@ Statistics - Tim Millwood 'timmillwood' https://www.drupal.org/u/timmillwood Syslog -- ? +- Mariano D'Agostino 'dagmar' https://www.drupal.org/u/dagmar System (module) - ? @@ -391,7 +390,6 @@ Telephone Testing framework - Alex Pott 'alexpott' https://www.drupal.org/u/alexpott - Sascha Grossenbacher 'Berdir' https://www.drupal.org/u/berdir -- Klaus Purer 'klausi' https://www.drupal.org/u/klausi - Daniel Wehner 'dawehner' https://www.drupal.org/u/dawehner Text Field @@ -477,19 +475,28 @@ re-architect or otherwise improve large areas of Drupal core. See https://www.drupal.org/community-initiatives/drupal-core for more information on their responsibilities. The initiative coordinators for Drupal 8 are: -Workflow Initiative -- Dick Olsson 'dixon_' https://www.drupal.org/u/dixon_ - -PHPUnit Initiative -- Klaus Purer 'klausi' https://www.drupal.org/u/klausi -- Daniel Wehner 'dawehner' https://www.drupal.org/u/dawehner +API-first Initiative +- Wim Leers 'Wim Leers' https://www.drupal.org/u/wim-leers +- Mateu Aguiló Bosch 'e0ipso' https://www.drupal.org/u/e0ipso Layout Initiative - Tim Plunkett 'tim.plunkett' https://www.drupal.org/u/tim.plunkett +- Emilie Nouveau 'DyanneNova' https://www.drupal.org/u/dyannenova Media Initiative - Janez Urevc 'slashrsm' https://www.drupal.org/u/slashrsm +PHPUnit Initiative +- Daniel Wehner 'dawehner' https://www.drupal.org/u/dawehner + + Provisional membership: + - Len Swaneveld 'Lendude' https://www.drupal.org/u/lendude + - Michiel Nugter 'michielnugter' https://www.drupal.org/u/michielnugter + +Workflow Initiative +- Dick Olsson 'dixon_' https://www.drupal.org/u/dixon_ + + Provisional membership: None at this time. diff --git a/web/core/composer.json b/web/core/composer.json index 4cdea59f3..a7a6c6a43 100644 --- a/web/core/composer.json +++ b/web/core/composer.json @@ -34,6 +34,9 @@ "paragonie/random_compat": "^1.0|^2.0", "asm89/stack-cors": "~1.0" }, + "conflict": { + "drush/drush": "<8.1.10" + }, "require-dev": { "behat/mink": "1.7.x-dev", "behat/mink-goutte-driver": "~1.2", @@ -172,8 +175,7 @@ "scripts": { "pre-autoload-dump": "Drupal\\Core\\Composer\\Composer::preAutoloadDump", "post-autoload-dump": [ - "Drupal\\Core\\Composer\\Composer::ensureHtaccess", - "Drupal\\Core\\Composer\\Composer::configurePhpcs" + "Drupal\\Core\\Composer\\Composer::ensureHtaccess" ] } } diff --git a/web/core/core.link_relation_types.yml b/web/core/core.link_relation_types.yml index 88fea0e31..fb340274d 100644 --- a/web/core/core.link_relation_types.yml +++ b/web/core/core.link_relation_types.yml @@ -79,6 +79,9 @@ create-form: current: description: "Refers to a resource containing the most recent item(s) in a collection of resources." reference: '[RFC5005]' +customize-form: + description: "The target URI points to a resource where a submission form for customizing associated resource can be obtained." + reference: '[RFC6861]' derivedfrom: description: 'The target IRI points to a resource from which this material was derived.' reference: '[draft-hoffman-xml2rfc]' diff --git a/web/core/core.services.yml b/web/core/core.services.yml index 40c6a8a6b..2527845c7 100644 --- a/web/core/core.services.yml +++ b/web/core/core.services.yml @@ -731,7 +731,7 @@ services: class: Asm89\Stack\Cors arguments: ['%cors.config%'] tags: - - { name: http_middleware } + - { name: http_middleware, priority: 250 } psr7.http_foundation_factory: class: Symfony\Bridge\PsrHttpMessage\Factory\HttpFoundationFactory psr7.http_message_factory: diff --git a/web/core/includes/bootstrap.inc b/web/core/includes/bootstrap.inc index 293f25ae9..52f574212 100644 --- a/web/core/includes/bootstrap.inc +++ b/web/core/includes/bootstrap.inc @@ -59,6 +59,8 @@ const ERROR_REPORTING_DISPLAY_VERBOSE = 'verbose'; * @deprecated in Drupal 8.0.0, will be removed before Drupal 9.0.0. * Use Drupal\Core\Session\AccountInterface::ANONYMOUS_ROLE or * \Drupal\user\RoleInterface::ANONYMOUS_ID instead. + * + * @see https://www.drupal.org/node/1619504 */ const DRUPAL_ANONYMOUS_RID = AccountInterface::ANONYMOUS_ROLE; @@ -68,6 +70,8 @@ const DRUPAL_ANONYMOUS_RID = AccountInterface::ANONYMOUS_ROLE; * @deprecated in Drupal 8.0.0, will be removed before Drupal 9.0.0. * Use Drupal\Core\Session\AccountInterface::AUTHENTICATED_ROLE or * \Drupal\user\RoleInterface::AUTHENTICATED_ID instead. + * + * @see https://www.drupal.org/node/1619504 */ const DRUPAL_AUTHENTICATED_RID = AccountInterface::AUTHENTICATED_ROLE; @@ -88,6 +92,8 @@ const DRUPAL_EXTENSION_NAME_MAX_LENGTH = 50; * * @deprecated in Drupal 8.3.0, will be removed before Drupal 9.0.0. * Use \Drupal::time()->getRequestTime(); + * + * @see https://www.drupal.org/node/2785211 */ define('REQUEST_TIME', (int) $_SERVER['REQUEST_TIME']); @@ -105,6 +111,8 @@ const DRUPAL_PHP_FUNCTION_PATTERN = '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'; * * @deprecated in Drupal 8.0.x and will be removed before 9.0.0. Drupal core no * longer creates an active directory. + * + * @see https://www.drupal.org/node/2501187 */ const CONFIG_ACTIVE_DIRECTORY = 'active'; @@ -123,6 +131,8 @@ const CONFIG_SYNC_DIRECTORY = 'sync'; * * @deprecated in Drupal 8.0.x and will be removed before 9.0.0. The staging * directory was renamed to sync. + * + * @see https://www.drupal.org/node/2574957 */ const CONFIG_STAGING_DIRECTORY = 'staging'; @@ -315,6 +325,8 @@ function t($string, array $args = [], array $options = []) { * * @deprecated in Drupal 8.0.0, will be removed before Drupal 9.0.0. * Use \Drupal\Component\Render\FormattableMarkup. + * + * @see https://www.drupal.org/node/2302363 */ function format_string($string, array $args) { return SafeMarkup::format($string, $args); @@ -348,6 +360,8 @@ function format_string($string, array $args) { * * @deprecated in Drupal 8.0.0, will be removed before Drupal 9.0.0. * Use \Drupal\Component\Utility\Unicode::validateUtf8(). + * + * @see https://www.drupal.org/node/1992584 */ function drupal_validate_utf8($text) { return Unicode::validateUtf8($text); @@ -742,6 +756,8 @@ function drupal_installation_attempted() { * need to access the value before container is available you can use * BootstrapConfigStorageFactory to load the value directly from * configuration. + * + * @see https://www.drupal.org/node/2538996 */ function drupal_get_profile() { global $install_state; @@ -952,7 +968,7 @@ function drupal_static_reset($name = NULL) { * string and therefore has few valid use-cases. Note also, that this method * does not mark the string as safe. * - * @see \Drupal\Component\Utility\SafeMarkup::format() + * @see https://www.drupal.org/node/2302363 */ function drupal_placeholder($text) { return '' . Html::escape($text) . ''; diff --git a/web/core/includes/file.inc b/web/core/includes/file.inc index c78ee5ba9..3fcb38a4e 100644 --- a/web/core/includes/file.inc +++ b/web/core/includes/file.inc @@ -20,6 +20,8 @@ use Drupal\Core\StreamWrapper\PrivateStream; * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::CHMOD_DIRECTORY. + * + * @see https://www.drupal.org/node/2418133 */ const FILE_CHMOD_DIRECTORY = FileSystem::CHMOD_DIRECTORY; @@ -28,6 +30,8 @@ const FILE_CHMOD_DIRECTORY = FileSystem::CHMOD_DIRECTORY; * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::CHMOD_FILE. + * + * @see https://www.drupal.org/node/2418133 */ const FILE_CHMOD_FILE = FileSystem::CHMOD_FILE; @@ -77,6 +81,8 @@ const FILE_STATUS_PERMANENT = 1; * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::uriScheme(). + * + * @see https://www.drupal.org/node/2418133 */ function file_uri_scheme($uri) { return \Drupal::service('file_system')->uriScheme($uri); @@ -87,6 +93,8 @@ function file_uri_scheme($uri) { * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::validScheme(). + * + * @see https://www.drupal.org/node/2418133 */ function file_stream_wrapper_valid_scheme($scheme) { return \Drupal::service('file_system')->validScheme($scheme); @@ -386,6 +394,8 @@ function file_save_htaccess($directory, $private = TRUE, $force_overwrite = FALS * * @deprecated in Drupal 8.0.x-dev and will be removed before Drupal 9.0.0. * Use \Drupal\Component\PhpStorage\FileStorage::htaccessLines(). + * + * @see https://www.drupal.org/node/2418133 */ function file_htaccess_lines($private = TRUE) { return FileStorage::htaccessLines($private); @@ -919,6 +929,8 @@ function file_unmanaged_delete_recursive($path, $callback = NULL) { * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::moveUploadedFile(). + * + * @see https://www.drupal.org/node/2418133 */ function drupal_move_uploaded_file($filename, $uri) { return \Drupal::service('file_system')->moveUploadedFile($filename, $uri); @@ -1103,6 +1115,8 @@ function file_upload_max_size() { * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::chmod(). + * + * @see https://www.drupal.org/node/2418133 */ function drupal_chmod($uri, $mode = NULL) { return \Drupal::service('file_system')->chmod($uri, $mode); @@ -1113,6 +1127,8 @@ function drupal_chmod($uri, $mode = NULL) { * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::unlink(). + * + * @see https://www.drupal.org/node/2418133 */ function drupal_unlink($uri, $context = NULL) { return \Drupal::service('file_system')->unlink($uri, $context); @@ -1123,6 +1139,8 @@ function drupal_unlink($uri, $context = NULL) { * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::realpath(). + * + * @see https://www.drupal.org/node/2418133 */ function drupal_realpath($uri) { return \Drupal::service('file_system')->realpath($uri); @@ -1133,6 +1151,8 @@ function drupal_realpath($uri) { * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::dirname(). + * + * @see https://www.drupal.org/node/2418133 */ function drupal_dirname($uri) { return \Drupal::service('file_system')->dirname($uri); @@ -1143,6 +1163,8 @@ function drupal_dirname($uri) { * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::basename(). + * + * @see https://www.drupal.org/node/2418133 */ function drupal_basename($uri, $suffix = NULL) { return \Drupal::service('file_system')->basename($uri, $suffix); @@ -1154,6 +1176,8 @@ function drupal_basename($uri, $suffix = NULL) { * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::mkdir(). + * + * @see https://www.drupal.org/node/2418133 */ function drupal_mkdir($uri, $mode = NULL, $recursive = FALSE, $context = NULL) { return \Drupal::service('file_system')->mkdir($uri, $mode, $recursive, $context); @@ -1164,6 +1188,8 @@ function drupal_mkdir($uri, $mode = NULL, $recursive = FALSE, $context = NULL) { * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::rmdir(). + * + * @see https://www.drupal.org/node/2418133 */ function drupal_rmdir($uri, $context = NULL) { return \Drupal::service('file_system')->rmdir($uri, $context); @@ -1174,6 +1200,8 @@ function drupal_rmdir($uri, $context = NULL) { * * @deprecated in Drupal 8.0.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Core\File\FileSystem::tempnam(). + * + * @see https://www.drupal.org/node/2418133 */ function drupal_tempnam($directory, $prefix) { return \Drupal::service('file_system')->tempnam($directory, $prefix); @@ -1218,6 +1246,8 @@ function file_directory_temp() { * * @deprecated in Drupal 8.3.x-dev, will be removed before Drupal 9.0.0. * Use \Drupal\Component\FileSystem\FileSystem::getOsTemporaryDirectory(). + * + * @see https://www.drupal.org/node/2418133 */ function file_directory_os_temp() { return ComponentFileSystem::getOsTemporaryDirectory(); diff --git a/web/core/lib/Drupal.php b/web/core/lib/Drupal.php index defdbffb5..9371f1e5f 100644 --- a/web/core/lib/Drupal.php +++ b/web/core/lib/Drupal.php @@ -81,7 +81,7 @@ class Drupal { /** * The current system version. */ - const VERSION = '8.3.1'; + const VERSION = '8.3.4'; /** * Core API compatibility. diff --git a/web/core/lib/Drupal/Component/Plugin/Context/ContextDefinitionInterface.php b/web/core/lib/Drupal/Component/Plugin/Context/ContextDefinitionInterface.php index a829cec43..c18a70408 100644 --- a/web/core/lib/Drupal/Component/Plugin/Context/ContextDefinitionInterface.php +++ b/web/core/lib/Drupal/Component/Plugin/Context/ContextDefinitionInterface.php @@ -3,7 +3,9 @@ namespace Drupal\Component\Plugin\Context; /** - * Interface for context definitions. + * Interface used to define definition objects found in ContextInterface. + * + * @see \Drupal\Component\Plugin\Context\ContextInterface * * @todo WARNING: This interface is going to receive some additions as part of * https://www.drupal.org/node/2346999. diff --git a/web/core/lib/Drupal/Component/Plugin/Context/ContextInterface.php b/web/core/lib/Drupal/Component/Plugin/Context/ContextInterface.php index 9b7134f95..605c6587b 100644 --- a/web/core/lib/Drupal/Component/Plugin/Context/ContextInterface.php +++ b/web/core/lib/Drupal/Component/Plugin/Context/ContextInterface.php @@ -3,7 +3,14 @@ namespace Drupal\Component\Plugin\Context; /** - * A generic context interface for wrapping data a plugin needs to operate. + * Provides data and definitions for plugins during runtime and administration. + * + * Plugin contexts are satisfied by ContextInterface implementing objects. + * These objects always contain a definition of what data they will provide + * during runtime. During run time, ContextInterface implementing objects must + * also provide the corresponding data value. + * + * @see \Drupal\Component\Plugin\Context\ContextDefinitionInterface */ interface ContextInterface { diff --git a/web/core/lib/Drupal/Component/Serialization/YamlPecl.php b/web/core/lib/Drupal/Component/Serialization/YamlPecl.php index 2383bf849..3a8bb898e 100644 --- a/web/core/lib/Drupal/Component/Serialization/YamlPecl.php +++ b/web/core/lib/Drupal/Component/Serialization/YamlPecl.php @@ -27,6 +27,12 @@ class YamlPecl implements SerializationInterface { * {@inheritdoc} */ public static function decode($raw) { + static $init; + if (!isset($init)) { + // We never want to unserialize !php/object. + ini_set('yaml.decode_php', 0); + $init = TRUE; + } // yaml_parse() will error with an empty value. if (!trim($raw)) { return NULL; diff --git a/web/core/lib/Drupal/Component/Utility/Html.php b/web/core/lib/Drupal/Component/Utility/Html.php index 75bb62f80..97a14ecaf 100644 --- a/web/core/lib/Drupal/Component/Utility/Html.php +++ b/web/core/lib/Drupal/Component/Utility/Html.php @@ -61,13 +61,15 @@ class Html { * Do not pass one string containing multiple classes as they will be * incorrectly concatenated with dashes, i.e. "one two" will become "one-two". * - * @param string $class - * The class name to clean. + * @param mixed $class + * The class name to clean. It can be a string or anything that can be cast + * to string. * * @return string * The cleaned class name. */ public static function getClass($class) { + $class = (string) $class; if (!isset(static::$classes[$class])) { static::$classes[$class] = static::cleanCssIdentifier(Unicode::strtolower($class)); } diff --git a/web/core/lib/Drupal/Component/Utility/UrlHelper.php b/web/core/lib/Drupal/Component/Utility/UrlHelper.php index 04c217b6a..3127eaba6 100644 --- a/web/core/lib/Drupal/Component/Utility/UrlHelper.php +++ b/web/core/lib/Drupal/Component/Utility/UrlHelper.php @@ -46,7 +46,7 @@ class UrlHelper { $params = []; foreach ($query as $key => $value) { - $key = ($parent ? $parent . '[' . rawurlencode($key) . ']' : rawurlencode($key)); + $key = ($parent ? $parent . rawurlencode('[' . $key . ']') : rawurlencode($key)); // Recurse into children. if (is_array($value)) { @@ -142,7 +142,12 @@ class UrlHelper { // External URLs: not using parse_url() here, so we do not have to rebuild // the scheme, host, and path without having any use for it. - if (strpos($url, '://') !== FALSE) { + // The URL is considered external if it contains the '://' delimiter. Since + // a URL can also be passed as a query argument, we check if this delimiter + // appears in front of the '?' query argument delimiter. + $scheme_delimiter_position = strpos($url, '://'); + $query_delimiter_position = strpos($url, '?'); + if ($scheme_delimiter_position !== FALSE && ($query_delimiter_position === FALSE || $scheme_delimiter_position < $query_delimiter_position)) { // Split off everything before the query string into 'path'. $parts = explode('?', $url); diff --git a/web/core/lib/Drupal/Core/Annotation/ContextDefinition.php b/web/core/lib/Drupal/Core/Annotation/ContextDefinition.php index 0ff61e6f1..043975295 100644 --- a/web/core/lib/Drupal/Core/Annotation/ContextDefinition.php +++ b/web/core/lib/Drupal/Core/Annotation/ContextDefinition.php @@ -18,8 +18,6 @@ use Drupal\Core\StringTranslation\TranslatableMarkup; * "node" = @ContextDefinition("entity:node") * } * @endcode - * Remove spaces after @ in your actual plugin - these are put into this sample - * code so that it is not recognized as an annotation. * * To add a label to a context definition use the "label" key: * @code diff --git a/web/core/lib/Drupal/Core/Cache/ChainedFastBackendFactory.php b/web/core/lib/Drupal/Core/Cache/ChainedFastBackendFactory.php index e4da328a9..3169a3567 100644 --- a/web/core/lib/Drupal/Core/Cache/ChainedFastBackendFactory.php +++ b/web/core/lib/Drupal/Core/Cache/ChainedFastBackendFactory.php @@ -6,6 +6,8 @@ use Symfony\Component\DependencyInjection\ContainerAwareTrait; /** * Defines the chained fast cache backend factory. + * + * @see \Drupal\Core\Cache\ChainedFastBackend */ class ChainedFastBackendFactory implements CacheFactoryInterface { diff --git a/web/core/lib/Drupal/Core/Composer/Composer.php b/web/core/lib/Drupal/Core/Composer/Composer.php index 1ca6262c9..bdb0127c4 100644 --- a/web/core/lib/Drupal/Core/Composer/Composer.php +++ b/web/core/lib/Drupal/Core/Composer/Composer.php @@ -6,7 +6,6 @@ use Drupal\Component\PhpStorage\FileStorage; use Composer\Script\Event; use Composer\Installer\PackageEvent; use Composer\Semver\Constraint\Constraint; -use PHP_CodeSniffer; /** * Provides static functions for composer script events. @@ -137,28 +136,6 @@ EOT; } } - /** - * Configures phpcs if present. - * - * @param \Composer\Script\Event $event - */ - public static function configurePhpcs(Event $event) { - // Grab the local repo which tells us what's been installed. - $local_repository = $event->getComposer() - ->getRepositoryManager() - ->getLocalRepository(); - // Make sure both phpcs and coder are installed. - $phpcs_package = $local_repository->findPackage('squizlabs/php_codesniffer', '*'); - $coder_package = $local_repository->findPackage('drupal/coder', '*'); - if (!empty($phpcs_package) && !empty($coder_package)) { - $config = $event->getComposer()->getConfig(); - $vendor_dir = $config->get('vendor-dir'); - // Set phpcs' installed_paths config to point to our coder_sniffer - // directory. - PHP_CodeSniffer::setConfigData('installed_paths', $vendor_dir . '/drupal/coder/coder_sniffer'); - } - } - /** * Remove possibly problematic test files from vendored projects. * diff --git a/web/core/lib/Drupal/Core/Config/ConfigInstaller.php b/web/core/lib/Drupal/Core/Config/ConfigInstaller.php index c632aa8bb..b023764eb 100644 --- a/web/core/lib/Drupal/Core/Config/ConfigInstaller.php +++ b/web/core/lib/Drupal/Core/Config/ConfigInstaller.php @@ -466,7 +466,7 @@ class ConfigInstaller implements ConfigInstallerInterface { // Check the dependencies of configuration provided by the module. list($invalid_default_config, $missing_dependencies) = $this->findDefaultConfigWithUnmetDependencies($storage, $enabled_extensions, $profile_storages); if (!empty($invalid_default_config)) { - throw UnmetDependenciesException::create($name, array_unique($missing_dependencies)); + throw UnmetDependenciesException::create($name, array_unique($missing_dependencies, SORT_REGULAR)); } // Install profiles can not have config clashes. Configuration that diff --git a/web/core/lib/Drupal/Core/Controller/ControllerBase.php b/web/core/lib/Drupal/Core/Controller/ControllerBase.php index a46279f2f..c0d0cdd96 100644 --- a/web/core/lib/Drupal/Core/Controller/ControllerBase.php +++ b/web/core/lib/Drupal/Core/Controller/ControllerBase.php @@ -19,8 +19,8 @@ use Symfony\Component\DependencyInjection\ContainerInterface; * difficult to unit test. Therefore this base class should only be used by * controller classes that contain only trivial glue code. Controllers that * contain sufficiently complex logic that it's worth testing should not use - * this base class but use ContainerInjectionInterface instead, or even better be - * refactored to be trivial glue code. + * this base class but use ContainerInjectionInterface instead, or even + * better be refactored to be trivial glue code. * * The services exposed here are those that it is reasonable for a well-behaved * controller to leverage. A controller that needs other services may @@ -70,7 +70,7 @@ abstract class ControllerBase implements ContainerInjectionInterface { /** * The configuration factory. * - * @var \Drupal\Core\Config\Config + * @var \Drupal\Core\Config\ConfigFactoryInterface */ protected $configFactory; diff --git a/web/core/lib/Drupal/Core/DependencyInjection/Compiler/StackedKernelPass.php b/web/core/lib/Drupal/Core/DependencyInjection/Compiler/StackedKernelPass.php index c9edbdc52..a6f79c682 100644 --- a/web/core/lib/Drupal/Core/DependencyInjection/Compiler/StackedKernelPass.php +++ b/web/core/lib/Drupal/Core/DependencyInjection/Compiler/StackedKernelPass.php @@ -10,9 +10,9 @@ use Symfony\Component\DependencyInjection\Reference; * Provides a compiler pass for stacked HTTP kernels. * * Builds the HTTP kernel by collecting all services tagged 'http_middleware' - * and assembling them into a StackedKernel. The middleware with the lowest - * priority ends up as the outermost while the highest priority middleware - * wraps the actual HTTP kernel defined by the http_kernel.basic service. + * and assembling them into a StackedKernel. The middleware with the highest + * priority ends up as the outermost while the lowest priority middleware wraps + * the actual HTTP kernel defined by the http_kernel.basic service. * * The 'http_middleware' service tag additionally accepts a 'responder' * parameter. It should be set to TRUE if many or most requests will be handled diff --git a/web/core/lib/Drupal/Core/DrupalKernel.php b/web/core/lib/Drupal/Core/DrupalKernel.php index db773ed28..fc36f6644 100644 --- a/web/core/lib/Drupal/Core/DrupalKernel.php +++ b/web/core/lib/Drupal/Core/DrupalKernel.php @@ -870,6 +870,16 @@ class DrupalKernel implements DrupalKernelInterface, TerminableInterface { // If there is no container and no cached container definition, build a new // one from scratch. if (!isset($container) && !isset($container_definition)) { + // Building the container creates 1000s of objects. Garbage collection of + // these objects is expensive. This appears to be causing random + // segmentation faults in PHP 5.6 due to + // https://bugs.php.net/bug.php?id=72286. Once the container is rebuilt, + // garbage collection is re-enabled. + $disable_gc = version_compare(PHP_VERSION, '7', '<') && gc_enabled(); + if ($disable_gc) { + gc_collect_cycles(); + gc_disable(); + } $container = $this->compileContainer(); // Only dump the container if dumping is allowed. This is useful for @@ -879,6 +889,11 @@ class DrupalKernel implements DrupalKernelInterface, TerminableInterface { $dumper = new $this->phpArrayDumperClass($container); $container_definition = $dumper->getArray(); } + // If garbage collection was disabled prior to rebuilding container, + // re-enable it. + if ($disable_gc) { + gc_enable(); + } } // The container was rebuilt successfully. diff --git a/web/core/lib/Drupal/Core/Entity/ContentEntityBase.php b/web/core/lib/Drupal/Core/Entity/ContentEntityBase.php index 30f5c7a86..c46126e36 100644 --- a/web/core/lib/Drupal/Core/Entity/ContentEntityBase.php +++ b/web/core/lib/Drupal/Core/Entity/ContentEntityBase.php @@ -830,6 +830,7 @@ abstract class ContentEntityBase extends Entity implements \IteratorAggregate, C $translation->translationInitialize = FALSE; $translation->typedData = NULL; $translation->loadedRevisionId = &$this->loadedRevisionId; + $translation->isDefaultRevision = &$this->isDefaultRevision; return $translation; } @@ -1095,7 +1096,7 @@ abstract class ContentEntityBase extends Entity implements \IteratorAggregate, C // Ensure that the following properties are actually cloned by // overwriting the original references with ones pointing to copies of // them: enforceIsNew, newRevision, loadedRevisionId, fields, entityKeys, - // translatableEntityKeys and values. + // translatableEntityKeys, values and isDefaultRevision. $enforce_is_new = $this->enforceIsNew; $this->enforceIsNew = &$enforce_is_new; @@ -1117,6 +1118,9 @@ abstract class ContentEntityBase extends Entity implements \IteratorAggregate, C $values = $this->values; $this->values = &$values; + $default_revision = $this->isDefaultRevision; + $this->isDefaultRevision = &$default_revision; + foreach ($this->fields as $name => $fields_by_langcode) { $this->fields[$name] = []; // Untranslatable fields may have multiple references for the same field diff --git a/web/core/lib/Drupal/Core/Entity/Element/EntityAutocomplete.php b/web/core/lib/Drupal/Core/Entity/Element/EntityAutocomplete.php index 3e10f4a1c..89f99a049 100644 --- a/web/core/lib/Drupal/Core/Entity/Element/EntityAutocomplete.php +++ b/web/core/lib/Drupal/Core/Entity/Element/EntityAutocomplete.php @@ -318,8 +318,14 @@ class EntityAutocomplete extends Textfield { * A string of entity labels separated by commas. */ public static function getEntityLabels(array $entities) { + /** @var \Drupal\Core\Entity\EntityRepositoryInterface $entity_repository */ + $entity_repository = \Drupal::service('entity.repository'); + $entity_labels = []; foreach ($entities as $entity) { + // Set the entity in the correct language for display. + $entity = $entity_repository->getTranslationFromContext($entity); + // Use the special view label, since some entities allow the label to be // viewed, even if the entity is not allowed to be viewed. $label = ($entity->access('view label')) ? $entity->label() : t('- Restricted access -'); diff --git a/web/core/lib/Drupal/Core/Entity/EntityInterface.php b/web/core/lib/Drupal/Core/Entity/EntityInterface.php index 8890fb7f3..9cdb435f2 100644 --- a/web/core/lib/Drupal/Core/Entity/EntityInterface.php +++ b/web/core/lib/Drupal/Core/Entity/EntityInterface.php @@ -110,6 +110,7 @@ interface EntityInterface extends AccessibleInterface, CacheableDependencyInterf * @deprecated in Drupal 8.0.0, intended to be removed in Drupal 9.0.0 * Use \Drupal\Core\Entity\EntityInterface::toUrl() instead. * + * @see https://www.drupal.org/node/2614344 * @see \Drupal\Core\Entity\EntityInterface::toUrl */ public function urlInfo($rel = 'canonical', array $options = []); @@ -167,6 +168,7 @@ interface EntityInterface extends AccessibleInterface, CacheableDependencyInterf * @deprecated in Drupal 8.0.0, intended to be removed in Drupal 9.0.0 * Please use toUrl() instead. * + * @see https://www.drupal.org/node/2614344 * @see \Drupal\Core\Entity\EntityInterface::toUrl */ public function url($rel = 'canonical', $options = []); @@ -189,6 +191,7 @@ interface EntityInterface extends AccessibleInterface, CacheableDependencyInterf * @deprecated in Drupal 8.0.0, intended to be removed in Drupal 9.0.0 * Please use toLink() instead. * + * @see https://www.drupal.org/node/2614344 * @see \Drupal\Core\Entity\EntityInterface::toLink */ public function link($text = NULL, $rel = 'canonical', array $options = []); diff --git a/web/core/lib/Drupal/Core/Entity/EntityListBuilderInterface.php b/web/core/lib/Drupal/Core/Entity/EntityListBuilderInterface.php index 924772d7b..bab9d9764 100644 --- a/web/core/lib/Drupal/Core/Entity/EntityListBuilderInterface.php +++ b/web/core/lib/Drupal/Core/Entity/EntityListBuilderInterface.php @@ -22,7 +22,9 @@ interface EntityListBuilderInterface { * sorting the loaded entities. * * @return \Drupal\Core\Entity\EntityInterface[] - * An array of entities implementing \Drupal\Core\Entity\EntityInterface. + * An array of entities implementing \Drupal\Core\Entity\EntityInterface + * indexed by their IDs. Returns an empty array if no matching entities are + * found. */ public function load(); diff --git a/web/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php b/web/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php index 6df1af08a..a13a4b2d1 100644 --- a/web/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php +++ b/web/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php @@ -603,6 +603,13 @@ class SqlContentEntityStorage extends ContentEntityStorageBase implements SqlEnt $this->database->delete($this->revisionTable) ->condition($this->revisionKey, $revision->getRevisionId()) ->execute(); + + if ($this->revisionDataTable) { + $this->database->delete($this->revisionDataTable) + ->condition($this->revisionKey, $revision->getRevisionId()) + ->execute(); + } + $this->deleteRevisionFromDedicatedTables($revision); } diff --git a/web/core/lib/Drupal/Core/Field/BaseFieldOverrideAccessControlHandler.php b/web/core/lib/Drupal/Core/Field/BaseFieldOverrideAccessControlHandler.php new file mode 100644 index 000000000..a1e734b46 --- /dev/null +++ b/web/core/lib/Drupal/Core/Field/BaseFieldOverrideAccessControlHandler.php @@ -0,0 +1,23 @@ +orIf(AccessResult::allowedIfHasPermission($account, 'administer ' . $entity->getTargetEntityTypeId() . ' fields')); + } + +} diff --git a/web/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php b/web/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php index c2d0cb5dd..f20f3a503 100644 --- a/web/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php +++ b/web/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php @@ -16,7 +16,8 @@ use Drupal\Core\Field\FieldException; * id = "base_field_override", * label = @Translation("Base field override"), * handlers = { - * "storage" = "Drupal\Core\Field\BaseFieldOverrideStorage" + * "storage" = "Drupal\Core\Field\BaseFieldOverrideStorage", + * "access" = "Drupal\Core\Field\BaseFieldOverrideAccessControlHandler", * }, * config_prefix = "base_field_override", * entity_keys = { diff --git a/web/core/lib/Drupal/Core/Field/Plugin/Field/FieldFormatter/EntityReferenceFormatterBase.php b/web/core/lib/Drupal/Core/Field/Plugin/Field/FieldFormatter/EntityReferenceFormatterBase.php index 12a349afe..aa8f82934 100644 --- a/web/core/lib/Drupal/Core/Field/Plugin/Field/FieldFormatter/EntityReferenceFormatterBase.php +++ b/web/core/lib/Drupal/Core/Field/Plugin/Field/FieldFormatter/EntityReferenceFormatterBase.php @@ -104,7 +104,8 @@ abstract class EntityReferenceFormatterBase extends FormatterBase { // tags on which the access results depend, to ensure users that cannot view // this field at the moment will gain access once any of those cache tags // are invalidated. - $field_level_access_cacheability->applyTo($elements); + $field_level_access_cacheability->merge(CacheableMetadata::createFromRenderArray($elements)) + ->applyTo($elements); return $elements; } diff --git a/web/core/lib/Drupal/Core/Field/Plugin/migrate/field/Email.php b/web/core/lib/Drupal/Core/Field/Plugin/migrate/field/Email.php new file mode 100644 index 000000000..3b490f0f1 --- /dev/null +++ b/web/core/lib/Drupal/Core/Field/Plugin/migrate/field/Email.php @@ -0,0 +1,54 @@ + 'email_default', + ]; + } + + /** + * {@inheritdoc} + */ + public function getFieldFormatterMap() { + return [ + 'email_formatter_default' => 'basic_string', + 'email_formatter_contact' => 'basic_string', + 'email_formatter_plain' => 'basic_string', + 'email_formatter_spamspan' => 'basic_string', + ]; + } + + /** + * {@inheritdoc} + */ + public function processFieldValues(MigrationInterface $migration, $field_name, $data) { + $process = [ + 'plugin' => 'iterator', + 'source' => $field_name, + 'process' => [ + 'value' => 'email', + ], + ]; + $migration->setProcessOfProperty($field_name, $process); + } + +} diff --git a/web/core/lib/Drupal/Core/Lock/LockBackendInterface.php b/web/core/lib/Drupal/Core/Lock/LockBackendInterface.php index e2912958f..1e6042d41 100644 --- a/web/core/lib/Drupal/Core/Lock/LockBackendInterface.php +++ b/web/core/lib/Drupal/Core/Lock/LockBackendInterface.php @@ -5,7 +5,7 @@ namespace Drupal\Core\Lock; /** * @defgroup lock Locking mechanisms * @{ - * Functions to coordinate long-running operations across requests. + * Functions to coordinate long operations across requests. * * In most environments, multiple Drupal page requests (a.k.a. threads or * processes) will execute in parallel. This leads to potential conflicts or @@ -15,15 +15,14 @@ namespace Drupal\Core\Lock; * problems with such code, the cron system uses a locking process to ensure * that cron is not started again if it is already running. * - * This is a cooperative, advisory lock system. Any long-running operation - * that could potentially be attempted in parallel by multiple requests should - * try to acquire a lock before proceeding. By obtaining a lock, one request - * notifies any other requests that a specific operation is in progress which - * must not be executed in parallel. + * To avoid these types of conflicts, Drupal has a cooperative, advisory lock + * system. Any long-running operation that could potentially be attempted in + * parallel by multiple requests should try to acquire a lock before + * proceeding. By obtaining a lock, one request notifies any other requests that + * a specific operation is in progress which must not be executed in parallel. * * To use this API, pick a unique name for the lock. A sensible choice is the - * name of the function performing the operation. A very simple example use of - * this API: + * name of the function performing the operation. Here is a simple example: * @code * function mymodule_long_operation() { * $lock = \Drupal::lock(); @@ -53,6 +52,26 @@ namespace Drupal\Core\Lock; * $lock->acquire() and $lock->wait() will automatically break (delete) a lock * whose duration has exceeded the timeout specified when it was acquired. * + * The following limitations in this implementation should be carefully noted: + * - Time: Timestamps are derived from the local system clock of the environment + * the code is executing in. The orderly progression of time from this + * viewpoint can be disrupted by external events such as NTP synchronization + * and operator intervention. Where multiple web servers are involved in + * serving the site, they will have their own independent clocks, introducing + * another source of error in the time keeping process. Timeout values applied + * to locks must therefore be considered approximate, and should not be relied + * upon. + * - Uniqueness: Uniqueness of lock names is not enforced. The impact of the + * use of a common lock name will depend on what processes and resources the + * lock is being used to manage. + * - Sharing: There is limited support for resources shared across sites. + * The locks are stored as rows in the semaphore table and, as such, they + * have the same visibility as the table. If resources managed by a lock are + * shared across sites then the semaphore table must be shared across sites + * as well. This is a binary situation: either all resources are shared and + * the semaphore table is shared or no resources are shared and the semaphore + * table is not shared. Mixed mode operation is not supported. + * * @} End of "defgroup lock". */ diff --git a/web/core/lib/Drupal/Core/Menu/LocalTaskManagerInterface.php b/web/core/lib/Drupal/Core/Menu/LocalTaskManagerInterface.php index e9a748d51..9352e4011 100644 --- a/web/core/lib/Drupal/Core/Menu/LocalTaskManagerInterface.php +++ b/web/core/lib/Drupal/Core/Menu/LocalTaskManagerInterface.php @@ -53,7 +53,7 @@ interface LocalTaskManagerInterface extends PluginManagerInterface { public function getTasksBuild($current_route_name, RefinableCacheableDependencyInterface &$cacheability); /** - * Collects the local tasks (tabs) for the current route. + * Renders the local tasks (tabs) for the given route. * * @param string $route_name * The route for which to make renderable local tasks. diff --git a/web/core/lib/Drupal/Core/Menu/MenuLinkTree.php b/web/core/lib/Drupal/Core/Menu/MenuLinkTree.php index 8dd4c51c9..8a6dce8ff 100644 --- a/web/core/lib/Drupal/Core/Menu/MenuLinkTree.php +++ b/web/core/lib/Drupal/Core/Menu/MenuLinkTree.php @@ -21,6 +21,13 @@ class MenuLinkTree implements MenuLinkTreeInterface { */ protected $treeStorage; + /** + * The menu link plugin manager. + * + * @var \Drupal\Core\Menu\MenuLinkManagerInterface + */ + protected $menuLinkManager; + /** * The route provider to load routes by name. * diff --git a/web/core/lib/Drupal/Core/Menu/MenuTreeStorage.php b/web/core/lib/Drupal/Core/Menu/MenuTreeStorage.php index 0b11f8688..c50f7b431 100644 --- a/web/core/lib/Drupal/Core/Menu/MenuTreeStorage.php +++ b/web/core/lib/Drupal/Core/Menu/MenuTreeStorage.php @@ -282,27 +282,44 @@ class MenuTreeStorage implements MenuTreeStorageInterface { * depth. */ protected function doSave(array $link) { - $original = $this->loadFull($link['id']); - // @todo Should we just return here if the link values match the original - // values completely? - // https://www.drupal.org/node/2302137 $affected_menus = []; + // Get the existing definition if it exists. This does not use + // self::loadFull() to avoid the unserialization of fields with 'serialize' + // equal to TRUE as defined in self::schemaDefinition(). The makes $original + // easier to compare with the return value of self::preSave(). + $query = $this->connection->select($this->table, $this->options); + $query->fields($this->table); + $query->condition('id', $link['id']); + $original = $this->safeExecuteSelect($query)->fetchAssoc(); + + if ($original) { + $link['mlid'] = $original['mlid']; + $link['has_children'] = $original['has_children']; + $affected_menus[$original['menu_name']] = $original['menu_name']; + $fields = $this->preSave($link, $original); + // If $link matches the $original data then exit early as there are no + // changes to make. Use array_diff_assoc() to check if they match because: + // - Some of the data types of the values are not the same. The values + // in $original are all strings because they have come from database but + // $fields contains typed values. + // - MenuTreeStorage::preSave() removes the 'mlid' from $fields. + // - The order of the keys in $original and $fields is different. + if (array_diff_assoc($fields, $original) == [] && array_diff_assoc($original, $fields) == ['mlid' => $link['mlid']]) { + return $affected_menus; + } + } + $transaction = $this->connection->startTransaction(); try { - if ($original) { - $link['mlid'] = $original['mlid']; - $link['has_children'] = $original['has_children']; - $affected_menus[$original['menu_name']] = $original['menu_name']; - } - else { + if (!$original) { // Generate a new mlid. $options = ['return' => Database::RETURN_INSERT_ID] + $this->options; $link['mlid'] = $this->connection->insert($this->table, $options) ->fields(['id' => $link['id'], 'menu_name' => $link['menu_name']]) ->execute(); + $fields = $this->preSave($link, []); } - $fields = $this->preSave($link, $original); // We may be moving the link to a new menu. $affected_menus[$fields['menu_name']] = $fields['menu_name']; $query = $this->connection->update($this->table, $this->options); diff --git a/web/core/lib/Drupal/Core/Plugin/Context/ContextDefinitionInterface.php b/web/core/lib/Drupal/Core/Plugin/Context/ContextDefinitionInterface.php index 8cd07208a..c60c6c7fc 100644 --- a/web/core/lib/Drupal/Core/Plugin/Context/ContextDefinitionInterface.php +++ b/web/core/lib/Drupal/Core/Plugin/Context/ContextDefinitionInterface.php @@ -5,7 +5,10 @@ namespace Drupal\Core\Plugin\Context; use Drupal\Component\Plugin\Context\ContextDefinitionInterface as ComponentContextDefinitionInterface; /** - * Interface for context definitions. + * Interface to define definition objects in ContextInterface via TypedData. + * + * @see \Drupal\Component\Plugin\Context\ContextDefinitionInterface + * @see \Drupal\Core\Plugin\Context\ContextInterface */ interface ContextDefinitionInterface extends ComponentContextDefinitionInterface { diff --git a/web/core/lib/Drupal/Core/Plugin/Context/ContextInterface.php b/web/core/lib/Drupal/Core/Plugin/Context/ContextInterface.php index d126886e3..260cb2c33 100644 --- a/web/core/lib/Drupal/Core/Plugin/Context/ContextInterface.php +++ b/web/core/lib/Drupal/Core/Plugin/Context/ContextInterface.php @@ -6,7 +6,10 @@ use Drupal\Component\Plugin\Context\ContextInterface as ComponentContextInterfac use Drupal\Core\Cache\CacheableDependencyInterface; /** - * Interface for context. + * Context data and definitions for plugins supporting caching and return docs. + * + * @see \Drupal\Component\Plugin\Context\ContextInterface + * @see \Drupal\Core\Plugin\Context\ContextDefinitionInterface */ interface ContextInterface extends ComponentContextInterface, CacheableDependencyInterface { diff --git a/web/core/lib/Drupal/Core/Plugin/DefaultPluginManager.php b/web/core/lib/Drupal/Core/Plugin/DefaultPluginManager.php index 5a8a3f334..62260a2e2 100644 --- a/web/core/lib/Drupal/Core/Plugin/DefaultPluginManager.php +++ b/web/core/lib/Drupal/Core/Plugin/DefaultPluginManager.php @@ -361,7 +361,7 @@ class DefaultPluginManager extends PluginManagerBase implements PluginManagerInt * {@inheritdoc} */ public function getCacheMaxAge() { - return CACHE::PERMANENT; + return Cache::PERMANENT; } } diff --git a/web/core/lib/Drupal/Core/Plugin/ObjectWithPluginCollectionInterface.php b/web/core/lib/Drupal/Core/Plugin/ObjectWithPluginCollectionInterface.php index c5aea57fe..3b7ec530d 100644 --- a/web/core/lib/Drupal/Core/Plugin/ObjectWithPluginCollectionInterface.php +++ b/web/core/lib/Drupal/Core/Plugin/ObjectWithPluginCollectionInterface.php @@ -15,7 +15,7 @@ namespace Drupal\Core\Plugin; interface ObjectWithPluginCollectionInterface { /** - * Gets the plugin collections used by this entity. + * Gets the plugin collections used by this object. * * @return \Drupal\Component\Plugin\LazyPluginCollection[] * An array of plugin collections, keyed by the property name they use to diff --git a/web/core/lib/Drupal/Core/Render/Element/StatusMessages.php b/web/core/lib/Drupal/Core/Render/Element/StatusMessages.php index 530457fd9..d16c245a1 100644 --- a/web/core/lib/Drupal/Core/Render/Element/StatusMessages.php +++ b/web/core/lib/Drupal/Core/Render/Element/StatusMessages.php @@ -73,22 +73,17 @@ class StatusMessages extends RenderElement { * @see drupal_get_messages() */ public static function renderMessages($type) { - $render = []; - $messages = drupal_get_messages($type); - if ($messages) { - // Render the messages. - $render = [ - '#theme' => 'status_messages', - // @todo Improve when https://www.drupal.org/node/2278383 lands. - '#message_list' => $messages, - '#status_headings' => [ - 'status' => t('Status message'), - 'error' => t('Error message'), - 'warning' => t('Warning message'), - ], - ]; - } - return $render; + // Render the messages. + return [ + '#theme' => 'status_messages', + // @todo Improve when https://www.drupal.org/node/2278383 lands. + '#message_list' => drupal_get_messages($type), + '#status_headings' => [ + 'status' => t('Status message'), + 'error' => t('Error message'), + 'warning' => t('Warning message'), + ], + ]; } } diff --git a/web/core/lib/Drupal/Core/Render/theme.api.php b/web/core/lib/Drupal/Core/Render/theme.api.php index 44fcdd0ca..6e78d527a 100644 --- a/web/core/lib/Drupal/Core/Render/theme.api.php +++ b/web/core/lib/Drupal/Core/Render/theme.api.php @@ -225,12 +225,7 @@ * For further information on the Theme and Render APIs, see: * - https://www.drupal.org/docs/8/theming * - https://www.drupal.org/developing/api/8/render - * - https://www.drupal.org/node/722174 - * - https://www.drupal.org/node/933976 - * - https://www.drupal.org/node/930760 - * - * @todo Check these links. Some are for Drupal 7, and might need updates for - * Drupal 8. + * - @link themeable Theme system overview @endlink. * * @section arrays Render arrays * The core structure of the Render API is the render array, which is a diff --git a/web/core/lib/Drupal/Core/Test/ObjectSerialization.php b/web/core/lib/Drupal/Core/Test/ObjectSerialization.php new file mode 100644 index 000000000..99d44a55c --- /dev/null +++ b/web/core/lib/Drupal/Core/Test/ObjectSerialization.php @@ -0,0 +1,24 @@ + 0) { - terms.push('"' + ui.item.value + '"'); - } - else { - terms.push(ui.item.value); - } + terms.push(ui.item.value); + event.target.value = terms.join(', '); // Return false to tell jQuery UI that we've filled in the value already. return false; diff --git a/web/core/misc/icons/787878/plus.svg b/web/core/misc/icons/787878/plus.svg index 66556685a..53f7fa536 100644 --- a/web/core/misc/icons/787878/plus.svg +++ b/web/core/misc/icons/787878/plus.svg @@ -1 +1 @@ - + diff --git a/web/core/misc/icons/bebebe/plus.svg b/web/core/misc/icons/bebebe/plus.svg index ed2b6504f..500664891 100644 --- a/web/core/misc/icons/bebebe/plus.svg +++ b/web/core/misc/icons/bebebe/plus.svg @@ -1 +1 @@ - + diff --git a/web/core/misc/tabledrag.js b/web/core/misc/tabledrag.js index 395d09298..75468e60d 100644 --- a/web/core/misc/tabledrag.js +++ b/web/core/misc/tabledrag.js @@ -1162,10 +1162,10 @@ // :even and :odd are reversed because jQuery counts from 0 and // we count from 1, so we're out of sync. // Match immediate children of the parent element to allow nesting. - $(this.table).find('> tbody > tr.draggable:visible, > tr.draggable:visible') - .removeClass('odd even') - .filter(':odd').addClass('even').end() - .filter(':even').addClass('odd'); + $(this.table).find('> tbody > tr.draggable, > tr.draggable') + .filter(':visible') + .filter(':odd').removeClass('odd').addClass('even').end() + .filter(':even').removeClass('even').addClass('odd'); }; /** diff --git a/web/core/modules/aggregator/config/optional/views.view.aggregator_rss_feed.yml b/web/core/modules/aggregator/config/optional/views.view.aggregator_rss_feed.yml index 1a1654994..9bbba2363 100644 --- a/web/core/modules/aggregator/config/optional/views.view.aggregator_rss_feed.yml +++ b/web/core/modules/aggregator/config/optional/views.view.aggregator_rss_feed.yml @@ -3,6 +3,7 @@ status: true dependencies: module: - aggregator + - user id: aggregator_rss_feed label: 'Aggregator RSS feed' module: aggregator @@ -137,6 +138,8 @@ display: - url.query_args - user.permissions cacheable: false + max-age: -1 + tags: { } feed_items: display_plugin: feed id: feed_items @@ -154,3 +157,5 @@ display: - 'languages:language_interface' - user.permissions cacheable: false + max-age: -1 + tags: { } diff --git a/web/core/modules/aggregator/config/optional/views.view.aggregator_sources.yml b/web/core/modules/aggregator/config/optional/views.view.aggregator_sources.yml index 7ddea89ed..643a79448 100644 --- a/web/core/modules/aggregator/config/optional/views.view.aggregator_sources.yml +++ b/web/core/modules/aggregator/config/optional/views.view.aggregator_sources.yml @@ -143,7 +143,8 @@ display: - 'languages:language_interface' - url.query_args - user.permissions - max-age: 0 + max-age: -1 + tags: { } feed_1: display_plugin: feed id: feed_1 @@ -401,7 +402,8 @@ display: - 'languages:language_content' - 'languages:language_interface' - user.permissions - max-age: 0 + max-age: -1 + tags: { } page_1: display_plugin: page id: page_1 @@ -423,4 +425,5 @@ display: - 'languages:language_interface' - url.query_args - user.permissions - max-age: 0 + max-age: -1 + tags: { } diff --git a/web/core/modules/aggregator/migration_templates/d6_aggregator_item.yml b/web/core/modules/aggregator/migration_templates/d6_aggregator_item.yml index fb4040ab1..e14dbd60e 100644 --- a/web/core/modules/aggregator/migration_templates/d6_aggregator_item.yml +++ b/web/core/modules/aggregator/migration_templates/d6_aggregator_item.yml @@ -7,7 +7,7 @@ source: process: iid: iid fid: - plugin: migration + plugin: migration_lookup migration: d6_aggregator_feed source: fid title: title diff --git a/web/core/modules/aggregator/migration_templates/d7_aggregator_item.yml b/web/core/modules/aggregator/migration_templates/d7_aggregator_item.yml index 9735e19da..054ba439f 100644 --- a/web/core/modules/aggregator/migration_templates/d7_aggregator_item.yml +++ b/web/core/modules/aggregator/migration_templates/d7_aggregator_item.yml @@ -7,7 +7,7 @@ source: process: iid: iid fid: - plugin: migration + plugin: migration_lookup migration: d7_aggregator_feed source: fid title: title diff --git a/web/core/modules/aggregator/src/Tests/FeedAdminDisplayTest.php b/web/core/modules/aggregator/src/Tests/FeedAdminDisplayTest.php index 0dbb872b5..46366b495 100644 --- a/web/core/modules/aggregator/src/Tests/FeedAdminDisplayTest.php +++ b/web/core/modules/aggregator/src/Tests/FeedAdminDisplayTest.php @@ -60,4 +60,14 @@ class FeedAdminDisplayTest extends AggregatorTestBase { $this->assertNoText('left', 'The feed is not scheduled. It does not show a timeframe "x x left" for next update.'); } + /** + * {@inheritdoc} + */ + public function randomMachineName($length = 8) { + $value = parent::randomMachineName($length); + // See expected values in testFeedUpdateFields(). + $value = str_replace(['never', 'imminently', 'ago', 'left'], 'x', $value); + return $value; + } + } diff --git a/web/core/modules/big_pipe/src/Tests/BigPipePlaceholderTestCases.php b/web/core/modules/big_pipe/src/Tests/BigPipePlaceholderTestCases.php index 69ec86fdc..46377800b 100644 --- a/web/core/modules/big_pipe/src/Tests/BigPipePlaceholderTestCases.php +++ b/web/core/modules/big_pipe/src/Tests/BigPipePlaceholderTestCases.php @@ -59,29 +59,29 @@ class BigPipePlaceholderTestCases { ], ] ); - $status_messages->bigPipePlaceholderId = 'callback=Drupal%5CCore%5CRender%5CElement%5CStatusMessages%3A%3ArenderMessages&args[0]&token=_HAdUpwWmet0TOTe2PSiJuMntExoshbm1kh2wQzzzAA'; + $status_messages->bigPipePlaceholderId = 'callback=Drupal%5CCore%5CRender%5CElement%5CStatusMessages%3A%3ArenderMessages&args%5B0%5D&token=_HAdUpwWmet0TOTe2PSiJuMntExoshbm1kh2wQzzzAA'; $status_messages->bigPipePlaceholderRenderArray = [ - '#markup' => '', + '#markup' => '', '#cache' => $cacheability_depends_on_session_and_nojs_cookie, '#attached' => [ 'library' => ['big_pipe/big_pipe'], 'drupalSettings' => [ 'bigPipePlaceholderIds' => [ - 'callback=Drupal%5CCore%5CRender%5CElement%5CStatusMessages%3A%3ArenderMessages&args[0]&token=_HAdUpwWmet0TOTe2PSiJuMntExoshbm1kh2wQzzzAA' => TRUE, + 'callback=Drupal%5CCore%5CRender%5CElement%5CStatusMessages%3A%3ArenderMessages&args%5B0%5D&token=_HAdUpwWmet0TOTe2PSiJuMntExoshbm1kh2wQzzzAA' => TRUE, ], ], 'big_pipe_placeholders' => [ - 'callback=Drupal%5CCore%5CRender%5CElement%5CStatusMessages%3A%3ArenderMessages&args[0]&token=_HAdUpwWmet0TOTe2PSiJuMntExoshbm1kh2wQzzzAA' => $status_messages->placeholderRenderArray, + 'callback=Drupal%5CCore%5CRender%5CElement%5CStatusMessages%3A%3ArenderMessages&args%5B0%5D&token=_HAdUpwWmet0TOTe2PSiJuMntExoshbm1kh2wQzzzAA' => $status_messages->placeholderRenderArray, ], ], ]; - $status_messages->bigPipeNoJsPlaceholder = ''; + $status_messages->bigPipeNoJsPlaceholder = ''; $status_messages->bigPipeNoJsPlaceholderRenderArray = [ - '#markup' => '', + '#markup' => '', '#cache' => $cacheability_depends_on_session_and_nojs_cookie, '#attached' => [ 'big_pipe_nojs_placeholders' => [ - '' => $status_messages->placeholderRenderArray, + '' => $status_messages->placeholderRenderArray, ], ], ]; @@ -109,7 +109,7 @@ class BigPipePlaceholderTestCases { [ 'command' => 'insert', 'method' => 'replaceWith', - 'selector' => '[data-big-pipe-placeholder-id="callback=Drupal%5CCore%5CRender%5CElement%5CStatusMessages%3A%3ArenderMessages&args[0]&token=_HAdUpwWmet0TOTe2PSiJuMntExoshbm1kh2wQzzzAA"]', + 'selector' => '[data-big-pipe-placeholder-id="callback=Drupal%5CCore%5CRender%5CElement%5CStatusMessages%3A%3ArenderMessages&args%5B0%5D&token=_HAdUpwWmet0TOTe2PSiJuMntExoshbm1kh2wQzzzAA"]', 'data' => "\n" . ' ' . "\n ", 'settings' => NULL, ], @@ -272,24 +272,24 @@ class BigPipePlaceholderTestCases { '#lazy_builder' => ['\Drupal\big_pipe_test\BigPipeTestController::exception', ['llamas', 'suck']], ] ); - $exception->bigPipePlaceholderId = 'callback=%5CDrupal%5Cbig_pipe_test%5CBigPipeTestController%3A%3Aexception&args[0]=llamas&args[1]=suck&token=uhKFNfT4eF449_W-kDQX8E5z4yHyt0-nSHUlwaGAQeU'; + $exception->bigPipePlaceholderId = 'callback=%5CDrupal%5Cbig_pipe_test%5CBigPipeTestController%3A%3Aexception&args%5B0%5D=llamas&args%5B1%5D=suck&token=uhKFNfT4eF449_W-kDQX8E5z4yHyt0-nSHUlwaGAQeU'; $exception->bigPipePlaceholderRenderArray = [ - '#markup' => '', + '#markup' => '', '#cache' => $cacheability_depends_on_session_and_nojs_cookie, '#attached' => [ 'library' => ['big_pipe/big_pipe'], 'drupalSettings' => [ 'bigPipePlaceholderIds' => [ - 'callback=%5CDrupal%5Cbig_pipe_test%5CBigPipeTestController%3A%3Aexception&args[0]=llamas&args[1]=suck&token=uhKFNfT4eF449_W-kDQX8E5z4yHyt0-nSHUlwaGAQeU' => TRUE, + 'callback=%5CDrupal%5Cbig_pipe_test%5CBigPipeTestController%3A%3Aexception&args%5B0%5D=llamas&args%5B1%5D=suck&token=uhKFNfT4eF449_W-kDQX8E5z4yHyt0-nSHUlwaGAQeU' => TRUE, ], ], 'big_pipe_placeholders' => [ - 'callback=%5CDrupal%5Cbig_pipe_test%5CBigPipeTestController%3A%3Aexception&args[0]=llamas&args[1]=suck&token=uhKFNfT4eF449_W-kDQX8E5z4yHyt0-nSHUlwaGAQeU' => $exception->placeholderRenderArray, + 'callback=%5CDrupal%5Cbig_pipe_test%5CBigPipeTestController%3A%3Aexception&args%5B0%5D=llamas&args%5B1%5D=suck&token=uhKFNfT4eF449_W-kDQX8E5z4yHyt0-nSHUlwaGAQeU' => $exception->placeholderRenderArray, ], ], ]; $exception->embeddedAjaxResponseCommands = NULL; - $exception->bigPipeNoJsPlaceholder = ''; + $exception->bigPipeNoJsPlaceholder = ''; $exception->bigPipeNoJsPlaceholderRenderArray = [ '#markup' => $exception->bigPipeNoJsPlaceholder, '#cache' => $cacheability_depends_on_session_and_nojs_cookie, diff --git a/web/core/modules/big_pipe/src/Tests/BigPipeTest.php b/web/core/modules/big_pipe/src/Tests/BigPipeTest.php index 9d2b25734..a4d556200 100644 --- a/web/core/modules/big_pipe/src/Tests/BigPipeTest.php +++ b/web/core/modules/big_pipe/src/Tests/BigPipeTest.php @@ -293,7 +293,7 @@ class BigPipeTest extends WebTestBase { // @see performMetaRefresh() $this->drupalGet(Url::fromRoute('big_pipe_test_multi_occurrence')); - $big_pipe_placeholder_id = 'callback=Drupal%5CCore%5CRender%5CElement%5CStatusMessages%3A%3ArenderMessages&args[0]&token=_HAdUpwWmet0TOTe2PSiJuMntExoshbm1kh2wQzzzAA'; + $big_pipe_placeholder_id = 'callback=Drupal%5CCore%5CRender%5CElement%5CStatusMessages%3A%3ArenderMessages&args%5B0%5D&token=_HAdUpwWmet0TOTe2PSiJuMntExoshbm1kh2wQzzzAA'; $expected_placeholder_replacement = '