From a7ff3622b40c1ca8bcefcde1c84f6e7da18c7fbe Mon Sep 17 00:00:00 2001 From: Ondrej Mirtes Date: Tue, 6 Feb 2024 20:28:54 +0100 Subject: [PATCH] Update nette/di --- composer.json | 2 +- composer.lock | 16 ++++++++-------- src/DependencyInjection/ContainerFactory.php | 6 ++++++ src/DependencyInjection/NeonAdapter.php | 2 +- src/DependencyInjection/Nette/NetteContainer.php | 6 ++++++ 5 files changed, 22 insertions(+), 10 deletions(-) diff --git a/composer.json b/composer.json index 5cd970663a..708d0b51c1 100644 --- a/composer.json +++ b/composer.json @@ -16,7 +16,7 @@ "hoa/regex": "1.17.01.13", "jetbrains/phpstorm-stubs": "dev-master#8ea3bf44722f76a3a32c89fe769b6144c253f8a6", "nette/bootstrap": "^3.0", - "nette/di": "^3.1.4", + "nette/di": "3.1.10", "nette/finder": "^2.5", "nette/neon": "^3.3.1", "nette/schema": "^1.2.2", diff --git a/composer.lock b/composer.lock index 5bcf29c638..42b63ebaf2 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "7b0b2f8385151c0b2698c893606267db", + "content-hash": "b934e4831078be2516eb0f5977a7d00a", "packages": [ { "name": "clue/ndjson-react", @@ -1478,16 +1478,16 @@ }, { "name": "nette/di", - "version": "v3.1.5", + "version": "v3.1.10", "source": { "type": "git", "url": "https://github.com/nette/di.git", - "reference": "00ea0afa643b3b4383a5cd1a322656c989ade498" + "reference": "2645ec3eaa17fa2ab87c5eb4eaacb1fe6dd28284" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nette/di/zipball/00ea0afa643b3b4383a5cd1a322656c989ade498", - "reference": "00ea0afa643b3b4383a5cd1a322656c989ade498", + "url": "https://api.github.com/repos/nette/di/zipball/2645ec3eaa17fa2ab87c5eb4eaacb1fe6dd28284", + "reference": "2645ec3eaa17fa2ab87c5eb4eaacb1fe6dd28284", "shasum": "" }, "require": { @@ -1495,7 +1495,7 @@ "nette/neon": "^3.3 || ^4.0", "nette/php-generator": "^3.5.4 || ^4.0", "nette/robot-loader": "^3.2 || ~4.0.0", - "nette/schema": "^1.2", + "nette/schema": "^1.2.5", "nette/utils": "^3.2.5 || ~4.0.0", "php": "7.2 - 8.3" }, @@ -1544,9 +1544,9 @@ ], "support": { "issues": "https://github.com/nette/di/issues", - "source": "https://github.com/nette/di/tree/v3.1.5" + "source": "https://github.com/nette/di/tree/v3.1.10" }, - "time": "2023-10-02T19:58:38+00:00" + "time": "2024-02-06T01:19:44+00:00" }, { "name": "nette/finder", diff --git a/src/DependencyInjection/ContainerFactory.php b/src/DependencyInjection/ContainerFactory.php index cb3bf3006a..ee9b886809 100644 --- a/src/DependencyInjection/ContainerFactory.php +++ b/src/DependencyInjection/ContainerFactory.php @@ -147,6 +147,12 @@ public function create( $configurator->setAllConfigFiles($allConfigFiles); $container = $configurator->createContainer()->getByType(Container::class); + + // initialize parameters that contain dynamic parameters + $container->getParameter('sysGetTempDir'); + $container->getParameter('pro'); + $container->getParameter('fixerTmpDir'); + $this->validateParameters($container->getParameters(), $projectConfig['parametersSchema']); self::postInitializeContainer($container); diff --git a/src/DependencyInjection/NeonAdapter.php b/src/DependencyInjection/NeonAdapter.php index a0aac143fd..a70f3e12f6 100644 --- a/src/DependencyInjection/NeonAdapter.php +++ b/src/DependencyInjection/NeonAdapter.php @@ -29,7 +29,7 @@ class NeonAdapter implements Adapter { - public const CACHE_KEY = 'v23-pro-tmp-dir'; + public const CACHE_KEY = 'v24-update-nette-di'; private const PREVENT_MERGING_SUFFIX = '!'; diff --git a/src/DependencyInjection/Nette/NetteContainer.php b/src/DependencyInjection/Nette/NetteContainer.php index b5e488ca32..9c13b19567 100644 --- a/src/DependencyInjection/Nette/NetteContainer.php +++ b/src/DependencyInjection/Nette/NetteContainer.php @@ -2,6 +2,7 @@ namespace PHPStan\DependencyInjection\Nette; +use Nette\InvalidStateException; use PHPStan\DependencyInjection\Container; use PHPStan\DependencyInjection\ParameterNotFoundException; use function array_key_exists; @@ -78,6 +79,11 @@ public function hasParameter(string $parameterName): bool public function getParameter(string $parameterName) { if (!$this->hasParameter($parameterName)) { + try { + return $this->container->getParameter($parameterName); + } catch (InvalidStateException) { + // pass + } throw new ParameterNotFoundException($parameterName); }