From cb4a3e4a13a0dda90615c9af0019051c6a7da8b2 Mon Sep 17 00:00:00 2001 From: Jan Nedbal Date: Fri, 13 Dec 2024 10:12:48 +0100 Subject: [PATCH] Legacy formatter: directory now has default value (#24) * Legacy formatter: directory now has default value * Better default * Fix neon schema * wording --- extension.neon | 3 ++- src/BaselinePerIdentifierFormatter.php | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/extension.neon b/extension.neon index 7901325..ce4eefe 100644 --- a/extension.neon +++ b/extension.neon @@ -7,10 +7,11 @@ services: parameters: shipmonkBaselinePerIdentifier: + directory: null indent: ' ' parametersSchema: shipmonkBaselinePerIdentifier: structure([ - directory: string() + directory: schema(string(), nullable()) indent: string() ]) diff --git a/src/BaselinePerIdentifierFormatter.php b/src/BaselinePerIdentifierFormatter.php index 0645d40..d14d690 100644 --- a/src/BaselinePerIdentifierFormatter.php +++ b/src/BaselinePerIdentifierFormatter.php @@ -29,8 +29,12 @@ class BaselinePerIdentifierFormatter implements ErrorFormatter private string $indent; - public function __construct(string $baselinesDir, string $indent) + public function __construct(?string $baselinesDir, string $indent) { + if ($baselinesDir === null) { + throw new LogicException('Baselines directory must be set, please set up \'parameters.shipmonkBaselinePerIdentifier.directory\' in your phpstan configuration file'); + } + $baselinesRealDir = realpath($baselinesDir); if ($baselinesRealDir === false) {