Skip to content

Conversation

@tommitchelmore
Copy link
Contributor

@tommitchelmore tommitchelmore commented Aug 26, 2025

Dependency Upgrades

This PR upgrades the major version of several dependencies

  • mindplay/middleman - 3.x → 4.x - No breaking changes, required changing two instances of dispatch() to the PSR-compliant handle() (see the upgrade guide).
  • laminas/laminas-diactoros - 2.x → 3.x - No breaking changes (see the upgrade guide).
  • psr/container - 1.x → 2.x - No breaking changes
  • psr/http-message - 1.x → 2.x - No breaking changes
  • php-di/php-di - 6.x → 7.x - Required upstream by Lumberjack, no breaking changes (required a change to the container creation in tests - see upgrade guide).

Breaking Changes

  • When registering a route, you can no longer use first-class callables
    • SomeController::staticMethod(...)SomeController::class, 'staticMethod']
    • This is because in PHP 8.1 Class::method creates a Callable which no longer reports it's name to is_callable (all it returns is 'Closure'). I'm not sure why this was working in PHP 8.1-3 but this is now in-line with Laravel's routing.

Note on testing

Two tests were modified regarding middleware dispatching. This is to reflect Middleman removing dispatch in favour of the PSR compatible handle method.

@tommitchelmore tommitchelmore self-assigned this Aug 26, 2025
@adamtomat adamtomat changed the title Upgrade dependencies Upgrade dependencies to support PHP 8.4 Oct 13, 2025
@adamtomat adamtomat merged commit 95329cb into master Oct 13, 2025
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants