From 7a5c8a2e0d64b8e6deb61cda5330deb6283fe8d4 Mon Sep 17 00:00:00 2001 From: mantis <mantis@users.noreply.github.com> Date: Fri, 25 Jan 2019 17:17:45 +0000 Subject: [PATCH] Fix: Deprecation: A tree builder without a root node is deprecated since symfony 4.2 (#1457) * Fix: Deprecation: A tree builder without a root node is deprecated since Symfony 4.2 and will not be supported anymore in 5.0. * Fix: Deprecation: A tree builder without a root node is deprecated since Symfony 4.2 and will not be supported anymore in 5.0. --- DependencyInjection/Configuration.php | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/DependencyInjection/Configuration.php b/DependencyInjection/Configuration.php index 0a4df63..825bb3c 100644 --- a/DependencyInjection/Configuration.php +++ b/DependencyInjection/Configuration.php @@ -18,9 +18,16 @@ final class Configuration implements ConfigurationInterface { public function getConfigTreeBuilder() { - $treeBuilder = new TreeBuilder(); - $treeBuilder - ->root('nelmio_api_doc') + $treeBuilder = new TreeBuilder('nelmio_api_doc'); + + if (method_exists($treeBuilder, 'getRootNode')) { + $rootNode = $treeBuilder->getRootNode(); + } else { + // symfony < 4.2 support + $rootNode = $treeBuilder->root('nelmio_api_doc'); + } + + $rootNode ->beforeNormalization() ->ifTrue(function ($v) { return !isset($v['areas']) && isset($v['routes']);