From 190f720253b43d9e478a8835633efdd64d11403b Mon Sep 17 00:00:00 2001 From: "John Paul E. Balandan, CPA" Date: Mon, 20 Jan 2025 02:08:57 +0800 Subject: [PATCH] Prep for 4.6.0 release (#9419) --- CHANGELOG.md | 63 +++++++++++++++++++ phpdoc.dist.xml | 4 +- system/CodeIgniter.php | 2 +- user_guide_src/source/changelogs/v4.6.0.rst | 25 +------- user_guide_src/source/conf.py | 4 +- .../source/installation/upgrade_460.rst | 21 ++++--- 6 files changed, 82 insertions(+), 37 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 200b7adb037c..876a767edb70 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,68 @@ # Changelog +## [v4.6.0](https://github.com/codeigniter4/CodeIgniter4/tree/v4.6.0) (2025-01-19) +[Full Changelog](https://github.com/codeigniter4/CodeIgniter4/compare/v4.5.8...v4.6.0) + +### Breaking Changes + +* refactor: remove deprecated failValidationError() in API\ResponseTrait by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8793 +* refactor: remove depreacted ResponseInterface::getReason() by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8841 +* refactor: remove deprecated Logger::cleanFilenames() and TestLogger::cleanup() by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8843 +* fix: Exception rework by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8728 +* fix: DefinedRouteCollector to use RouteCollectionInterface by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8911 +* fix: View::renderSection() return type by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8965 +* feat: [Filters] enables a filter to run more than once with different arguments by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8977 +* fix: add check for duplicate Registrar Auto-Discovery runs by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9073 +* fix: Time loses microseconds by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9081 +* feat: fix spark db:table causes errors with table name including special chars by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8748 +* [4.6] fix: Time::createFromTimestamp() change for PHP 8.4 by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9105 +* fix: Time::setTimestamp()'s different behavior than DateTime by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9106 +* [4.6] fix: inconsistency in detailed error reporting by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9144 +* [4.6] feat: force PHP default 32 chars length at 4 bits to Session ID by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9139 +* fix: prioritize headers set by the `Response` class by @michalsn in https://github.com/codeigniter4/CodeIgniter4/pull/9235 + +### Fixed Bugs + +* [4.6] fix: add validation message for min_dims by @christianberkman in https://github.com/codeigniter4/CodeIgniter4/pull/8988 +* fix: [Filters] normalize `$filters` arguments by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8994 +### Enhancements +* feat: [FileCollection] add function to reatain multiple patterns by @christianberkman in https://github.com/codeigniter4/CodeIgniter4/pull/8960 +* feat: [Validation] add `min_dims` rule in FileRules by @christianberkman in https://github.com/codeigniter4/CodeIgniter4/pull/8966 +* feat: add `foundRows` option for MySQLi config by @ducng99 in https://github.com/codeigniter4/CodeIgniter4/pull/8979 +* feat: `spark filter:check` shows filter classnames by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8985 +* feat: add BaseConnection::resetTransStatus() by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8767 +* feat: add Services::resetServicesCache() to reset services cache by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9012 +* feat: add "400 Bad Request" page for end users by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9044 +* feat: add directives to `phpini:check` command by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9117 +* feat: multiple hostname routing by @ddevsr in https://github.com/codeigniter4/CodeIgniter4/pull/9150 +* [4.6] feat: workaround for implicit nullable deprecations in PHP 8.4 by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9140 +* feat: support CURL HTTP3 by @ddevsr in https://github.com/codeigniter4/CodeIgniter4/pull/9145 +* feat: design info environment top in `error_exception` by @ddevsr in https://github.com/codeigniter4/CodeIgniter4/pull/9241 +* feat: [Validation] add support for `$dbGroup` as parameter in `is_unique` and `is_not_unique` by @maniaba in https://github.com/codeigniter4/CodeIgniter4/pull/9216 +* feat: added the `namespace` option to the `publish` command by @dimtrovich in https://github.com/codeigniter4/CodeIgniter4/pull/9278 +* chore: update `Kint` to v6.0 by @ddevsr in https://github.com/codeigniter4/CodeIgniter4/pull/9289 +* feat: CURL option `force_ip_resolve` by @ddevsr in https://github.com/codeigniter4/CodeIgniter4/pull/9194 +* feat: add SQLite3 config synchronous by @michalsn in https://github.com/codeigniter4/CodeIgniter4/pull/9202 +* feat: Differentiate between kilobyte/kibibyte and megabyte/mebibyte by @ThomasMeschke in https://github.com/codeigniter4/CodeIgniter4/pull/9277 +* feat: Strict locale negotiation by @neznaika0 in https://github.com/codeigniter4/CodeIgniter4/pull/9360 +* fix: Add support for multibyte strings by @neznaika0 in https://github.com/codeigniter4/CodeIgniter4/pull/9372 +* feat: add page start end total to `PagerRenderer` by @murilohpucci in https://github.com/codeigniter4/CodeIgniter4/pull/9371 +* feat: New command `lang:sync` by @neznaika0 in https://github.com/codeigniter4/CodeIgniter4/pull/9023 +* feat: additional `opcache` setting in check php.ini by @ddevsr in https://github.com/codeigniter4/CodeIgniter4/pull/9032 + +### Refactoring + +* [4.6] refactor: Validation rules and tests by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/8975 +* [4.6] refactor: add `: void` by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9013 +* refactor: remove dependency on BaseConnection in TableName by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/9104 +* refactor: add return type to closuer in FilterCheck by @neznaika0 in https://github.com/codeigniter4/CodeIgniter4/pull/9190 +* refactor: Remove deprecated `RedirectException` by @neznaika0 in https://github.com/codeigniter4/CodeIgniter4/pull/9399 +* refactor: Remove deprecated `EVENT_PRIORITY_*` by @neznaika0 in https://github.com/codeigniter4/CodeIgniter4/pull/9401 +* refactor: Remove deprecated `View::$currentSection` by @neznaika0 in https://github.com/codeigniter4/CodeIgniter4/pull/9403 +* refactor: Remove deprecated `Cache::$storePath` by @neznaika0 in https://github.com/codeigniter4/CodeIgniter4/pull/9404 +* refactor: Remove deprecated `Config\Format::getFormatter()` by @neznaika0 in https://github.com/codeigniter4/CodeIgniter4/pull/9405 +* refactor: Remove deprecation related to cookies by @neznaika0 in https://github.com/codeigniter4/CodeIgniter4/pull/9406 + ## [v4.5.8](https://github.com/codeigniter4/CodeIgniter4/tree/v4.5.8) (2025-01-19) [Full Changelog](https://github.com/codeigniter4/CodeIgniter4/compare/v4.5.7...v4.5.8) diff --git a/phpdoc.dist.xml b/phpdoc.dist.xml index ec53ca076b8a..533ad3e033f0 100644 --- a/phpdoc.dist.xml +++ b/phpdoc.dist.xml @@ -5,12 +5,12 @@ xmlns="https://www.phpdoc.org" xsi:noNamespaceSchemaLocation="https://docs.phpdoc.org/latest/phpdoc.xsd" > - CodeIgniter v4.5 API + CodeIgniter v4.6 API api/build/ api/cache/ - + system diff --git a/system/CodeIgniter.php b/system/CodeIgniter.php index d023769fc41b..35f97f748fce 100644 --- a/system/CodeIgniter.php +++ b/system/CodeIgniter.php @@ -55,7 +55,7 @@ class CodeIgniter /** * The current version of CodeIgniter Framework */ - public const CI_VERSION = '4.5.8'; + public const CI_VERSION = '4.6.0'; /** * App startup time. diff --git a/user_guide_src/source/changelogs/v4.6.0.rst b/user_guide_src/source/changelogs/v4.6.0.rst index 91f61f5a6a2a..e452483ce872 100644 --- a/user_guide_src/source/changelogs/v4.6.0.rst +++ b/user_guide_src/source/changelogs/v4.6.0.rst @@ -2,7 +2,7 @@ Version 4.6.0 ############# -Release Date: Unreleased +Release Date: January 19, 2025 **4.6.0 release of CodeIgniter4** @@ -10,12 +10,6 @@ Release Date: Unreleased :local: :depth: 3 -********** -Highlights -********** - -- TBD - ******** BREAKING ******** @@ -33,7 +27,6 @@ The following breaking changes have been made accordingly: - ``Validation::setRule()`` now throws ``CodeIgniter\Exceptions\InvalidArgumentException`` instead of ``TypeError``. - - ``CriticalError`` now extends ``CodeIgniter\Exceptions\RuntimeException`` instead of ``Error``. - ``DatabaseException`` now extends ``CodeIgniter\Exceptions\RuntimeException`` @@ -263,18 +256,9 @@ Pagination - Added a new feature to get the total and the range number of items of the current page. See :ref:`Displaying the Number of Items on the Page ` for more details. -Testing -======= - Database ======== -Query Builder -------------- - -Forge ------ - Others ------ @@ -284,9 +268,6 @@ Others - SQLite3 has a new Config item ``synchronous`` to adjust how strict SQLite is at flushing to disk during transactions. Modifying this can be useful if we use journal mode set to ``WAL``. -Model -===== - Libraries ========= @@ -299,9 +280,6 @@ Libraries - **Validation:** Rules: ``is_unique`` and ``is_not_unique`` now accept the optional ``dbGroup`` as part of the first parameter. See :ref:`Validation `. -Helpers and Functions -===================== - Others ====== @@ -342,7 +320,6 @@ The following changes have been made accordingly: ``CodeIgniter\Exceptions\BadMethodCallException``. - Classes that threw ``BadFunctionCallException`` have been changed to throw ``CodeIgniter\Exceptions\BadFunctionCallException``. - - ``RedirectException`` now extends ``CodeIgniter\Exceptions\RuntimeException`` instead of ``Exception``. - ``PageNotFoundException`` now extends ``CodeIgniter\Exceptions\RuntimeException`` diff --git a/user_guide_src/source/conf.py b/user_guide_src/source/conf.py index 34452f7d37f9..fbd9cd97d733 100644 --- a/user_guide_src/source/conf.py +++ b/user_guide_src/source/conf.py @@ -23,10 +23,10 @@ copyright = '2019-' + str(year_now) + ' CodeIgniter Foundation' # The short X.Y version. -version = '4.5' +version = '4.6' # The full version, including alpha/beta/rc tags. -release = '4.5.8' +release = '4.6.0' # -- General configuration --------------------------------------------------- diff --git a/user_guide_src/source/installation/upgrade_460.rst b/user_guide_src/source/installation/upgrade_460.rst index f0bbd9f08c70..bb78d0f47e32 100644 --- a/user_guide_src/source/installation/upgrade_460.rst +++ b/user_guide_src/source/installation/upgrade_460.rst @@ -1,5 +1,5 @@ ############################# -Upgrading from 4.5.x to 4.6.0 +Upgrading from 4.5.8 to 4.6.0 ############################# Please refer to the upgrade instructions corresponding to your installation method. @@ -12,10 +12,6 @@ Please refer to the upgrade instructions corresponding to your installation meth :local: :depth: 2 -********************** -Mandatory File Changes -********************** - **************** Breaking Changes **************** @@ -221,7 +217,16 @@ All Changes This is a list of all files in the **project space** that received changes; many will be simple comments or formatting that have no effect on the runtime: -- app/Config/Feature.php -- app/Config/Constants.php - app/Config/Cache.php -- app/Config/Format.php \ No newline at end of file +- app/Config/Constants.php +- app/Config/Database.php +- app/Config/Feature.php +- app/Config/Format.php +- app/Config/Kint.php +- app/Config/Routing.php +- app/Config/Security.php +- app/Views/errors/html/debug.css +- app/Views/errors/html/error_400.php +- preload.php +- public/index.php +- spark