Version 4.1.4
Release Date: September 6, 2021
4.1.4 release of CodeIgniter4
This release focuses on code style. All changes (except those noted below) are cosmetic to bring the code in line with the new CodeIgniter Coding Standard (based on PSR-12).
Breaking Changes
The following methods were changed from “public” to “protected” to match their parent class methods and better align with their uses:
CodeIgniter\Database\MySQLi\Connection::execute()
CodeIgniter\Database\MySQLi\Connection::_fieldData()
CodeIgniter\Database\MySQLi\Connection::_indexData()
CodeIgniter\Database\MySQLi\Connection::_foreignKeyData()
CodeIgniter\Database\Postgre\Builder::_like_statement()
CodeIgniter\Database\Postgre\Connection::execute()
CodeIgniter\Database\Postgre\Connection::_fieldData()
CodeIgniter\Database\Postgre\Connection::_indexData()
CodeIgniter\Database\Postgre\Connection::_foreignKeyData()
CodeIgniter\Database\SQLSRV\Connection::execute()
CodeIgniter\Database\SQLSRV\Connection::_fieldData()
CodeIgniter\Database\SQLSRV\Connection::_indexData()
CodeIgniter\Database\SQLSRV\Connection::_foreignKeyData()
CodeIgniter\Database\SQLite3\Connection::execute()
CodeIgniter\Database\SQLite3\Connection::_fieldData()
CodeIgniter\Database\SQLite3\Connection::_indexData()
CodeIgniter\Database\SQLite3\Connection::_foreignKeyData()
CodeIgniter\Images\Handlers\GDHandler::_flatten()
CodeIgniter\Images\Handlers\GDHandler::_flip()
CodeIgniter\Images\Handlers\ImageMagickHandler::_flatten()
CodeIgniter\Images\Handlers\ImageMagickHandler::_flip()
CodeIgniter\Test\Mock\MockIncomingRequest::detectURI()
CodeIgniter\Test\Mock\MockSecurity.php::sendCookie()
To be compatible with the strict inheritance checks of PHP 8.1, the following method signatures were added return types to match their parents’ signatures whenever possible:
CodeIgniter\Cookie\Cookie::offsetExists()
CodeIgniter\Cookie\Cookie::offsetSet()
CodeIgniter\Cookie\Cookie::offsetUnset()
CodeIgniter\Cookie\CookieStore::getIterator()
CodeIgniter\I18n\Time::__wakeup()
CodeIgniter\Test\Filters\CITestStreamFilter::filter()
Related to the strict inheritance checks of PHP 8.1, the following session handlers implementing
SessionHandlerInterface
have their public methods modified to match the interface:CodeIgniter\Session\Handlers\ArrayHandler
CodeIgniter\Session\Handlers\DatabaseHandler
CodeIgniter\Session\Handlers\FileHandler
CodeIgniter\Session\Handlers\MemcachedHandler
CodeIgniter\Session\Handlers\RedisHandler