summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Pott2016-12-01 11:00:20 (GMT)
committerAlex Pott2016-12-01 11:00:20 (GMT)
commita55b8ef19eb243d383ea93fa6fd3c4ebce97cf03 (patch)
tree52f334c58227f3c532fdf921553eb3619526b509
parent6e26b862dec4a58a3b1896b8466e6e7e2d4bdbaa (diff)
Issue #2712647 by klausi, catch, slasher13, jibran, Manuel Garcia, alexpott, naveenvalecha, neclimdul, dawehner, Wim Leers, pounard: Update Symfony components to ~3.1
-rw-r--r--composer.lock608
-rw-r--r--core/composer.json28
-rw-r--r--core/lib/Drupal/Component/DependencyInjection/Container.php65
-rw-r--r--core/lib/Drupal/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumper.php12
-rw-r--r--core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php11
-rw-r--r--core/lib/Drupal/Component/Serialization/YamlPecl.php7
-rw-r--r--core/lib/Drupal/Component/Serialization/YamlSymfony.php5
-rw-r--r--core/lib/Drupal/Core/DependencyInjection/Container.php5
-rw-r--r--core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php16
-rw-r--r--core/lib/Drupal/Core/DrupalKernel.php62
-rw-r--r--core/lib/Drupal/Core/PageCache/RequestPolicy/CommandLineOrUnsafeMethod.php2
-rw-r--r--core/lib/Drupal/Core/Render/PlaceholderingRenderCache.php4
-rw-r--r--core/lib/Drupal/Core/Render/RenderCache.php8
-rw-r--r--core/lib/Drupal/Core/Render/Renderer.php4
-rw-r--r--core/lib/Drupal/Core/TypedData/Validation/ExecutionContext.php2
-rw-r--r--core/modules/big_pipe/src/Render/Placeholder/BigPipeStrategy.php2
-rw-r--r--core/modules/big_pipe/tests/src/Unit/Render/Placeholder/BigPipeStrategyTest.php2
-rw-r--r--core/modules/block_content/src/Tests/BlockContentCacheTagsTest.php2
-rw-r--r--core/modules/file/config/optional/views.view.files.yml4
-rw-r--r--core/modules/node/node.module2
-rw-r--r--core/modules/rest/src/EventSubscriber/ResourceResponseSubscriber.php2
-rw-r--r--core/modules/rest/tests/src/Unit/CollectRoutesTest.php4
-rw-r--r--core/modules/rest/tests/src/Unit/EventSubscriber/ResourceResponseSubscriberTest.php42
-rw-r--r--core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php2
-rw-r--r--core/modules/system/tests/modules/theme_test/src/EventSubscriber/ThemeTestSubscriber.php3
-rw-r--r--core/tests/Drupal/Tests/Component/DependencyInjection/ContainerTest.php41
-rw-r--r--core/tests/Drupal/Tests/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumperTest.php26
-rw-r--r--core/tests/Drupal/Tests/Component/EventDispatcher/ContainerAwareEventDispatcherTest.php7
-rw-r--r--core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php5
-rw-r--r--core/tests/Drupal/Tests/Core/EventSubscriber/DefaultExceptionSubscriberTest.php5
30 files changed, 334 insertions, 654 deletions
diff --git a/composer.lock b/composer.lock
index 8e3de74..17ab6fa 100644
--- a/composer.lock
+++ b/composer.lock
@@ -891,48 +891,6 @@
"time": "2016-06-24 23:00:38"
},
{
- "name": "ircmaxell/password-compat",
- "version": "v1.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/ircmaxell/password_compat.git",
- "reference": "5c5cde8822a69545767f7c7f3058cb15ff84614c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/ircmaxell/password_compat/zipball/5c5cde8822a69545767f7c7f3058cb15ff84614c",
- "reference": "5c5cde8822a69545767f7c7f3058cb15ff84614c",
- "shasum": ""
- },
- "require-dev": {
- "phpunit/phpunit": "4.*"
- },
- "type": "library",
- "autoload": {
- "files": [
- "lib/password.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Anthony Ferrara",
- "email": "ircmaxell@php.net",
- "homepage": "http://blog.ircmaxell.com"
- }
- ],
- "description": "A compatibility library for the proposed simplified password hashing algorithm: https://wiki.php.net/rfc/password_hash",
- "homepage": "https://github.com/ircmaxell/password_compat",
- "keywords": [
- "hashing",
- "password"
- ],
- "time": "2014-11-20 16:49:30"
- },
- {
"name": "masterminds/html5",
"version": "2.2.1",
"source": {
@@ -1242,29 +1200,32 @@
},
{
"name": "symfony/class-loader",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/class-loader.git",
- "reference": "7d362c22710980730d46a5d039e788946a2938cb"
+ "reference": "61de6c27f9d4efe988ea8274f19c2d4e331dd4e4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/class-loader/zipball/7d362c22710980730d46a5d039e788946a2938cb",
- "reference": "7d362c22710980730d46a5d039e788946a2938cb",
+ "url": "https://api.github.com/repos/symfony/class-loader/zipball/61de6c27f9d4efe988ea8274f19c2d4e331dd4e4",
+ "reference": "61de6c27f9d4efe988ea8274f19c2d4e331dd4e4",
"shasum": ""
},
"require": {
- "php": ">=5.3.9",
- "symfony/polyfill-apcu": "~1.1"
+ "php": ">=5.5.9"
},
"require-dev": {
- "symfony/finder": "~2.0,>=2.0.5|~3.0.0"
+ "symfony/finder": "~2.8|~3.0",
+ "symfony/polyfill-apcu": "~1.1"
+ },
+ "suggest": {
+ "symfony/polyfill-apcu": "For using ApcClassLoader on HHVM"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -1291,30 +1252,31 @@
],
"description": "Symfony ClassLoader Component",
"homepage": "https://symfony.com",
- "time": "2016-03-10 19:33:53"
+ "time": "2016-11-15 12:07:16"
},
{
"name": "symfony/console",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "9a5aef5fc0d4eff86853d44202b02be8d5a20154"
+ "reference": "5be36e1f3ac7ecbe7e34fb641480ad8497b83aa6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/9a5aef5fc0d4eff86853d44202b02be8d5a20154",
- "reference": "9a5aef5fc0d4eff86853d44202b02be8d5a20154",
+ "url": "https://api.github.com/repos/symfony/console/zipball/5be36e1f3ac7ecbe7e34fb641480ad8497b83aa6",
+ "reference": "5be36e1f3ac7ecbe7e34fb641480ad8497b83aa6",
"shasum": ""
},
"require": {
- "php": ">=5.3.9",
+ "php": ">=5.5.9",
+ "symfony/debug": "~2.8|~3.0",
"symfony/polyfill-mbstring": "~1.0"
},
"require-dev": {
"psr/log": "~1.0",
- "symfony/event-dispatcher": "~2.1|~3.0.0",
- "symfony/process": "~2.1|~3.0.0"
+ "symfony/event-dispatcher": "~2.8|~3.0",
+ "symfony/process": "~2.8|~3.0"
},
"suggest": {
"psr/log": "For using the console logger",
@@ -1324,7 +1286,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -1351,43 +1313,46 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
- "time": "2016-03-17 09:19:04"
+ "time": "2016-11-16 22:17:09"
},
{
"name": "symfony/debug",
- "version": "v2.7.6",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/debug.git",
- "reference": "fb9e6887db716939f41af0ba8ef38a1582eb501b"
+ "reference": "c058661c32f5b462722e36d120905940089cbd9a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/fb9e6887db716939f41af0ba8ef38a1582eb501b",
- "reference": "fb9e6887db716939f41af0ba8ef38a1582eb501b",
+ "url": "https://api.github.com/repos/symfony/debug/zipball/c058661c32f5b462722e36d120905940089cbd9a",
+ "reference": "c058661c32f5b462722e36d120905940089cbd9a",
"shasum": ""
},
"require": {
- "php": ">=5.3.9",
+ "php": ">=5.5.9",
"psr/log": "~1.0"
},
"conflict": {
"symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
},
"require-dev": {
- "symfony/class-loader": "~2.2",
- "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2"
+ "symfony/class-loader": "~2.8|~3.0",
+ "symfony/http-kernel": "~2.8|~3.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.7-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
"psr-4": {
"Symfony\\Component\\Debug\\": ""
- }
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -1405,42 +1370,40 @@
],
"description": "Symfony Debug Component",
"homepage": "https://symfony.com",
- "time": "2015-10-11 09:39:48"
+ "time": "2016-11-15 12:55:20"
},
{
"name": "symfony/dependency-injection",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/dependency-injection.git",
- "reference": "f7b4a498e679fa440b16facb934680a1527ed48c"
+ "reference": "87598e21bb9020bd9ccd6df6936b9c369c72775d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/f7b4a498e679fa440b16facb934680a1527ed48c",
- "reference": "f7b4a498e679fa440b16facb934680a1527ed48c",
+ "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/87598e21bb9020bd9ccd6df6936b9c369c72775d",
+ "reference": "87598e21bb9020bd9ccd6df6936b9c369c72775d",
"shasum": ""
},
"require": {
- "php": ">=5.3.9"
- },
- "conflict": {
- "symfony/expression-language": "<2.6"
+ "php": ">=5.5.9"
},
"require-dev": {
- "symfony/config": "~2.2|~3.0.0",
- "symfony/expression-language": "~2.6|~3.0.0",
- "symfony/yaml": "~2.1|~3.0.0"
+ "symfony/config": "~2.8|~3.0",
+ "symfony/expression-language": "~2.8|~3.0",
+ "symfony/yaml": "~2.8.7|~3.0.7|~3.1.1|~3.2"
},
"suggest": {
"symfony/config": "",
+ "symfony/expression-language": "For using expressions in service container configuration",
"symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
"symfony/yaml": ""
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -1467,28 +1430,28 @@
],
"description": "Symfony DependencyInjection Component",
"homepage": "https://symfony.com",
- "time": "2016-03-21 07:27:21"
+ "time": "2016-11-18 21:15:08"
},
{
"name": "symfony/dom-crawler",
- "version": "v2.8.13",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/dom-crawler.git",
- "reference": "a94f3fe6f179d6453e5ed8188cf4bfdf933d85f4"
+ "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/a94f3fe6f179d6453e5ed8188cf4bfdf933d85f4",
- "reference": "a94f3fe6f179d6453e5ed8188cf4bfdf933d85f4",
+ "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
+ "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
"shasum": ""
},
"require": {
- "php": ">=5.3.9",
+ "php": ">=5.5.9",
"symfony/polyfill-mbstring": "~1.0"
},
"require-dev": {
- "symfony/css-selector": "~2.8|~3.0.0"
+ "symfony/css-selector": "~2.8|~3.0"
},
"suggest": {
"symfony/css-selector": ""
@@ -1496,7 +1459,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -1523,31 +1486,31 @@
],
"description": "Symfony DomCrawler Component",
"homepage": "https://symfony.com",
- "time": "2016-10-18 15:35:45"
+ "time": "2016-11-14 16:20:02"
},
{
"name": "symfony/event-dispatcher",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "47d2d8cade9b1c3987573d2943bb9352536cdb87"
+ "reference": "28b0832b2553ffb80cabef6a7a812ff1e670c0bc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/47d2d8cade9b1c3987573d2943bb9352536cdb87",
- "reference": "47d2d8cade9b1c3987573d2943bb9352536cdb87",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/28b0832b2553ffb80cabef6a7a812ff1e670c0bc",
+ "reference": "28b0832b2553ffb80cabef6a7a812ff1e670c0bc",
"shasum": ""
},
"require": {
- "php": ">=5.3.9"
+ "php": ">=5.5.9"
},
"require-dev": {
"psr/log": "~1.0",
- "symfony/config": "~2.0,>=2.0.5|~3.0.0",
- "symfony/dependency-injection": "~2.6|~3.0.0",
- "symfony/expression-language": "~2.6|~3.0.0",
- "symfony/stopwatch": "~2.3|~3.0.0"
+ "symfony/config": "~2.8|~3.0",
+ "symfony/dependency-injection": "~2.8|~3.0",
+ "symfony/expression-language": "~2.8|~3.0",
+ "symfony/stopwatch": "~2.8|~3.0"
},
"suggest": {
"symfony/dependency-injection": "",
@@ -1556,7 +1519,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -1583,35 +1546,33 @@
],
"description": "Symfony EventDispatcher Component",
"homepage": "https://symfony.com",
- "time": "2016-03-07 14:04:32"
+ "time": "2016-10-13 06:28:43"
},
{
"name": "symfony/http-foundation",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
- "reference": "06d6b2c755b2f34ce21e688b62072e9c625709c4"
+ "reference": "5a4c8099a1547fe451256e056180ad4624177017"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/06d6b2c755b2f34ce21e688b62072e9c625709c4",
- "reference": "06d6b2c755b2f34ce21e688b62072e9c625709c4",
+ "url": "https://api.github.com/repos/symfony/http-foundation/zipball/5a4c8099a1547fe451256e056180ad4624177017",
+ "reference": "5a4c8099a1547fe451256e056180ad4624177017",
"shasum": ""
},
"require": {
- "php": ">=5.3.9",
- "symfony/polyfill-mbstring": "~1.1",
- "symfony/polyfill-php54": "~1.0",
- "symfony/polyfill-php55": "~1.0"
+ "php": ">=5.5.9",
+ "symfony/polyfill-mbstring": "~1.1"
},
"require-dev": {
- "symfony/expression-language": "~2.4|~3.0.0"
+ "symfony/expression-language": "~2.8|~3.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -1638,48 +1599,48 @@
],
"description": "Symfony HttpFoundation Component",
"homepage": "https://symfony.com",
- "time": "2016-03-27 12:57:53"
+ "time": "2016-11-16 22:17:09"
},
{
"name": "symfony/http-kernel",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "2c45576fee2eb228d4771342a05b0565e4711ba2"
+ "reference": "674ac403c7b3742c2a988a86e3baf9aca2c696a0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/2c45576fee2eb228d4771342a05b0565e4711ba2",
- "reference": "2c45576fee2eb228d4771342a05b0565e4711ba2",
+ "url": "https://api.github.com/repos/symfony/http-kernel/zipball/674ac403c7b3742c2a988a86e3baf9aca2c696a0",
+ "reference": "674ac403c7b3742c2a988a86e3baf9aca2c696a0",
"shasum": ""
},
"require": {
- "php": ">=5.3.9",
+ "php": ">=5.5.9",
"psr/log": "~1.0",
- "symfony/debug": "~2.6,>=2.6.2",
- "symfony/event-dispatcher": "~2.6,>=2.6.7|~3.0.0",
- "symfony/http-foundation": "~2.5,>=2.5.4|~3.0.0"
+ "symfony/debug": "~2.8|~3.0",
+ "symfony/event-dispatcher": "~2.8|~3.0",
+ "symfony/http-foundation": "~2.8.13|~3.1.6|~3.2"
},
"conflict": {
- "symfony/config": "<2.7"
+ "symfony/config": "<2.8"
},
"require-dev": {
- "symfony/browser-kit": "~2.3|~3.0.0",
- "symfony/class-loader": "~2.1|~3.0.0",
- "symfony/config": "~2.8",
- "symfony/console": "~2.3|~3.0.0",
- "symfony/css-selector": "~2.0,>=2.0.5|~3.0.0",
- "symfony/dependency-injection": "~2.8|~3.0.0",
- "symfony/dom-crawler": "~2.0,>=2.0.5|~3.0.0",
- "symfony/expression-language": "~2.4|~3.0.0",
- "symfony/finder": "~2.0,>=2.0.5|~3.0.0",
- "symfony/process": "~2.0,>=2.0.5|~3.0.0",
- "symfony/routing": "~2.8|~3.0.0",
- "symfony/stopwatch": "~2.3|~3.0.0",
- "symfony/templating": "~2.2|~3.0.0",
- "symfony/translation": "~2.0,>=2.0.5|~3.0.0",
- "symfony/var-dumper": "~2.6|~3.0.0"
+ "symfony/browser-kit": "~2.8|~3.0",
+ "symfony/class-loader": "~2.8|~3.0",
+ "symfony/config": "~2.8|~3.0",
+ "symfony/console": "~2.8|~3.0",
+ "symfony/css-selector": "~2.8|~3.0",
+ "symfony/dependency-injection": "~2.8|~3.0",
+ "symfony/dom-crawler": "~2.8|~3.0",
+ "symfony/expression-language": "~2.8|~3.0",
+ "symfony/finder": "~2.8|~3.0",
+ "symfony/process": "~2.8|~3.0",
+ "symfony/routing": "~2.8|~3.0",
+ "symfony/stopwatch": "~2.8|~3.0",
+ "symfony/templating": "~2.8|~3.0",
+ "symfony/translation": "~2.8|~3.0",
+ "symfony/var-dumper": "~2.8|~3.0"
},
"suggest": {
"symfony/browser-kit": "",
@@ -1693,7 +1654,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -1720,73 +1681,20 @@
],
"description": "Symfony HttpKernel Component",
"homepage": "https://symfony.com",
- "time": "2016-03-25 01:40:30"
- },
- {
- "name": "symfony/polyfill-apcu",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-apcu.git",
- "reference": "0c901e4e65a2f7ece68f0fd249b56d6ad3adc214"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-apcu/zipball/0c901e4e65a2f7ece68f0fd249b56d6ad3adc214",
- "reference": "0c901e4e65a2f7ece68f0fd249b56d6ad3adc214",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1-dev"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill backporting apcu_* functions to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "apcu",
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "time": "2016-03-03 16:49:40"
+ "time": "2016-11-21 02:44:20"
},
{
"name": "symfony/polyfill-iconv",
- "version": "v1.1.1",
+ "version": "v1.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-iconv.git",
- "reference": "08e3b8768d785ba7f271ef94906d50f7efe72ce8"
+ "reference": "cba36f3616d9866b3e52662e88da5c090fac1e97"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/08e3b8768d785ba7f271ef94906d50f7efe72ce8",
- "reference": "08e3b8768d785ba7f271ef94906d50f7efe72ce8",
+ "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/cba36f3616d9866b3e52662e88da5c090fac1e97",
+ "reference": "cba36f3616d9866b3e52662e88da5c090fac1e97",
"shasum": ""
},
"require": {
@@ -1798,7 +1706,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.1-dev"
+ "dev-master": "1.3-dev"
}
},
"autoload": {
@@ -1832,20 +1740,20 @@
"portable",
"shim"
],
- "time": "2016-02-26 11:31:02"
+ "time": "2016-11-14 01:06:16"
},
{
"name": "symfony/polyfill-mbstring",
- "version": "v1.1.0",
+ "version": "v1.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "1289d16209491b584839022f29257ad859b8532d"
+ "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/1289d16209491b584839022f29257ad859b8532d",
- "reference": "1289d16209491b584839022f29257ad859b8532d",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
+ "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
"shasum": ""
},
"require": {
@@ -1857,7 +1765,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.1-dev"
+ "dev-master": "1.3-dev"
}
},
"autoload": {
@@ -1891,143 +1799,29 @@
"portable",
"shim"
],
- "time": "2016-01-20 09:13:37"
- },
- {
- "name": "symfony/polyfill-php54",
- "version": "v1.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php54.git",
- "reference": "74663d5a2ff3c530c1bc0571500e0feec9094054"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php54/zipball/74663d5a2ff3c530c1bc0571500e0feec9094054",
- "reference": "74663d5a2ff3c530c1bc0571500e0feec9094054",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Polyfill\\Php54\\": ""
- },
- "files": [
- "bootstrap.php"
- ],
- "classmap": [
- "Resources/stubs"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill backporting some PHP 5.4+ features to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "time": "2016-01-20 09:13:37"
- },
- {
- "name": "symfony/polyfill-php55",
- "version": "v1.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php55.git",
- "reference": "b4f3f07d91702f8f926339fc4fcf81671d8c27e6"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php55/zipball/b4f3f07d91702f8f926339fc4fcf81671d8c27e6",
- "reference": "b4f3f07d91702f8f926339fc4fcf81671d8c27e6",
- "shasum": ""
- },
- "require": {
- "ircmaxell/password-compat": "~1.0",
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Polyfill\\Php55\\": ""
- },
- "files": [
- "bootstrap.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill backporting some PHP 5.5+ features to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "time": "2016-01-20 09:13:37"
+ "time": "2016-11-14 01:06:16"
},
{
"name": "symfony/process",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "fb467471952ef5cf8497c029980e556b47545333"
+ "reference": "66de154ae86b1a07001da9fbffd620206e4faf94"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/fb467471952ef5cf8497c029980e556b47545333",
- "reference": "fb467471952ef5cf8497c029980e556b47545333",
+ "url": "https://api.github.com/repos/symfony/process/zipball/66de154ae86b1a07001da9fbffd620206e4faf94",
+ "reference": "66de154ae86b1a07001da9fbffd620206e4faf94",
"shasum": ""
},
"require": {
- "php": ">=5.3.9"
+ "php": ">=5.5.9"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -2054,7 +1848,7 @@
],
"description": "Symfony Process Component",
"homepage": "https://symfony.com",
- "time": "2016-03-23 13:11:46"
+ "time": "2016-09-29 14:13:09"
},
{
"name": "symfony/psr-http-message-bridge",
@@ -2112,32 +1906,32 @@
},
{
"name": "symfony/routing",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
- "reference": "d7d4a20cb55a90a06c0070d1a360e5ac606306ef"
+ "reference": "8edf62498a1a4c57ba317664a4b698339c10cdf6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/d7d4a20cb55a90a06c0070d1a360e5ac606306ef",
- "reference": "d7d4a20cb55a90a06c0070d1a360e5ac606306ef",
+ "url": "https://api.github.com/repos/symfony/routing/zipball/8edf62498a1a4c57ba317664a4b698339c10cdf6",
+ "reference": "8edf62498a1a4c57ba317664a4b698339c10cdf6",
"shasum": ""
},
"require": {
- "php": ">=5.3.9"
+ "php": ">=5.5.9"
},
"conflict": {
- "symfony/config": "<2.7"
+ "symfony/config": "<2.8"
},
"require-dev": {
"doctrine/annotations": "~1.0",
"doctrine/common": "~2.2",
"psr/log": "~1.0",
- "symfony/config": "~2.7|~3.0.0",
- "symfony/expression-language": "~2.4|~3.0.0",
- "symfony/http-foundation": "~2.3|~3.0.0",
- "symfony/yaml": "~2.0,>=2.0.5|~3.0.0"
+ "symfony/config": "~2.8|~3.0",
+ "symfony/expression-language": "~2.8|~3.0",
+ "symfony/http-foundation": "~2.8|~3.0",
+ "symfony/yaml": "~2.8|~3.0"
},
"suggest": {
"doctrine/annotations": "For using the annotation loader",
@@ -2150,7 +1944,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -2183,44 +1977,53 @@
"uri",
"url"
],
- "time": "2016-03-23 13:11:46"
+ "time": "2016-08-16 14:58:24"
},
{
"name": "symfony/serializer",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/serializer.git",
- "reference": "e848750ceffdc4af374844c338c299627a98196a"
+ "reference": "e57bb526736d4df8b1a1a998026aefe92f10d780"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/serializer/zipball/e848750ceffdc4af374844c338c299627a98196a",
- "reference": "e848750ceffdc4af374844c338c299627a98196a",
+ "url": "https://api.github.com/repos/symfony/serializer/zipball/e57bb526736d4df8b1a1a998026aefe92f10d780",
+ "reference": "e57bb526736d4df8b1a1a998026aefe92f10d780",
"shasum": ""
},
"require": {
- "php": ">=5.3.9",
- "symfony/polyfill-php55": "~1.0"
+ "php": ">=5.5.9"
+ },
+ "conflict": {
+ "symfony/property-access": ">=3.0,<3.0.4|>=2.8,<2.8.4"
},
"require-dev": {
"doctrine/annotations": "~1.0",
"doctrine/cache": "~1.0",
- "symfony/config": "~2.2|~3.0.0",
- "symfony/property-access": "~2.3|~3.0.0",
- "symfony/yaml": "~2.0,>=2.0.5|~3.0.0"
+ "phpdocumentor/reflection-docblock": "~3.0",
+ "symfony/cache": "~3.1",
+ "symfony/config": "~2.8|~3.0",
+ "symfony/http-foundation": "~2.8|~3.0",
+ "symfony/property-access": "~2.8|~3.0",
+ "symfony/property-info": "~3.1",
+ "symfony/yaml": "~2.8|~3.0"
},
"suggest": {
"doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
"doctrine/cache": "For using the default cached annotation reader and metadata cache.",
+ "psr/cache-implementation": "For using the metadata cache.",
"symfony/config": "For using the XML mapping loader.",
+ "symfony/http-foundation": "To use the DataUriNormalizer.",
"symfony/property-access": "For using the ObjectNormalizer.",
+ "symfony/property-info": "To deserialize relations.",
"symfony/yaml": "For using the default YAML mapping loader."
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -2247,34 +2050,34 @@
],
"description": "Symfony Serializer Component",
"homepage": "https://symfony.com",
- "time": "2016-03-07 14:04:32"
+ "time": "2016-11-15 07:36:22"
},
{
"name": "symfony/translation",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation.git",
- "reference": "d60b8e076d22953aabebeebda53bf334438e7aca"
+ "reference": "2f4b6114b75c506dd1ee7eb485b35facbcb2d873"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation/zipball/d60b8e076d22953aabebeebda53bf334438e7aca",
- "reference": "d60b8e076d22953aabebeebda53bf334438e7aca",
+ "url": "https://api.github.com/repos/symfony/translation/zipball/2f4b6114b75c506dd1ee7eb485b35facbcb2d873",
+ "reference": "2f4b6114b75c506dd1ee7eb485b35facbcb2d873",
"shasum": ""
},
"require": {
- "php": ">=5.3.9",
+ "php": ">=5.5.9",
"symfony/polyfill-mbstring": "~1.0"
},
"conflict": {
- "symfony/config": "<2.7"
+ "symfony/config": "<2.8"
},
"require-dev": {
"psr/log": "~1.0",
- "symfony/config": "~2.8",
- "symfony/intl": "~2.4|~3.0.0",
- "symfony/yaml": "~2.2|~3.0.0"
+ "symfony/config": "~2.8|~3.0",
+ "symfony/intl": "~2.8|~3.0",
+ "symfony/yaml": "~2.8|~3.0"
},
"suggest": {
"psr/log": "To use logging capability in translator",
@@ -2284,7 +2087,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -2311,52 +2114,54 @@
],
"description": "Symfony Translation Component",
"homepage": "https://symfony.com",
- "time": "2016-03-25 01:40:30"
+ "time": "2016-11-18 21:15:08"
},
{
"name": "symfony/validator",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/validator.git",
- "reference": "ea0ce99531c9eb82abf21011da4e111932f8ce81"
+ "reference": "5ba95c69918d98c5691c913ffab3ab1200e1441d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/validator/zipball/ea0ce99531c9eb82abf21011da4e111932f8ce81",
- "reference": "ea0ce99531c9eb82abf21011da4e111932f8ce81",
+ "url": "https://api.github.com/repos/symfony/validator/zipball/5ba95c69918d98c5691c913ffab3ab1200e1441d",
+ "reference": "5ba95c69918d98c5691c913ffab3ab1200e1441d",
"shasum": ""
},
"require": {
- "php": ">=5.3.9",
- "symfony/translation": "~2.4|~3.0.0"
+ "php": ">=5.5.9",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/translation": "~2.8|~3.0"
},
"require-dev": {
"doctrine/annotations": "~1.0",
"doctrine/cache": "~1.0",
"egulias/email-validator": "~1.2,>=1.2.1",
- "symfony/config": "~2.2|~3.0.0",
- "symfony/expression-language": "~2.4|~3.0.0",
- "symfony/http-foundation": "~2.1|~3.0.0",
- "symfony/intl": "~2.7.4|~2.8|~3.0.0",
- "symfony/property-access": "~2.3|~3.0.0",
- "symfony/yaml": "~2.0,>=2.0.5|~3.0.0"
+ "symfony/cache": "~3.1",
+ "symfony/config": "~2.8|~3.0",
+ "symfony/expression-language": "~2.8|~3.0",
+ "symfony/http-foundation": "~2.8|~3.0",
+ "symfony/intl": "~2.8|~3.0",
+ "symfony/yaml": "~2.8|~3.0"
},
"suggest": {
"doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
"doctrine/cache": "For using the default cached annotation reader and metadata cache.",
"egulias/email-validator": "Strict (RFC compliant) email validation",
+ "psr/cache-implementation": "For using the metadata cache.",
"symfony/config": "",
- "symfony/expression-language": "For using the 2.4 Expression validator",
+ "symfony/expression-language": "For using the Expression validator",
"symfony/http-foundation": "",
"symfony/intl": "",
- "symfony/property-access": "For using the 2.4 Validator API",
+ "symfony/property-access": "For using the Expression validator",
"symfony/yaml": ""
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -2383,29 +2188,29 @@
],
"description": "Symfony Validator Component",
"homepage": "https://symfony.com",
- "time": "2016-03-27 12:57:53"
+ "time": "2016-11-18 21:15:08"
},
{
"name": "symfony/yaml",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "584e52cb8f788a887553ba82db6caacb1d6260bb"
+ "reference": "9da375317228e54f4ea1b013b30fa47417e84943"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/584e52cb8f788a887553ba82db6caacb1d6260bb",
- "reference": "584e52cb8f788a887553ba82db6caacb1d6260bb",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/9da375317228e54f4ea1b013b30fa47417e84943",
+ "reference": "9da375317228e54f4ea1b013b30fa47417e84943",
"shasum": ""
},
"require": {
- "php": ">=5.3.9"
+ "php": ">=5.5.9"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -2432,7 +2237,7 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
- "time": "2016-03-04 07:54:35"
+ "time": "2016-11-18 21:05:29"
},
{
"name": "twig/twig",
@@ -4099,25 +3904,25 @@
},
{
"name": "symfony/browser-kit",
- "version": "v2.7.6",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/browser-kit.git",
- "reference": "07d664a052572ccc28eb2ab7dbbe82155b1ad367"
+ "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/07d664a052572ccc28eb2ab7dbbe82155b1ad367",
- "reference": "07d664a052572ccc28eb2ab7dbbe82155b1ad367",
+ "url": "https://api.github.com/repos/symfony/browser-kit/zipball/901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
+ "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
"shasum": ""
},
"require": {
- "php": ">=5.3.9",
- "symfony/dom-crawler": "~2.0,>=2.0.5"
+ "php": ">=5.5.9",
+ "symfony/dom-crawler": "~2.8|~3.0"
},
"require-dev": {
- "symfony/css-selector": "~2.0,>=2.0.5",
- "symfony/process": "~2.3.34|~2.7,>=2.7.6"
+ "symfony/css-selector": "~2.8|~3.0",
+ "symfony/process": "~2.8|~3.0"
},
"suggest": {
"symfony/process": ""
@@ -4125,13 +3930,16 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.7-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
"psr-4": {
"Symfony\\Component\\BrowserKit\\": ""
- }
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -4149,29 +3957,29 @@
],
"description": "Symfony BrowserKit Component",
"homepage": "https://symfony.com",
- "time": "2015-10-23 14:47:27"
+ "time": "2016-09-06 11:02:40"
},
{
"name": "symfony/css-selector",
- "version": "v2.8.4",
+ "version": "v3.1.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
- "reference": "07b7ced3ae0c12918477c095453ea8595000810e"
+ "reference": "a37b3359566415a91cba55a2d95820b3fa1a9658"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/07b7ced3ae0c12918477c095453ea8595000810e",
- "reference": "07b7ced3ae0c12918477c095453ea8595000810e",
+ "url": "https://api.github.com/repos/symfony/css-selector/zipball/a37b3359566415a91cba55a2d95820b3fa1a9658",
+ "reference": "a37b3359566415a91cba55a2d95820b3fa1a9658",
"shasum": ""
},
"require": {
- "php": ">=5.3.9"
+ "php": ">=5.5.9"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.8-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -4202,7 +4010,7 @@
],
"description": "Symfony CssSelector Component",
"homepage": "https://symfony.com",
- "time": "2016-03-04 07:54:35"
+ "time": "2016-11-03 08:04:31"
}
],
"aliases": [],
diff --git a/core/composer.json b/core/composer.json
index 7ae0ccf..4d9024d 100644
--- a/core/composer.json
+++ b/core/composer.json
@@ -5,20 +5,20 @@
"license": "GPL-2.0+",
"require": {
"php": ">=5.5.9",
- "symfony/class-loader": "~2.8",
- "symfony/console": "~2.8",
- "symfony/dependency-injection": "~2.8",
- "symfony/dom-crawler": ">=2.8.13 <3.0",
- "symfony/event-dispatcher": "~2.8",
- "symfony/http-foundation": "~2.8",
- "symfony/http-kernel": "~2.8",
- "symfony/routing": "~2.8",
- "symfony/serializer": "~2.8",
- "symfony/translation": "~2.8",
- "symfony/validator": "~2.8",
- "symfony/process": "~2.8",
+ "symfony/class-loader": "~3.1",
+ "symfony/console": "~3.1",
+ "symfony/dependency-injection": "~3.1",
+ "symfony/dom-crawler": ">=3.1.6 <4.0",
+ "symfony/event-dispatcher": "~3.1",
+ "symfony/http-foundation": ">=3.1.6 <4.0",
+ "symfony/http-kernel": "~3.1",
+ "symfony/routing": "~3.1",
+ "symfony/serializer": "~3.1",
+ "symfony/translation": "~3.1",
+ "symfony/validator": "~3.1",
+ "symfony/process": "~3.1",
"symfony/polyfill-iconv": "~1.0",
- "symfony/yaml": "~2.8",
+ "symfony/yaml": "~3.1",
"twig/twig": "^1.23.1",
"doctrine/common": "2.5.*",
"doctrine/annotations": "1.2.*",
@@ -42,7 +42,7 @@
"jcalderonzumba/mink-phantomjs-driver": "~0.3.1",
"mikey179/vfsStream": "~1.2",
"phpunit/phpunit": "~4.8",
- "symfony/css-selector": "~2.8"
+ "symfony/css-selector": "~3.1"
},
"replace": {
"drupal/action": "self.version",
diff --git a/core/lib/Drupal/Component/DependencyInjection/Container.php b/core/lib/Drupal/Component/DependencyInjection/Container.php
index 452a2c8..6fde12d 100644
--- a/core/lib/Drupal/Component/DependencyInjection/Container.php
+++ b/core/lib/Drupal/Component/DependencyInjection/Container.php
@@ -3,9 +3,7 @@
namespace Drupal\Component\DependencyInjection;
use Symfony\Component\DependencyInjection\ContainerInterface;
-use Symfony\Component\DependencyInjection\IntrospectableContainerInterface;
use Symfony\Component\DependencyInjection\ResettableContainerInterface;
-use Symfony\Component\DependencyInjection\ScopeInterface;
use Symfony\Component\DependencyInjection\Exception\LogicException;
use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
use Symfony\Component\DependencyInjection\Exception\RuntimeException;
@@ -50,7 +48,7 @@ use Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceExce
*
* @ingroup container
*/
-class Container implements IntrospectableContainerInterface, ResettableContainerInterface {
+class Container implements ContainerInterface, ResettableContainerInterface {
/**
* The parameters of the container.
@@ -361,11 +359,7 @@ class Container implements IntrospectableContainerInterface, ResettableContainer
/**
* {@inheritdoc}
*/
- public function set($id, $service, $scope = ContainerInterface::SCOPE_CONTAINER) {
- if (!in_array($scope, array('container', 'request')) || ('request' === $scope && 'request' !== $id)) {
- @trigger_error('The concept of container scopes is deprecated since version 2.8 and will be removed in 3.0. Omit the third parameter.', E_USER_DEPRECATED);
- }
-
+ public function set($id, $service) {
$this->services[$id] = $service;
}
@@ -587,61 +581,6 @@ class Container implements IntrospectableContainerInterface, ResettableContainer
return $this->getAlternatives($name, array_keys($this->parameters));
}
-
- /**
- * {@inheritdoc}
- */
- public function enterScope($name) {
- if ('request' !== $name) {
- @trigger_error('The ' . __METHOD__ . ' method is deprecated since version 2.8 and will be removed in 3.0.', E_USER_DEPRECATED);
- }
-
- throw new \BadMethodCallException(sprintf("'%s' is not supported by Drupal 8.", __FUNCTION__));
- }
-
- /**
- * {@inheritdoc}
- */
- public function leaveScope($name) {
- if ('request' !== $name) {
- @trigger_error('The ' . __METHOD__ . ' method is deprecated since version 2.8 and will be removed in 3.0.', E_USER_DEPRECATED);
- }
-
- throw new \BadMethodCallException(sprintf("'%s' is not supported by Drupal 8.", __FUNCTION__));
- }
-
- /**
- * {@inheritdoc}
- */
- public function addScope(ScopeInterface $scope) {
-
- $name = $scope->getName();
- if ('request' !== $name) {
- @trigger_error('The ' . __METHOD__ . ' method is deprecated since version 2.8 and will be removed in 3.0.', E_USER_DEPRECATED);
- }
- throw new \BadMethodCallException(sprintf("'%s' is not supported by Drupal 8.", __FUNCTION__));
- }
-
- /**
- * {@inheritdoc}
- */
- public function hasScope($name) {
- if ('request' !== $name) {
- @trigger_error('The ' . __METHOD__ . ' method is deprecated since version 2.8 and will be removed in 3.0.', E_USER_DEPRECATED);
- }
-
- throw new \BadMethodCallException(sprintf("'%s' is not supported by Drupal 8.", __FUNCTION__));
- }
-
- /**
- * {@inheritdoc}
- */
- public function isScopeActive($name) {
- @trigger_error('The ' . __METHOD__ . ' method is deprecated since version 2.8 and will be removed in 3.0.', E_USER_DEPRECATED);
-
- throw new \BadMethodCallException(sprintf("'%s' is not supported by Drupal 8.", __FUNCTION__));
- }
-
/**
* Gets all defined service IDs.
*
diff --git a/core/lib/Drupal/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumper.php b/core/lib/Drupal/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumper.php
index 984ec50..0a719d2 100644
--- a/core/lib/Drupal/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumper.php
+++ b/core/lib/Drupal/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumper.php
@@ -236,18 +236,6 @@ class OptimizedPhpArrayDumper extends Dumper {
$service['calls'] = $this->dumpMethodCalls($definition->getMethodCalls());
}
- if (($scope = $definition->getScope()) !== ContainerInterface::SCOPE_CONTAINER) {
- if ($scope === ContainerInterface::SCOPE_PROTOTYPE) {
- // Scope prototype has been replaced with 'shared' => FALSE.
- // This is a Symfony 2.8 forward compatibility fix.
- // Reference: https://github.com/symfony/symfony/blob/2.8/UPGRADE-2.8.md#dependencyinjection
- $service['shared'] = FALSE;
- }
- else {
- throw new InvalidArgumentException("The 'scope' definition is deprecated in Symfony 3.0 and not supported by Drupal 8.");
- }
- }
-
// By default services are shared, so just provide the flag, when needed.
if ($definition->isShared() === FALSE) {
$service['shared'] = $definition->isShared();
diff --git a/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php b/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php
index a933b06..dcd724d 100644
--- a/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php
+++ b/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php
@@ -2,7 +2,7 @@
namespace Drupal\Component\EventDispatcher;
-use Symfony\Component\DependencyInjection\IntrospectableContainerInterface;
+use Symfony\Component\DependencyInjection\ContainerInterface;
use Symfony\Component\EventDispatcher\Event;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
@@ -36,7 +36,7 @@ class ContainerAwareEventDispatcher implements EventDispatcherInterface {
/**
* The service container.
*
- * @var \Symfony\Component\DependencyInjection\IntrospectableContainerInterface;
+ * @var \Symfony\Component\DependencyInjection\ContainerInterface;
*/
protected $container;
@@ -66,7 +66,7 @@ class ContainerAwareEventDispatcher implements EventDispatcherInterface {
/**
* Constructs a container aware event dispatcher.
*
- * @param \Symfony\Component\DependencyInjection\IntrospectableContainerInterface $container
+ * @param \Symfony\Component\DependencyInjection\ContainerInterface $container
* The service container.
* @param array $listeners
* A nested array of listener definitions keyed by event name and priority.
@@ -77,7 +77,7 @@ class ContainerAwareEventDispatcher implements EventDispatcherInterface {
* A service entry will be resolved to a callable only just before its
* invocation.
*/
- public function __construct(IntrospectableContainerInterface $container, array $listeners = []) {
+ public function __construct(ContainerInterface $container, array $listeners = []) {
$this->container = $container;
$this->listeners = $listeners;
$this->unsorted = [];
@@ -91,9 +91,6 @@ class ContainerAwareEventDispatcher implements EventDispatcherInterface {
$event = new Event();
}
- $event->setDispatcher($this);
- $event->setName($event_name);
-
if (isset($this->listeners[$event_name])) {
// Sort listeners if necessary.
if (isset($this->unsorted[$event_name])) {
diff --git a/core/lib/Drupal/Component/Serialization/YamlPecl.php b/core/lib/Drupal/Component/Serialization/YamlPecl.php
index 2383bf8..ec48a29 100644
--- a/core/lib/Drupal/Component/Serialization/YamlPecl.php
+++ b/core/lib/Drupal/Component/Serialization/YamlPecl.php
@@ -27,6 +27,13 @@ class YamlPecl implements SerializationInterface {
* {@inheritdoc}
*/
public static function decode($raw) {
+ static $init;
+ if (!isset($init)) {
+ // Decode binary, since Symfony YAML parser encodes binary from 3.1
+ // onwards.
+ ini_set('yaml.decode_binary', 1);
+ $init = TRUE;
+ }
// yaml_parse() will error with an empty value.
if (!trim($raw)) {
return NULL;
diff --git a/core/lib/Drupal/Component/Serialization/YamlSymfony.php b/core/lib/Drupal/Component/Serialization/YamlSymfony.php
index 8818e52..390178f 100644
--- a/core/lib/Drupal/Component/Serialization/YamlSymfony.php
+++ b/core/lib/Drupal/Component/Serialization/YamlSymfony.php
@@ -5,6 +5,7 @@ namespace Drupal\Component\Serialization;
use Drupal\Component\Serialization\Exception\InvalidDataTypeException;
use Symfony\Component\Yaml\Parser;
use Symfony\Component\Yaml\Dumper;
+use Symfony\Component\Yaml\Yaml as SymfonyYaml;
/**
* Default serialization for YAML using the Symfony component.
@@ -18,7 +19,7 @@ class YamlSymfony implements SerializationInterface {
try {
$yaml = new Dumper();
$yaml->setIndentation(2);
- return $yaml->dump($data, PHP_INT_MAX, 0, TRUE, FALSE);
+ return $yaml->dump($data, PHP_INT_MAX, 0, SymfonyYaml::DUMP_EXCEPTION_ON_INVALID_TYPE);
}
catch (\Exception $e) {
throw new InvalidDataTypeException($e->getMessage(), $e->getCode(), $e);
@@ -33,7 +34,7 @@ class YamlSymfony implements SerializationInterface {
$yaml = new Parser();
// Make sure we have a single trailing newline. A very simple config like
// 'foo: bar' with no newline will fail to parse otherwise.
- return $yaml->parse($raw, TRUE, FALSE);
+ return $yaml->parse($raw, SymfonyYaml::PARSE_EXCEPTION_ON_INVALID_TYPE);
}
catch (\Exception $e) {
throw new InvalidDataTypeException($e->getMessage(), $e->getCode(), $e);
diff --git a/core/lib/Drupal/Core/DependencyInjection/Container.php b/core/lib/Drupal/Core/DependencyInjection/Container.php
index 4a49122..5643363 100644
--- a/core/lib/Drupal/Core/DependencyInjection/Container.php
+++ b/core/lib/Drupal/Core/DependencyInjection/Container.php
@@ -3,7 +3,6 @@
namespace Drupal\Core\DependencyInjection;
use Drupal\Component\DependencyInjection\Container as DrupalContainer;
-use Symfony\Component\DependencyInjection\ContainerInterface;
/**
* Extends the Drupal container to set the service ID on the created object.
@@ -13,8 +12,8 @@ class Container extends DrupalContainer {
/**
* {@inheritdoc}
*/
- public function set($id, $service, $scope = ContainerInterface::SCOPE_CONTAINER) {
- parent::set($id, $service, $scope);
+ public function set($id, $service) {
+ parent::set($id, $service);
// Ensure that the _serviceId property is set on synthetic services as well.
if (isset($this->services[$id]) && is_object($this->services[$id]) && !isset($this->services[$id]->_serviceId)) {
diff --git a/core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php b/core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php
index e45cb88..e0becc7 100644
--- a/core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php
+++ b/core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php
@@ -46,20 +46,12 @@ class ContainerBuilder extends SymfonyContainerBuilder {
}
/**
- * Direct copy of the parent function.
+ * {@inheritdoc}
*/
protected function shareService(Definition $definition, $service, $id)
{
- if ($definition->isShared() && self::SCOPE_PROTOTYPE !== $scope = $definition->getScope(false)) {
- if (self::SCOPE_CONTAINER !== $scope && !isset($this->scopedServices[$scope])) {
- throw new InactiveScopeException($id, $scope);
- }
-
+ if ($definition->isShared()) {
$this->services[$lowerId = strtolower($id)] = $service;
-
- if (self::SCOPE_CONTAINER !== $scope) {
- $this->scopedServices[$scope][$lowerId] = $service;
- }
}
}
@@ -74,11 +66,11 @@ class ContainerBuilder extends SymfonyContainerBuilder {
* ContainerBuilder class should be fixed to allow setting synthetic
* services in a frozen builder.
*/
- public function set($id, $service, $scope = self::SCOPE_CONTAINER) {
+ public function set($id, $service) {
if (strtolower($id) !== $id) {
throw new \InvalidArgumentException("Service ID names must be lowercase: $id");
}
- SymfonyContainer::set($id, $service, $scope);
+ SymfonyContainer::set($id, $service);
// Ensure that the _serviceId property is set on synthetic services as well.
if (isset($this->services[$id]) && is_object($this->services[$id]) && !isset($this->services[$id]->_serviceId)) {
diff --git a/core/lib/Drupal/Core/DrupalKernel.php b/core/lib/Drupal/Core/DrupalKernel.php
index 274a3fa..7926623 100644
--- a/core/lib/Drupal/Core/DrupalKernel.php
+++ b/core/lib/Drupal/Core/DrupalKernel.php
@@ -152,6 +152,13 @@ class DrupalKernel implements DrupalKernelInterface, TerminableInterface {
protected $classLoader;
/**
+ * The class loader class before including settings.php.
+ *
+ * @var string
+ */
+ protected $preSettingsClassLoaderClass;
+
+ /**
* Config storage object used for reading enabled modules configuration.
*
* @var \Drupal\Core\Config\StorageInterface
@@ -890,6 +897,34 @@ class DrupalKernel implements DrupalKernelInterface, TerminableInterface {
$container = new $class($container_definition);
}
+ // If the class loader is still the same as before including settings.php
+ // use an optimised classloader if possible.
+ if ($this->preSettingsClassLoaderClass == get_class($this->classLoader)
+ && Settings::get('class_loader_auto_detect', TRUE)) {
+ $prefix = Settings::getApcuPrefix('class_loader', $this->root);
+ // We have to key by module list since if this changes the classloader
+ // might have negative caches for classes that now exist.
+ $prefix .= '.' . hash('sha1', serialize(array_keys($container->getParameter('container.modules'))));
+ $loader = NULL;
+
+ // We autodetect one of the following three optimized classloaders, if
+ // their underlying extension exists.
+ if (function_exists('apcu_fetch')) {
+ $loader = new ApcClassLoader($prefix, $this->classLoader);
+ }
+ elseif (extension_loaded('wincache')) {
+ $loader = new WinCacheClassLoader($prefix, $this->classLoader);
+ }
+ elseif (extension_loaded('xcache')) {
+ $loader = new XcacheClassLoader($prefix, $this->classLoader);
+ }
+ if (!empty($loader)) {
+ $this->classLoader->unregister();
+ $loader->register();
+ $this->classLoader = $loader;
+ }
+ }
+
$this->attachSynthetic($container);
$this->container = $container;
@@ -1018,7 +1053,7 @@ class DrupalKernel implements DrupalKernelInterface, TerminableInterface {
protected function initializeSettings(Request $request) {
$site_path = static::findSitePath($request);
$this->setSitePath($site_path);
- $class_loader_class = get_class($this->classLoader);
+ $this->preSettingsClassLoaderClass = get_class($this->classLoader);
Settings::initialize($this->root, $site_path, $this->classLoader);
// Initialize our list of trusted HTTP Host headers to protect against
@@ -1029,31 +1064,6 @@ class DrupalKernel implements DrupalKernelInterface, TerminableInterface {
throw new BadRequestHttpException('The provided host name is not valid for this server.');
}
}
-
- // If the class loader is still the same, possibly
- // upgrade to an optimized class loader.
- if ($class_loader_class == get_class($this->classLoader)
- && Settings::get('class_loader_auto_detect', TRUE)) {
- $prefix = Settings::getApcuPrefix('class_loader', $this->root);
- $loader = NULL;
-
- // We autodetect one of the following three optimized classloaders, if
- // their underlying extension exists.
- if (function_exists('apcu_fetch')) {
- $loader = new ApcClassLoader($prefix, $this->classLoader);
- }
- elseif (extension_loaded('wincache')) {
- $loader = new WinCacheClassLoader($prefix, $this->classLoader);
- }
- elseif (extension_loaded('xcache')) {
- $loader = new XcacheClassLoader($prefix, $this->classLoader);
- }
- if (!empty($loader)) {
- $this->classLoader->unregister();
- $loader->register();
- $this->classLoader = $loader;
- }
- }
}
/**
diff --git a/core/lib/Drupal/Core/PageCache/RequestPolicy/CommandLineOrUnsafeMethod.php b/core/lib/Drupal/Core/PageCache/RequestPolicy/CommandLineOrUnsafeMethod.php
index bbf85a3..27a1f71 100644
--- a/core/lib/Drupal/Core/PageCache/RequestPolicy/CommandLineOrUnsafeMethod.php
+++ b/core/lib/Drupal/Core/PageCache/RequestPolicy/CommandLineOrUnsafeMethod.php
@@ -18,7 +18,7 @@ class CommandLineOrUnsafeMethod implements RequestPolicyInterface {
* {@inheritdoc}
*/
public function check(Request $request) {
- if ($this->isCli() || !$request->isMethodSafe()) {
+ if ($this->isCli() || !$request->isMethodCacheable()) {
return static::DENY;
}
}
diff --git a/core/lib/Drupal/Core/Render/PlaceholderingRenderCache.php b/core/lib/Drupal/Core/Render/PlaceholderingRenderCache.php
index 4256283..0422ecf 100644
--- a/core/lib/Drupal/Core/Render/PlaceholderingRenderCache.php
+++ b/core/lib/Drupal/Core/Render/PlaceholderingRenderCache.php
@@ -93,7 +93,7 @@ class PlaceholderingRenderCache extends RenderCache {
*/
public function get(array $elements) {
// @todo remove this check when https://www.drupal.org/node/2367555 lands.
- if (!$this->requestStack->getCurrentRequest()->isMethodSafe()) {
+ if (!$this->requestStack->getCurrentRequest()->isMethodCacheable()) {
return FALSE;
}
@@ -127,7 +127,7 @@ class PlaceholderingRenderCache extends RenderCache {
$result = parent::set($elements, $pre_bubbling_elements);
// @todo remove this check when https://www.drupal.org/node/2367555 lands.
- if (!$this->requestStack->getCurrentRequest()->isMethodSafe()) {
+ if (!$this->requestStack->getCurrentRequest()->isMethodCacheable()) {
return FALSE;
}
diff --git a/core/lib/Drupal/Core/Render/RenderCache.php b/core/lib/Drupal/Core/Render/RenderCache.php
index 12d52e9..9ac3381 100644
--- a/core/lib/Drupal/Core/Render/RenderCache.php
+++ b/core/lib/Drupal/Core/Render/RenderCache.php
@@ -61,9 +61,9 @@ class RenderCache implements RenderCacheInterface {
public function get(array $elements) {
// Form submissions rely on the form being built during the POST request,
// and render caching of forms prevents this from happening.
- // @todo remove the isMethodSafe() check when
+ // @todo remove the isMethodCacheable() check when
// https://www.drupal.org/node/2367555 lands.
- if (!$this->requestStack->getCurrentRequest()->isMethodSafe() || !$cid = $this->createCacheID($elements)) {
+ if (!$this->requestStack->getCurrentRequest()->isMethodCacheable() || !$cid = $this->createCacheID($elements)) {
return FALSE;
}
$bin = isset($elements['#cache']['bin']) ? $elements['#cache']['bin'] : 'render';
@@ -88,9 +88,9 @@ class RenderCache implements RenderCacheInterface {
public function set(array &$elements, array $pre_bubbling_elements) {
// Form submissions rely on the form being built during the POST request,
// and render caching of forms prevents this from happening.
- // @todo remove the isMethodSafe() check when
+ // @todo remove the isMethodCacheable() check when
// https://www.drupal.org/node/2367555 lands.
- if (!$this->requestStack->getCurrentRequest()->isMethodSafe() || !$cid = $this->createCacheID($elements)) {
+ if (!$this->requestStack->getCurrentRequest()->isMethodCacheable() || !$cid = $this->createCacheID($elements)) {
return FALSE;
}
diff --git a/core/lib/Drupal/Core/Render/Renderer.php b/core/lib/Drupal/Core/Render/Renderer.php
index 4bbffc3..37767dc 100644
--- a/core/lib/Drupal/Core/Render/Renderer.php
+++ b/core/lib/Drupal/Core/Render/Renderer.php
@@ -338,9 +338,9 @@ class Renderer implements RendererInterface {
// If instructed to create a placeholder, and a #lazy_builder callback is
// present (without such a callback, it would be impossible to replace the
// placeholder), replace the current element with a placeholder.
- // @todo remove the isMethodSafe() check when
+ // @todo remove the isMethodCacheable() check when
// https://www.drupal.org/node/2367555 lands.
- if (isset($elements['#create_placeholder']) && $elements['#create_placeholder'] === TRUE && $this->requestStack->getCurrentRequest()->isMethodSafe()) {
+ if (isset($elements['#create_placeholder']) && $elements['#create_placeholder'] === TRUE && $this->requestStack->getCurrentRequest()->isMethodCacheable()) {
if (!isset($elements['#lazy_builder'])) {
throw new \LogicException('When #create_placeholder is set, a #lazy_builder callback must be present as well.');
}
diff --git a/core/lib/Drupal/Core/TypedData/Validation/ExecutionContext.php b/core/lib/Drupal/Core/TypedData/Validation/ExecutionContext.php
index a20fa52..100718e 100644
--- a/core/lib/Drupal/Core/TypedData/Validation/ExecutionContext.php
+++ b/core/lib/Drupal/Core/TypedData/Validation/ExecutionContext.php
@@ -21,7 +21,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
class ExecutionContext implements ExecutionContextInterface {
/**
- * @var \Symfony\Component\Validator\ValidatorInterface
+ * @var \Symfony\Component\Validator\Validator\ValidatorInterface
*/
protected $validator;
diff --git a/core/modules/big_pipe/src/Render/Placeholder/BigPipeStrategy.php b/core/modules/big_pipe/src/Render/Placeholder/BigPipeStrategy.php
index 91ad604..1690424 100644
--- a/core/modules/big_pipe/src/Render/Placeholder/BigPipeStrategy.php
+++ b/core/modules/big_pipe/src/Render/Placeholder/BigPipeStrategy.php
@@ -108,7 +108,7 @@ class BigPipeStrategy implements PlaceholderStrategyInterface {
$request = $this->requestStack->getCurrentRequest();
// @todo remove this check when https://www.drupal.org/node/2367555 lands.
- if (!$request->isMethodSafe()) {
+ if (!$request->isMethodCacheable()) {
return [];
}
diff --git a/core/modules/big_pipe/tests/src/Unit/Render/Placeholder/BigPipeStrategyTest.php b/core/modules/big_pipe/tests/src/Unit/Render/Placeholder/BigPipeStrategyTest.php
index f0f40ba..9de0942 100644
--- a/core/modules/big_pipe/tests/src/Unit/Render/Placeholder/BigPipeStrategyTest.php
+++ b/core/modules/big_pipe/tests/src/Unit/Render/Placeholder/BigPipeStrategyTest.php
@@ -47,7 +47,7 @@ class BigPipeStrategyTest extends UnitTestCase {
$big_pipe_strategy = new BigPipeStrategy($session_configuration->reveal(), $request_stack->reveal(), $route_match->reveal());
$processed_placeholders = $big_pipe_strategy->processPlaceholders($placeholders);
- if ($request->isMethodSafe() && !$route_match_has_no_big_pipe_option && $request_has_session) {
+ if ($request->isMethodCacheable() && !$route_match_has_no_big_pipe_option && $request_has_session) {
$this->assertSameSize($expected_big_pipe_placeholders, $processed_placeholders, 'BigPipe is able to deliver all placeholders.');
foreach (array_keys($placeholders) as $placeholder) {
$this->assertSame($expected_big_pipe_placeholders[$placeholder], $processed_placeholders[$placeholder], "Verifying how BigPipeStrategy handles the placeholder '$placeholder'");
diff --git a/core/modules/block_content/src/Tests/BlockContentCacheTagsTest.php b/core/modules/block_content/src/Tests/BlockContentCacheTagsTest.php
index 7eefdc7..5db7b2a 100644
--- a/core/modules/block_content/src/Tests/BlockContentCacheTagsTest.php
+++ b/core/modules/block_content/src/Tests/BlockContentCacheTagsTest.php
@@ -76,7 +76,7 @@ class BlockContentCacheTagsTest extends EntityCacheTagsTestBase {
// Render the block.
// @todo The request stack manipulation won't be necessary once
// https://www.drupal.org/node/2367555 is fixed and the
- // corresponding $request->isMethodSafe() checks are removed from
+ // corresponding $request->isMethodCacheable() checks are removed from
// Drupal\Core\Render\Renderer.
$request_stack = $this->container->get('request_stack');
$request_stack->push(new Request());
diff --git a/core/modules/file/config/optional/views.view.files.yml b/core/modules/file/config/optional/views.view.files.yml
index e5edee2..053b72d 100644
--- a/core/modules/file/config/optional/views.view.files.yml
+++ b/core/modules/file/config/optional/views.view.files.yml
@@ -565,7 +565,7 @@ display:
decimal: .
separator: ','
format_plural: true
- format_plural_string: "1 place\x03@count places"
+ format_plural_string: !!binary MSBwbGFjZQNAY291bnQgcGxhY2Vz
prefix: ''
suffix: ''
plugin_id: numeric
@@ -1007,7 +1007,7 @@ display:
decimal: .
separator: ','
format_plural: false
- format_plural_string: "1\x03@count"
+ format_plural_string: !!binary MQNAY291bnQ=
prefix: ''
suffix: ''
plugin_id: numeric
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index 5c86a13..5c67317 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -1080,7 +1080,7 @@ function node_query_node_access_alter(AlterableInterface $query) {
// context.
$request = \Drupal::requestStack()->getCurrentRequest();
$renderer = \Drupal::service('renderer');
- if ($request->isMethodSafe() && $renderer->hasRenderContext()) {
+ if ($request->isMethodCacheable() && $renderer->hasRenderContext()) {
$build = ['#cache' => ['contexts' => ['user.node_grants:' . $op]]];
$renderer->render($build);
}
diff --git a/core/modules/rest/src/EventSubscriber/ResourceResponseSubscriber.php b/core/modules/rest/src/EventSubscriber/ResourceResponseSubscriber.php
index 5cb887b..86935ea 100644
--- a/core/modules/rest/src/EventSubscriber/ResourceResponseSubscriber.php
+++ b/core/modules/rest/src/EventSubscriber/ResourceResponseSubscriber.php
@@ -96,7 +96,7 @@ class ResourceResponseSubscriber implements EventSubscriberInterface {
$route = $route_match->getRouteObject();
$acceptable_request_formats = $route->hasRequirement('_format') ? explode('|', $route->getRequirement('_format')) : [];
$acceptable_content_type_formats = $route->hasRequirement('_content_type_format') ? explode('|', $route->getRequirement('_content_type_format')) : [];
- $acceptable_formats = $request->isMethodSafe() ? $acceptable_request_formats : $acceptable_content_type_formats;
+ $acceptable_formats = $request->isMethodCacheable() ? $acceptable_request_formats : $acceptable_content_type_formats;
$requested_format = $request->getRequestFormat();
$content_type_format = $request->getContentType();
diff --git a/core/modules/rest/tests/src/Unit/CollectRoutesTest.php b/core/modules/rest/tests/src/Unit/CollectRoutesTest.php
index c55ea3b..5c4de33 100644
--- a/core/modules/rest/tests/src/Unit/CollectRoutesTest.php
+++ b/core/modules/rest/tests/src/Unit/CollectRoutesTest.php
@@ -141,8 +141,8 @@ class CollectRoutesTest extends UnitTestCase {
$requirements_1 = $this->routes->get('test_1')->getRequirements();
$requirements_2 = $this->routes->get('view.test_view.page_1')->getRequirements();
- $this->assertEquals(count($requirements_1), 0, 'First route has no requirement.');
- $this->assertEquals(count($requirements_2), 2, 'Views route with rest export had the format and method requirements added.');
+ $this->assertEquals(0, count($requirements_1), 'First route has no requirement.');
+ $this->assertEquals(1, count($requirements_2), 'Views route with rest export had the format requirement added.');
// Check auth options.
$auth = $this->routes->get('view.test_view.page_1')->getOption('_auth');
diff --git a/core/modules/rest/tests/src/Unit/EventSubscriber/ResourceResponseSubscriberTest.php b/core/modules/rest/tests/src/Unit/EventSubscriber/ResourceResponseSubscriberTest.php
index 87c9059..b10fbfe 100644
--- a/core/modules/rest/tests/src/Unit/EventSubscriber/ResourceResponseSubscriberTest.php
+++ b/core/modules/rest/tests/src/Unit/EventSubscriber/ResourceResponseSubscriberTest.php
@@ -79,11 +79,6 @@ class ResourceResponseSubscriberTest extends UnitTestCase {
* @dataProvider providerTestResponseFormat
*/
public function testResponseFormat($methods, array $supported_formats, $request_format, array $request_headers, $request_body, $expected_response_format, $expected_response_content_type, $expected_response_content) {
- $parameters = [];
- if ($request_format !== FALSE) {
- $parameters['_format'] = $request_format;
- }
-
foreach ($request_headers as $key => $value) {
unset($request_headers[$key]);
$key = strtoupper(str_replace('-', '_', $key));
@@ -91,8 +86,13 @@ class ResourceResponseSubscriberTest extends UnitTestCase {
}
foreach ($methods as $method) {
- $request = Request::create('/rest/test', $method, $parameters, [], [], $request_headers, $request_body);
- $route_requirement_key_format = $request->isMethodSafe() ? '_format' : '_content_type_format';
+ $request = Request::create('/rest/test', $method, [], [], [], $request_headers, $request_body);
+ // \Drupal\Core\StackMiddleware\NegotiationMiddleware normally takes care
+ // of this so we'll hard code it here.
+ if ($request_format) {
+ $request->setRequestFormat($request_format);
+ }
+ $route_requirement_key_format = $request->isMethodCacheable() ? '_format' : '_content_type_format';
$route_match = new RouteMatch('test', new Route('/rest/test', ['_rest_resource_config' => $this->randomMachineName()], [$route_requirement_key_format => implode('|', $supported_formats)]));
$resource_response_subscriber = new ResourceResponseSubscriber(
@@ -116,11 +116,6 @@ class ResourceResponseSubscriberTest extends UnitTestCase {
public function testOnResponseWithCacheableResponse($methods, array $supported_formats, $request_format, array $request_headers, $request_body, $expected_response_format, $expected_response_content_type, $expected_response_content) {
$rest_config_name = $this->randomMachineName();
- $parameters = [];
- if ($request_format !== FALSE) {
- $parameters['_format'] = $request_format;
- }
-
foreach ($request_headers as $key => $value) {
unset($request_headers[$key]);
$key = strtoupper(str_replace('-', '_', $key));
@@ -128,8 +123,13 @@ class ResourceResponseSubscriberTest extends UnitTestCase {
}
foreach ($methods as $method) {
- $request = Request::create('/rest/test', $method, $parameters, [], [], $request_headers, $request_body);
- $route_requirement_key_format = $request->isMethodSafe() ? '_format' : '_content_type_format';
+ $request = Request::create('/rest/test', $method, [], [], [], $request_headers, $request_body);
+ // \Drupal\Core\StackMiddleware\NegotiationMiddleware normally takes care
+ // of this so we'll hard code it here.
+ if ($request_format) {
+ $request->setRequestFormat($request_format);
+ }
+ $route_requirement_key_format = $request->isMethodCacheable() ? '_format' : '_content_type_format';
$route_match = new RouteMatch('test', new Route('/rest/test', ['_rest_resource_config' => $rest_config_name], [$route_requirement_key_format => implode('|', $supported_formats)]));
// The RequestHandler must return a ResourceResponseInterface object.
@@ -166,11 +166,6 @@ class ResourceResponseSubscriberTest extends UnitTestCase {
public function testOnResponseWithUncacheableResponse($methods, array $supported_formats, $request_format, array $request_headers, $request_body, $expected_response_format, $expected_response_content_type, $expected_response_content) {
$rest_config_name = $this->randomMachineName();
- $parameters = [];
- if ($request_format !== FALSE) {
- $parameters['_format'] = $request_format;
- }
-
foreach ($request_headers as $key => $value) {
unset($request_headers[$key]);
$key = strtoupper(str_replace('-', '_', $key));
@@ -178,8 +173,13 @@ class ResourceResponseSubscriberTest extends UnitTestCase {
}
foreach ($methods as $method) {
- $request = Request::create('/rest/test', $method, $parameters, [], [], $request_headers, $request_body);
- $route_requirement_key_format = $request->isMethodSafe() ? '_format' : '_content_type_format';
+ $request = Request::create('/rest/test', $method, [], [], [], $request_headers, $request_body);
+ // \Drupal\Core\StackMiddleware\NegotiationMiddleware normally takes care
+ // of this so we'll hard code it here.
+ if ($request_format) {
+ $request->setRequestFormat($request_format);
+ }
+ $route_requirement_key_format = $request->isMethodCacheable() ? '_format' : '_content_type_format';
$route_match = new RouteMatch('test', new Route('/rest/test', ['_rest_resource_config' => $rest_config_name], [$route_requirement_key_format => implode('|', $supported_formats)]));
// The RequestHandler must return a ResourceResponseInterface object.
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php
index 948c592..fb28c65 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php
@@ -86,7 +86,7 @@ class FormTestStorageForm extends FormBase {
// that issue.
if ($this->getRequest()->get('immutable')) {
$form_state->addBuildInfo('immutable', TRUE);
- if ($this->getRequest()->get('cache') && $this->getRequest()->isMethodSafe()) {
+ if ($this->getRequest()->get('cache') && $this->getRequest()->isMethodCacheable()) {
$form_state->setRequestMethod('FAKE');
$form_state->setCached();
}
diff --git a/core/modules/system/tests/modules/theme_test/src/EventSubscriber/ThemeTestSubscriber.php b/core/modules/system/tests/modules/theme_test/src/EventSubscriber/ThemeTestSubscriber.php
index d5f9110..bc8d1d0 100644
--- a/core/modules/system/tests/modules/theme_test/src/EventSubscriber/ThemeTestSubscriber.php
+++ b/core/modules/system/tests/modules/theme_test/src/EventSubscriber/ThemeTestSubscriber.php
@@ -17,7 +17,8 @@ class ThemeTestSubscriber implements EventSubscriberInterface {
/**
* The used container.
*
- * @var \Symfony\Component\DependencyInjection\IntrospectableContainerInterface
+ * @todo This variable is never initialzed, so we don't know what it is.
+ * See https://www.drupal.org/node/2721315
*/
protected $container;
diff --git a/core/tests/Drupal/Tests/Component/DependencyInjection/ContainerTest.php b/core/tests/Drupal/Tests/Component/DependencyInjection/ContainerTest.php
index 3c89804..eb7eb1b 100644
--- a/core/tests/Drupal/Tests/Component/DependencyInjection/ContainerTest.php
+++ b/core/tests/Drupal/Tests/Component/DependencyInjection/ContainerTest.php
@@ -663,47 +663,6 @@ class ContainerTest extends \PHPUnit_Framework_TestCase {
}
/**
- * Tests that unsupported methods throw an Exception.
- *
- * @covers ::enterScope
- * @covers ::leaveScope
- * @covers ::addScope
- * @covers ::hasScope
- * @covers ::isScopeActive
- *
- * @expectedException \BadMethodCallException
- *
- * @dataProvider scopeExceptionTestProvider
- */
- public function testScopeFunctionsWithException($method, $argument) {
- $callable = array(
- $this->container,
- $method,
- );
-
- $callable($argument);
- }
-
- /**
- * Data provider for scopeExceptionTestProvider().
- *
- * @return array[]
- * Returns per data set an array with:
- * - method name to call
- * - argument to pass
- */
- public function scopeExceptionTestProvider() {
- $scope = $this->prophesize('\Symfony\Component\DependencyInjection\ScopeInterface')->reveal();
- return array(
- array('enterScope', 'test_scope'),
- array('leaveScope', 'test_scope'),
- array('hasScope', 'test_scope'),
- array('isScopeActive', 'test_scope'),
- array('addScope', $scope),
- );
- }
-
- /**
* Tests that Container::getServiceIds() works properly.
*
* @covers ::getServiceIds
diff --git a/core/tests/Drupal/Tests/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumperTest.php b/core/tests/Drupal/Tests/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumperTest.php
index 49b6556..cc4c630 100644
--- a/core/tests/Drupal/Tests/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumperTest.php
+++ b/core/tests/Drupal/Tests/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumperTest.php
@@ -245,7 +245,6 @@ namespace Drupal\Tests\Component\DependencyInjection\Dumper {
'arguments_count' => 0,
'properties' => array(),
'calls' => array(),
- 'scope' => ContainerInterface::SCOPE_CONTAINER,
'shared' => TRUE,
'factory' => FALSE,
'configurator' => FALSE,
@@ -358,11 +357,6 @@ namespace Drupal\Tests\Component\DependencyInjection\Dumper {
) + $base_service_definition;
$service_definitions[] = array(
- 'scope' => ContainerInterface::SCOPE_PROTOTYPE,
- 'shared' => FALSE,
- ) + $base_service_definition;
-
- $service_definitions[] = array(
'shared' => FALSE,
) + $base_service_definition;
@@ -404,7 +398,6 @@ namespace Drupal\Tests\Component\DependencyInjection\Dumper {
$definition->getArguments()->willReturn($service_definition['arguments']);
$definition->getProperties()->willReturn($service_definition['properties']);
$definition->getMethodCalls()->willReturn($service_definition['calls']);
- $definition->getScope()->willReturn($service_definition['scope']);
$definition->isShared()->willReturn($service_definition['shared']);
$definition->getDecoratedService()->willReturn(NULL);
$definition->getFactory()->willReturn($service_definition['factory']);
@@ -437,9 +430,6 @@ namespace Drupal\Tests\Component\DependencyInjection\Dumper {
}
}
- // Remove any remaining scope.
- unset($filtered_service_definition['scope']);
-
if (isset($filtered_service_definition['public']) && $filtered_service_definition['public'] === FALSE) {
$services_provided[] = array(
array('foo_service' => $definition->reveal()),
@@ -478,22 +468,6 @@ namespace Drupal\Tests\Component\DependencyInjection\Dumper {
}
/**
- * Tests that the correct InvalidArgumentException is thrown for getScope().
- *
- * @covers ::getServiceDefinition
- *
- * @expectedException \Symfony\Component\DependencyInjection\Exception\InvalidArgumentException
- */
- public function testGetServiceDefinitionWithInvalidScope() {
- $bar_definition = new Definition('\stdClass');
- $bar_definition->setScope('foo_scope');
- $services['bar'] = $bar_definition;
-
- $this->containerBuilder->getDefinitions()->willReturn($services);
- $this->dumper->getArray();
- }
-
- /**
* Tests that references to aliases work correctly.
*
* @covers ::getReferenceCall
diff --git a/core/tests/Drupal/Tests/Component/EventDispatcher/ContainerAwareEventDispatcherTest.php b/core/tests/Drupal/Tests/Component/EventDispatcher/ContainerAwareEventDispatcherTest.php
index 7bc2382..ea0685a 100644
--- a/core/tests/Drupal/Tests/Component/EventDispatcher/ContainerAwareEventDispatcherTest.php
+++ b/core/tests/Drupal/Tests/Component/EventDispatcher/ContainerAwareEventDispatcherTest.php
@@ -6,9 +6,10 @@ namespace Drupal\Tests\Component\EventDispatcher;
use Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher;
use Symfony\Component\DependencyInjection\Container;
use Symfony\Component\DependencyInjection\ContainerBuilder;
+use Symfony\Component\DependencyInjection\ContainerInterface;
use Symfony\Component\EventDispatcher\Tests\CallableClass;
-use Symfony\Component\EventDispatcher\Tests\TestEventListener;
use Symfony\Component\EventDispatcher\Tests\ContainerAwareEventDispatcherTest as SymfonyContainerAwareEventDispatcherTest;
+use Symfony\Component\EventDispatcher\Tests\TestEventListener;
/**
* Unit tests for the ContainerAwareEventDispatcher.
@@ -37,7 +38,7 @@ class ContainerAwareEventDispatcherTest extends SymfonyContainerAwareEventDispat
// When passing in callables exclusively as listeners into the event
// dispatcher constructor, the event dispatcher must not attempt to
// resolve any services.
- $container = $this->getMock('Symfony\Component\DependencyInjection\IntrospectableContainerInterface');
+ $container = $this->getMock(ContainerInterface::class);
$container->expects($this->never())->method($this->anything());
$firstListener = new CallableClass();
@@ -72,7 +73,7 @@ class ContainerAwareEventDispatcherTest extends SymfonyContainerAwareEventDispat
// When passing in callables exclusively as listeners into the event
// dispatcher constructor, the event dispatcher must not attempt to
// resolve any services.
- $container = $this->getMock('Symfony\Component\DependencyInjection\IntrospectableContainerInterface');
+ $container = $this->getMock(ContainerInterface::class);
$container->expects($this->never())->method($this->anything());
$firstListener = new CallableClass();
diff --git a/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php b/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php
index cb73533..24e23dd 100644
--- a/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php
@@ -10,6 +10,7 @@ use Drupal\Core\Language\LanguageInterface;
use Drupal\Core\TypedData\TypedDataManagerInterface;
use Drupal\Tests\UnitTestCase;
use Drupal\Core\Language\Language;
+use Symfony\Component\Validator\Validator\ValidatorInterface;
/**
* @coversDefaultClass \Drupal\Core\Entity\ContentEntityBase
@@ -321,7 +322,7 @@ class ContentEntityBaseUnitTest extends UnitTestCase {
* @covers ::validate
*/
public function testValidate() {
- $validator = $this->getMock('\Symfony\Component\Validator\ValidatorInterface');
+ $validator = $this->getMock(ValidatorInterface::class);
/** @var \Symfony\Component\Validator\ConstraintViolationList|\PHPUnit_Framework_MockObject_MockObject $empty_violation_list */
$empty_violation_list = $this->getMockBuilder('\Symfony\Component\Validator\ConstraintViolationList')
->setMethods(NULL)
@@ -357,7 +358,7 @@ class ContentEntityBaseUnitTest extends UnitTestCase {
* @expectedExceptionMessage Entity validation was skipped.
*/
public function testRequiredValidation() {
- $validator = $this->getMock('\Symfony\Component\Validator\ValidatorInterface');
+ $validator = $this->getMock(ValidatorInterface::class);
/** @var \Symfony\Component\Validator\ConstraintViolationList|\PHPUnit_Framework_MockObject_MockObject $empty_violation_list */
$empty_violation_list = $this->getMockBuilder('\Symfony\Component\Validator\ConstraintViolationList')
->setMethods(NULL)
diff --git a/core/tests/Drupal/Tests/Core/EventSubscriber/DefaultExceptionSubscriberTest.php b/core/tests/Drupal/Tests/Core/EventSubscriber/DefaultExceptionSubscriberTest.php
index 541d136..61f0cd1 100644
--- a/core/tests/Drupal/Tests/Core/EventSubscriber/DefaultExceptionSubscriberTest.php
+++ b/core/tests/Drupal/Tests/Core/EventSubscriber/DefaultExceptionSubscriberTest.php
@@ -25,7 +25,10 @@ class DefaultExceptionSubscriberTest extends UnitTestCase {
// Format 'bananas' requested, yet only 'json' allowed.
$kernel = $this->prophesize(HttpKernelInterface::class);
- $request = Request::create('/test?_format=bananas');
+ $request = Request::create('/test');
+ // \Drupal\Core\StackMiddleware\NegotiationMiddleware normally takes care
+ // of this so we'll hard code it here.
+ $request->setRequestFormat('bananas');
$e = new MethodNotAllowedHttpException(['json'], 'test message');
$event = new GetResponseForExceptionEvent($kernel->reveal(), $request, 'GET', $e);
$subscriber = new DefaultExceptionSubscriber($config_factory);