Compatibility & versioning
This package follows its own semantic versioning timeline, independent of the upstream SDK. Its version communicates changes to its public API (the facade, manager, config and service provider) — not the SDK's internal version.
Support matrix
| Package | Prelude PHP SDK | Laravel | PHP |
|---|---|---|---|
^1.0 | ^0.4.0 | 12 – 13 | 8.2+ |
SDK constraint
The Prelude PHP SDK is currently pre-1.0, so its minor releases may introduce breaking
changes. The package tracks a single SDK minor (^0.4.0, i.e. >=0.4.0 <0.5.0) and
widens that constraint only once a new SDK minor has been tested. A breaking change in
the SDK that forces a breaking change in this package's public API results in a new
major release here.
Why not Laravel 10 or 11?
Older Laravel support was investigated specifically as compatibility insurance for legacy projects, but both versions are blocked:
- Laravel 10 cannot be tested with the modern Pest / PHPUnit stack — Testbench 8 caps at PHPUnit 10 while current Pest requires PHPUnit 11+ — and its CVE-free patches are narrow.
- Laravel 11 has reached end-of-life, and every release is flagged by an unpatched security advisory that will never be fixed in the 11.x line.
Declaring support that cannot be security-cleared or CI-verified would be misleading, so the floor is Laravel 12, the lowest non-EOL version the toolchain can prove.