5.0.0
This is the first official release of UserFrosting 5 !
For more information : https://learn.userfrosting.com/upgrading/46-to-50
What is UserFrosting 5 ?
UserFrosting 5 is the culmination of more than a year of work by @lcharette. It is a complete rewrite of the backend PHP code. And by complete, we really mean complete. No class was left untouched! The main updates are :
- Slim 3 upgraded to Slim 4
- Pimple Container replaced with PHP-DI
- Frontend assets management replaced with Webpack Encore
- New Sprinkle system, now with extra modularity
- Skeleton type main repo for easier
- Built in sprinkle are now managed by Composer
- New Event dispatcher and listener services
- New Bakery command for easier debugging
- 100% test coverage and quality check through PHPStan
- And so much more
The Slim migration itself is a big deal. While brining UF to a more modern era, it had the most impact on the core changes applied to the UserFrosting framework. Most changes were made in response to the new Slim 4 requirements and changes. It also required the use of a new Dependency Injector, which itself really brought UF5 to a whole new level. You should really check out PHP-DI, it's awesome!
Basically, UF5 uses updated dependencies, all of existing code have been updated to new standard and new test coverage should provide better long term stability.
What UserFrosting 5 isn't ?
UF5 is not a drop-in replacement for UF4. The whole backend has been rewritten, with a new container, sprinkle system, etc. which will require most sprinkle to be updated manually.
UserFrosting 5 also offers the same frontend as UserFrosting 4. But the bases have been set for the future, with Webpack Encore and the current AdminLTE theme separated in it's own Sprinkle providing the necessary tools for Vue.js or other similar frontend.
Don't forget to contribute through our Open Collective or buying a coffee round.
Full Changelog: v4.6.7...5.0.0