Back to Codeigniter4

Version 4.1.5

user_guide_src/source/changelogs/v4.1.5.rst

4.7.22.5 KB
Original Source

Version 4.1.5 #############

Release Date: November 8, 2021

4.1.5 release of CodeIgniter4

.. contents:: :local: :depth: 2

BREAKING

  • Fixed a bug <https://github.com/codeigniter4/CodeIgniter4/issues/2913>_ on CSRF protection. Now CSRF protection works on PUT/PATCH/DELETE requests when CSRF filter is applied. If you use such requests, you need to send CSRF token.
  • In the previous version, if you didn't provide your own headers, CURLRequest would send the request-headers from the browser, due to a bug. As of this version, it does not send them.
  • Fixed BaseBuilder::insertBatch() return value for testMode. Now it returns SQL string array instead of a number of affected rows. This change was made because of maintaining compatibility between returning types for batch methods. Now the returned data type for BaseBuilder::insertBatch() is the same as the updateBatch() method.
  • Major optimizations have been made to the way data is processed in BaseBuilder::insertBatch() and BaseBuilder::updateBatch() methods. This resulted in reduced memory usage and faster query processing. As a trade-off, the result generated by the $query->getOriginalQuery() method was changed. It no longer returns the query with the binded parameters, but the actual query that was run.

Enhancements

  • Added Cache config for reserved characters
  • The :ref:addForeignKey()<adding-foreign-keys> function of the Forge class can now define composite foreign keys in an array
  • The dropKey function of the Forge class can remove key
  • Now _ can be used as separators in environment variable. See :ref:env-var-namespace-separator.
  • Added Multiple filters for a route and Classname filter
  • Reduced memory usage of insertBatch() and updateBatch()
  • Added :ref:Session based CSRF Protection <csrf-protection-methods>
  • Added valid_url_strict rule for Validation
  • Debug Toolbar
    • Added formatted query string to timeline
    • Improved keyword highlighting and escaping of query strings

Changes

  • Always escape identifiers in the set, setUpdateBatch, and insertBatch functions in BaseBuilder.

Deprecations

  • Deprecated CodeIgniter\\Cache\\Handlers\\BaseHandler::RESERVED_CHARACTERS in favor of the new config property

Bugs Fixed

See the repo's CHANGELOG_4.1.md <https://github.com/codeigniter4/CodeIgniter4/blob/develop/changelogs/CHANGELOG_4.1.md>_ for a complete list of bugs fixed.