Skip to content

Conversation

tommitchelmore
Copy link

@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

  • Now requires PHP 8.4 ⚠️
  • 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
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.

1 participant