Skip to content

v1.7.1

tagged this 12 Aug 12:57
The base shipped in v1.7.0 declaring paths, bootstrapFiles, excludePaths and
scanDirectories as bare relative paths. PHPStan resolves those against the
config file that DECLARES them, so consumed from
vendor/conduction/hydra-gates/quality-config/ they pointed at
vendor/.../quality-config/lib — which does not exist. The run aborts with
'Path ... does not exist', or worse analyses nothing.

It was invisible for the same reason every dead gate in this fleet's history has
been: no app had adopted it yet, so nothing was red. The defect shipped inside a
release whose whole purpose was to centralise configuration.

This is also the SECOND time today the same mechanic has bitten. quality-config/
phpcs.xml carries a load-bearing comment explaining that phpcs resolves <file>
relative to the declaring ruleset and that the app stub must therefore own it —
and phpstan-base.neon was written straight afterwards with the identical mistake
in a different tool's syntax. Knowing the general rule did not transfer.

Fixed with %currentWorkingDirectory% prefixes. Verified on larpingapp with
phpstan dump-parameters: level, paths, excludePaths, bootstrapFiles and
scanDirectories all resolve to byte-identical values against a local config,
findings unchanged.
Assets 2
Loading