From b1e2dece4a9598b55acaefcdf02eac633c52452e Mon Sep 17 00:00:00 2001 From: Lonnie Ezell Date: Tue, 14 Jul 2020 23:43:48 -0500 Subject: [PATCH] Prep for 4.0.4 release --- system/CodeIgniter.php | 2 +- user_guide_src/source/changelogs/next.rst | 3 +- user_guide_src/source/changelogs/v4.0.4.rst | 50 +++++++++++++++++++-- user_guide_src/source/conf.py | 2 +- 4 files changed, 50 insertions(+), 7 deletions(-) diff --git a/system/CodeIgniter.php b/system/CodeIgniter.php index cee14b34713a..585926847d94 100644 --- a/system/CodeIgniter.php +++ b/system/CodeIgniter.php @@ -66,7 +66,7 @@ class CodeIgniter /** * The current version of CodeIgniter Framework */ - const CI_VERSION = '4.0.3'; + const CI_VERSION = '4.0.4'; /** * App startup time. diff --git a/user_guide_src/source/changelogs/next.rst b/user_guide_src/source/changelogs/next.rst index 8778082fccc0..aa980def4415 100644 --- a/user_guide_src/source/changelogs/next.rst +++ b/user_guide_src/source/changelogs/next.rst @@ -8,5 +8,4 @@ Release Date: Not released Enhancements ------------ -- Two new functions were added to RedirectResponse, ``withHeaders()`` and ``withCookies()`` that copy the current - cookies and headers from the global Response instance. +- diff --git a/user_guide_src/source/changelogs/v4.0.4.rst b/user_guide_src/source/changelogs/v4.0.4.rst index cad8828bbdd0..42ce88aacbec 100644 --- a/user_guide_src/source/changelogs/v4.0.4.rst +++ b/user_guide_src/source/changelogs/v4.0.4.rst @@ -1,15 +1,59 @@ Version 4.0.4 ==================================================== -Release Date: Unreleased +Release Date: July 15, 2020 **4.0.4 release of CodeIgniter4** -The location for the SQLite3 database has changed and by default will be now located in a ``writable`` folder instead of the ``public`` folder. - Enhancements: +- The location for the SQLite3 database has changed and by default will be now located in a ``writable`` folder instead of the ``public`` folder. +- New CLI command: ``cache:clear`` that will destroy all data within the current cache engine. +- Thanks to samsonasik, we have several libraries brought up to 100% test coverage. +- A few small performance increases. Every ounce matters! +- ``getFieldData()`` in the database results class now returns column type and length. +- Default .htaccess file updated to work better with extended characters. +- New Testing Feature: :doc:`Fabricator ` makes creating mock classes simple and repeatable in your tests. +- Model class can now have the callbacks overridden at runtime. Useful for testing. +- A number of improvements to :doc:`Feature Tests ` in general. +- New :doc:`command() helper function ` to programatically run your CLI commands. Useful for testing and cron jobs. +- New command, ``make:seeder`` to generate a :doc:`Database Seed class ` skeleton file. +- Colors now available on the CLI within Windows, as well as other Windows-related CLI improvements. +- New helper :doc:`mb_url_title ` that functions like ``url_title`` but automatically escapes and extended URL characters. +- :doc:`Image library ` now supports ``webp` images. +- Added Unicode support for regular expressions in the Router. +- Added support for removing hidden folders in the :doc:`delete_files ` helper +- ``fetchGlobal`` in the Request class now supports applying filters to arrays of data, not just the first item. +- ``file`` validation now works with arrays of files. +- URI class now supports a ``setSilent()`` method that will disable the throwing of Exceptions +- new argument to ``URI::getSegment()`` that allows us to change the default value returned if nothing exists. +- Implemented a ``withResource()`` in Image so that you can use method chaining instead of using the provided getResource() (used in tests). To just compress your image. +- Cookies and headers can be copied from the global Response object when doing a redirect using the new ``withCookies()`` and ``withHeaders()`` methods. Bugs Fixed: - Fixed location for the SQLite3 database which by default will be now located in a ``writable`` folder instead of the ``public`` folder. +- Fixed bug where ``force_https`` could add ``https://`` a second time. +- Fixed a bug with CurlRequest that could result in incorrect "100 Continue" headers. +- Image::save() bug fixed when ``$target`` parameter was ``null`` +- fixes for ``set_checkbox()`` and ``set_radio()`` when the $default parameter is set to ``true`` +- fix for result object handling in Model class . +- fixed escape character SQLite database +- fix for inserts on Postgres and Entities when the primary key was null +- CLI scripts can now correctly recognize dashes within arguments. +- CURLRequest now properly sets content length with multipart data +- Misc. stability improvements for the ImageMagick handler +- setting validation errors within a config file should now work +- Unicode characters are not escaped when saving JSON from Entities. +- redirecting with a custom HTTP code should work correctly now +- Time::setTimezone now working correctly +- added full outer join support for Postgres +- some cast items in the Entity (like array, json) were not being set correctly during a ``fill()`` process. +- Fixed bug in Image GD handler that would try to compress images twice in certain cases +- Ensure get translation output logic work on selected locale, dashed locale, and fallback "en" +- Fix is_unique/is_not_unique validation called on POST/PUT via API in Postgresql + + + + + diff --git a/user_guide_src/source/conf.py b/user_guide_src/source/conf.py index 679cf7ffc8c5..c0d12fa65209 100644 --- a/user_guide_src/source/conf.py +++ b/user_guide_src/source/conf.py @@ -24,7 +24,7 @@ version = '4.0' # The full version, including alpha/beta/rc tags. -release = '4.0.3' +release = '4.0.4' # -- General configuration ---------------------------------------------------