From ca1362aca48aeb47af8ddff229f581cf4411dc9a Mon Sep 17 00:00:00 2001 From: Simon Podlipsky <simon@podlipsky.net> Date: Wed, 3 Jul 2019 11:53:35 +0300 Subject: [PATCH] Use new API for rootnode --- .travis.yml | 5 +++++ src/DependencyInjection/Configuration.php | 10 ++++++++-- .../KdybyDateTimeProviderExtensionTest.php | 1 - 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6f0132d..acc7ddb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,6 +9,8 @@ cache: php: - 7.1 - 7.2 + - 7.3 + - 7.4snapshot - nightly before_install: @@ -27,6 +29,9 @@ stages: - Code Quality jobs: + allow_failures: + - php: nightly + include: - stage: Test env: DEV_DEPENDENCIES diff --git a/src/DependencyInjection/Configuration.php b/src/DependencyInjection/Configuration.php index 79b334c..1a538b4 100644 --- a/src/DependencyInjection/Configuration.php +++ b/src/DependencyInjection/Configuration.php @@ -15,6 +15,7 @@ use Kdyby\StrictObjects\Scream; use Symfony\Component\Config\Definition\Builder\TreeBuilder; use Symfony\Component\Config\Definition\ConfigurationInterface; +use function method_exists; class Configuration implements ConfigurationInterface { @@ -27,8 +28,13 @@ class Configuration implements ConfigurationInterface public function getConfigTreeBuilder() : TreeBuilder { - $treeBuilder = new TreeBuilder(); - $rootNode = $treeBuilder->root('kdyby_datetime_provider'); + $treeBuilder = new TreeBuilder('kdyby_datetime_provider'); + if (method_exists($treeBuilder, 'getRootNode')) { + $rootNode = $treeBuilder->getRootNode(); + } else { + // BC layer for symfony/config 4.1 and older + $rootNode = $treeBuilder->root('kdyby_datetime_provider'); + } // @codingStandardsIgnoreStart $rootNode diff --git a/tests/DateTimeProviderBundle/DependencyInjection/KdybyDateTimeProviderExtensionTest.php b/tests/DateTimeProviderBundle/DependencyInjection/KdybyDateTimeProviderExtensionTest.php index a4317ef..7aff1b8 100644 --- a/tests/DateTimeProviderBundle/DependencyInjection/KdybyDateTimeProviderExtensionTest.php +++ b/tests/DateTimeProviderBundle/DependencyInjection/KdybyDateTimeProviderExtensionTest.php @@ -150,7 +150,6 @@ public function getRequestTime() : DateTimeImmutable { return $this->dateTime; } - }; }