Skip to content

2.8.0

Choose a tag to compare

@mathsgod mathsgod released this 27 Oct 04:44
· 58 commits to main since this release

PHP compatibility update for the PUXT v2 series. Minimum PHP version is now 8.3.

Changes

  • Require PHP ^8.3 and League Route ^7.0.
  • Upgrade Flysystem to ^3.36 and Diactoros to ^3.9.
  • Replace laminas/laminas-config with PUXT\Config, preserving core configuration behavior and the upstream BSD-3-Clause attribution.
  • Fix declared properties, optional-key access and nullable parameter declarations for newer PHP versions.
  • Add regression tests for routing, HTTP methods, JSON, templates/layouts, middleware, plugins and configuration.

Upgrade notes

  • PHP 8.2 and earlier are no longer supported.
  • Update explicit Laminas\Config\Config imports/type hints to PUXT\Config. Config exceptions now live in PUXT\Config\Exception.
  • Laminas Config Reader, Writer, Factory and Processor APIs are not included.
  • Route 7 requires PSR HTTP Message 2, Container 2 and Simple Cache 3; applications and integrations must have compatible dependencies.
  • PUXT-VX 2.2.2 has incompatible Flysystem/Diactoros constraints and requires a separate upgrade. VX integration has not yet been validated.

Validation

30 tests and 90 assertions pass on PHP 8.3.6, 8.4.22 and 8.5.12 with no warnings or deprecations. Composer validation and platform checks pass.