From d6735fff7e650fc2707e378e3501c06a4ced1901 Mon Sep 17 00:00:00 2001 From: TangRufus Date: Wed, 15 Oct 2025 20:01:27 +0100 Subject: [PATCH] `Matrix`: Early quit if `$constraint` is invalid --- src/Matrices/Matrix.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/Matrices/Matrix.php b/src/Matrices/Matrix.php index 479b7ec..0685bbf 100644 --- a/src/Matrices/Matrix.php +++ b/src/Matrices/Matrix.php @@ -5,6 +5,7 @@ namespace TypistTech\PhpMatrix\Matrices; use Composer\Semver\Semver; +use Composer\Semver\VersionParser; use TypistTech\PhpMatrix\Exceptions\UnexpectedValueException as AppUnexpectedValueException; use TypistTech\PhpMatrix\Releases\ReleasesInterface; use UnexpectedValueException; @@ -13,6 +14,7 @@ { public function __construct( private ReleasesInterface $releases, + private VersionParser $versionParser = new VersionParser(), ) {} /** @@ -21,6 +23,9 @@ public function __construct( public function satisfiedBy(string $constraint): array { try { + // Validate constraint before passing to Semver::satisfiedBy(); + $this->versionParser->parseConstraints($constraint); + return Semver::satisfiedBy( $this->releases->all(), $constraint