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