UserFrosting 4.5 focuses on cleaning up deprecated code, adding Composer 2 support and other small fix and improvements.
The wikimedia/composer-merge-plugin
dependency was updated to from ^1.4.0
to ^2.1.0
(#1117). This enabled Composer 2 support. Performance should be through the roof!
Lando is a free, open source, cross-platform, local development environment and DevOps tool built on Docker container technology and developed by Tandem. Designed to work with most major languages, frameworks and services, Lando provides an easy way for developers of all skill levels to specify simple or complex requirements for their projects, and then quickly get to work on them. To learn more, check out our new Lando guide.
As of UserFrosting 4.5.0, support for PHP version 7.1 has officially been removed. Support for PHP 7.1 was deprecated in 4.4.0 as it had reached End Of Life. PHP version 7.4 or higher is now recommended.
UserFrosting does not currently support PHP 8 as many dependencies still need to be updated. Don't hesitate to contribute to the project by submitting a Pull Request on GitHub if you want to contribute to this.
As of UserFrosting 4.5.0, the NodeJS minimum requirement is changed from >=10.12.0
to ^12.17.0 || >=14.0.0
. NPM minimum requirement is also changed from >=6.0.0
to >=6.14.4
(#1138).
The following deprecated class and methods have been removed. This could turn out to be a breaking change for your project if you were still using deprecated methods.
UserFrosting\System\Bakery\Migration
(deprecated in 4.2.0).UserFrosting\Tests\DatabaseTransactions
(deprecated in 4.2.0).UserFrosting\Sprinkle\Core\Tests\ControllerTestCase
(deprecated in 4.2.2).UserFrosting\Sprinkle\Core\Model\UFModel
(deprecated in 4.1).UserFrosting\Sprinkle\Core\Sprunje\Sprunje::getResults
(deprecated in 4.1.7).UserFrosting\Sprinkle\Account\Database\Models\User::exists
(deprecated in 4.1.7).UserFrosting\Sprinkle\Core\Database\Models\Model::export
(deprecated in 4.1.8).UserFrosting\Sprinkle\Core\Database\Models\Model::queryBuilder
(deprecated in 4.1.8).UserFrosting\Sprinkle\Core\Database\Relations\Concerns\Unique::withLimit
(deprecated in 4.1.7).UserFrosting\Sprinkle\Core\Database\Relations\Concerns\Unique::withOffset
(deprecated in 4.1.7).UserFrosting\Sprinkle\Core\Error\RendererWhoopsRenderer::getResourcesPath
.UserFrosting\Sprinkle\Core\Error\RendererWhoopsRenderer::setResourcesPath
.ifCond
(Deprecated in 4.1).$dependencies
properties.determineRedirectOnLogin
service (deprecated in 4.1.10).getenv()
with env()
(#1121). setup:smtp
bakery command (#1077, that is now renamed as setup:mail
(old name still available as an alias).UserFrosting\Sprinkle\Core\Bakery\Helper\NodeVersionCheck
with new UserFrosting\Sprinkle\Core\Util\VersionValidator
class..php_cs
to .php_cs.dist
.phpunit.xml
to phpunit.xml.dist
.See the Changelog for the complete list of changes included in this release.
Upgrading UserFrosting to 4.5.x
is as simple as getting the new files and updating dependencies, migrations and assets! If you first installed UserFrosting using git, a simple git pull
or git pull upstream master
. Once you have the new files, simply use composer and Bakery to get up to date with everything else:
$ composer update
$ php bakery bake
Upgrating your sprinkle for UserFrosting 4.5.0 should be as simple as making sure you don't use any of the deprecated code that was removed. This souldn't be an issue if you already upgraded your code when the class/methods where initially deprecated. Otherwise, you can go through the previous version release notes, or search for the list above and upgrade the code.