v4.4.6 (2024-02-24)
- fix: Time::createFromTimestamp() returns Time with UTC by @kenjis in codeigniter4#8544
- fix: [OCI8] getFieldData() returns incorrect
default
value by @kenjis in codeigniter4#8459 - fix: [SQLite3] getFieldData() returns incorrect
primary_key
values by @kenjis in codeigniter4#8460 - fix: [OCI8][Postgre][SQLSRV][SQLite3] change order of properties returned by getFieldData() by @kenjis in codeigniter4#8481
- docs: fix supported SQL Server version by @kenjis in codeigniter4#8489
- fix: [SQLite3] Forge::modifyColumn() messes up table by @kenjis in codeigniter4#8457
- docs: fix incorrect @return type in
ResultInterface-getCustomRowObject()
by @kenjis in codeigniter4#8503 - fix: [Postgre] updateBatch() breaks
char
type data by @kenjis in codeigniter4#8524 - fix: DebugBar block by CSP by @YapsBridging in codeigniter4#8411
- docs: fix
@phpstan-type
in Model by @kenjis in codeigniter4#8543 - fix: [CURLRequest] Multiple HTTP 100 return by API. by @ping-yee in codeigniter4#8466
- fix: PHPDoc types in controller.tpl.php by @kenjis in codeigniter4#8561
- fix: [Session] Redis session race condition by @kenjis in codeigniter4#8323
- test: refactor ImageMagickHandlerTest by @paulbalandan in codeigniter4#8461
- test: refactor GetFieldDataTest by @kenjis in codeigniter4#8480
- refactor: use ternary operators in Helpers by @ddevsr in codeigniter4#8529
- refactor: use official site URLs by @kenjis in codeigniter4#8541
- refactor: remove redundant URL helper loading by @kenjis in codeigniter4#8556
- refactor: small improvement in
loadInNamespace
Autoloader by @ddevsr in codeigniter4#8553
v4.4.5 (2024-01-27)
- fix: bug 4.4.4
spark serve
not working when using Session in Routes.php by @ALTITUDE-DEV-FR in codeigniter4#8389 - fix:
highlightFile()
inBaseExceptionHandler
for PHP 8.3 by @michalsn in codeigniter4#8401 - fix: [Validation] DotArrayFilter returns incorrect array when numeric index array is passed by @grimpirate in codeigniter4#8425
- fix: OCI8 Forge always sets NOT NULL when BOOLEAN is specified by @kenjis in codeigniter4#8440
- fix: DB Seeder may use wrong DB connection during testing by @kenjis in codeigniter4#8447
- fix: [Postgre] QueryBuilder::updateBatch() does not work (No API change) by @kenjis in codeigniter4#8439
- fix: [Postgre] QueryBuilder::deleteBatch() does not work by @kenjis in codeigniter4#8451
- fix: [Email] setAttachmentCID() does not work with buffer string by @kenjis in codeigniter4#8446
- fix: add undocumented Model $allowEmptyInserts by @kenjis in codeigniter4#8456
- refactor: remove overrides for coding-standard v1.7.12 by @paulbalandan in codeigniter4#8386
- refactor: Table class to fix phpstan errors by @kenjis in codeigniter4#8402
- fix: typo in pager default_simple by @jasonliang-dev in codeigniter4#8407
- refactor: improve Forge variable names by @kenjis in codeigniter4#8434
v4.4.4 (2023-12-28)
- fix: Validation rule with
*
gets incorrect values as dot array syntax by @kenjis in codeigniter4#8129 - fix: validation rule
matches
anddiffers
by @kenjis in codeigniter4#8122 - fix: [CURLRequest] skip hostname checks if options 'verify' false by @NicolaeIotu in codeigniter4#8258
- fix: get_filenames() does not follow symlinks by @kenjis in codeigniter4#8298
- fix: change make:command default $group to
App
by @kenjis in codeigniter4#8109 - fix: typo in help message in
spark filter:check
by @kenjis in codeigniter4#8118 - fix: Hot reloading when session is enabled by @michalsn in codeigniter4#8112
- fix: make:cell help message by @kenjis in codeigniter4#8133
- fix: [DebugBar] dark mode timeline "Controller" by @kenjis in codeigniter4#8125
- fix: PHPDoc types in controller.tpl.php by @kenjis in codeigniter4#8144
- fix:
@return
in filter.tpl.php by @kenjis in codeigniter4#8145 - fix: when request body is
0
, $body will be null by @kenjis in codeigniter4#8161 - fix:
spark routes
outputs<unknown>
only when {locale} withuseSupportedLocalesOnly(true)
by @kenjis in codeigniter4#8167 - fix: Undefined array key error in
spark db:table
by @kenjis in codeigniter4#8173 - fix: force_https() redirects to wrong URL when baseURL has subfolder by @kenjis in codeigniter4#8191
- fix: Validation raises TypeError when invalid JSON comes by @kenjis in codeigniter4#8153
- fix: FilterTestTrait Undefined variable $filterClasses by @kenjis in codeigniter4#8195
- fix: Image::save() causes error with webp by @kenjis in codeigniter4#8210
- fix issue where running FileLocator::getClassname() on a directory would cause a PHP error by @colethorsen in codeigniter4#8216
- fix: make Request::getEnv() deprecated by @kenjis in codeigniter4#8234
- fix: ExceptionHandler displays incorrect Exception classname by @kenjis in codeigniter4#8239
- fix: [Cache] Double prefix for increment in FileHandler by @il-coder in codeigniter4#8255
- docs: fix Database Utility Class
getXMLFromResult()
by @kenjis in codeigniter4#8276 - fix: autoload helpers in test bootstrap by @kenjis in codeigniter4#8275
- fix: Model handling of Entity $primaryKey casting by @kenjis in codeigniter4#8282
- fix: Handle non-array JSON in validation by @woodongwong in codeigniter4#8288
- fix: DEPRECATED error in Honeypot by @kenjis in codeigniter4#8316
- fix: [Auto Routing Improved]
spark routes
shows incorrect routes when translateURIDashes is enabled by @kenjis in codeigniter4#8320 - fix: migrations not using custom DB connection of migration runner by @paulbalandan in codeigniter4#8221
- Always return a new instance of a Cell by @michalsn in codeigniter4#8330
- fix: DOMParser cannot see element with
id="0"
by @kenjis in codeigniter4#8360
- [Rector] Apply SingleInArrayToCompareRector by @samsonasik in codeigniter4#8102
- refactor: RedisHandler ttl() calls by @kenjis in codeigniter4#8155
- [Testing] Use assertEqualsWithDelta() when possible by @samsonasik in codeigniter4#8158
- refactor: replace non-boolean if conditions in Model by @kenjis in codeigniter4#8193
- refactor: View classes to fix PHPStan errors by @kenjis in codeigniter4#8208
- refactor: Model by @kenjis in codeigniter4#8260
- replace -1 with E_ALL in error_reporting calls by @ThomasMeschke in codeigniter4#8212
- refactor: apply SimplifyEmptyCheckOnEmptyArrayRector by @kenjis in codeigniter4#8341
- refactor: apply DisallowedEmptyRuleFixerRector by @kenjis in codeigniter4#8344
- refactor: rely on $config property in ViewDecoratorTrait by @mostafakhudair in codeigniter4#8021
- refactor: replace empty() Part 1 by @kenjis in codeigniter4#8345
v4.4.3 (2023-10-26)
- Detailed Error Report is Displayed in Production Environment was fixed. See the Security advisory for more information.
- fix: FilterTestTrait::getFilterCaller() does not support Filter classes as array by @kenjis in codeigniter4#8058
- fix: add dbgroup to model template only when specified as an option by @sammyskills in codeigniter4#8077
- Update phpstan-codeigniter and fix errors on Modules by @paulbalandan in codeigniter4#8036
- fix: [Validation] exact_length does not pass int values by @kenjis in codeigniter4#8088
- fix: [Table] field named
data
will produce bugged output by @ping-yee in codeigniter4#8054 - docs: fix event points descriptions by @kenjis in codeigniter4#8076
- docs: fix helper loading by @kenjis in codeigniter4#8084
v4.4.2 (2023-10-19)
- Fix: [Session] the problem of secondary retrieving values in RedisHandler by @ping-yee in codeigniter4#7887
- fix:
spark migrate
-g
option by @kenjis in codeigniter4#7894 - fix: [DebugBar] dark mode
timeline-color-open
color text onDebug
by @ddevsr in codeigniter4#7907 - fix: base_url()/site_url() does not work on CLI by @kenjis in codeigniter4#7901
- Fix: Routing::loadRoutes() in windows do not validate correctly $routesFiles by @pjsde in codeigniter4#7930
- fix: Services::request() should call AppServices instead static by @pjsde in codeigniter4#7985
- fix: lang() may return false by @kenjis in codeigniter4#7966
- fix: CI returns "200 OK" when PageNotFound by @kenjis in codeigniter4#8011
- fix: spark may not show exceptions or show backtrace as json by @kenjis in codeigniter4#7962
- fix: CLI prompt validation message by @kenjis in codeigniter4#7977
- fix: CSP style nonce is added even if honeypot is not attached by @kenjis in codeigniter4#8025
- fix: named routes don't work with spark by @kenjis in codeigniter4#8028
- fix: add a primary key to an existing table by @michalsn in codeigniter4#8031
- fix: reverse route for
''
is notfalse
by @kenjis in codeigniter4#8024 - fix:
spark routes
may show incorrect route names by @kenjis in codeigniter4#8040 - fix: Factories caching bug by @kenjis in codeigniter4#8037
- fix: file sort order in Files DebugBar by @kenjis in codeigniter4#8048
- fix: check for CSRF token in the raw body by @michalsn in codeigniter4#7915
- fix: add types to View $filters and $plugins by @paulbalandan in codeigniter4#7885
- test: use PHP_VERSION_ID instead of PHP_VERSION by @kenjis in codeigniter4#7913
- [PHP 8.3] refactor: ReflectionProperty::setValue() signature deprecation by @kenjis in codeigniter4#7911
- refactor: remove unneeded arguments to session by @paulbalandan in codeigniter4#7919
- fix: types for common functions by @paulbalandan in codeigniter4#7917
- Refactor: Apply PHPStan rule "Short ternary operator is not allowed" to RouteCollection by @pjsde in codeigniter4#7947
- refactor: remove $_SESSION from methods and functions by @pjsde in codeigniter4#7982
- refactor: if condition in OCI8/Connection.php by @kenjis in codeigniter4#7994
- style: remove unnecessary () in Toolbar by @kenjis in codeigniter4#8013
- refactor: replace deprecated
Services::request(config, false)
by @kenjis in codeigniter4#7998 - refactor: delete duplicate code for Composer loading by @kenjis in codeigniter4#8004
- [Rector] Apply BooleanInIfConditionRuleFixerRector by @samsonasik in codeigniter4#7951
v4.4.1 (2023-09-05)
- docs: add missing Config updates for Hot Reloading by @kenjis in codeigniter4#7862
- fix: auto route legacy does not work by @kenjis in codeigniter4#7871
- fix: Factories may not return shared instance by @kenjis in codeigniter4#7868
- fix: replace
config(DocTypes::class)
withnew DocTypes()
by @kenjis in codeigniter4#7872 - fix: FeatureTest may cause risky tests by @kenjis in codeigniter4#7867
- fix: reverse routing causes ErrorException by @kenjis in codeigniter4#7880
- fix: Email library forces to switch to TLS when setting port 465 by @kenjis in codeigniter4#7883
- fix: [DebugBar] make CSS rotate class less broad by @sanchawebo in codeigniter4#7882
- fix: FeatureTest fails when forceGlobalSecureRequests is true by @kenjis in codeigniter4#7890
v4.4.0 (2023-08-25)
- fix: URI::setSegment() accepts the last +2 segment without Exception by @kenjis in codeigniter4#7251
- feat: custom exception handler by @kenjis in codeigniter4#7087
- Clean router config by @lonnieezell in codeigniter4#7380
- feat: add ValidationInterface::getValidated() by @kenjis in codeigniter4#7429
- [4.4] refactor: moving RedirectException. by @iRedds in codeigniter4#7545
- Remove Config\App Session items by @kenjis in codeigniter4#7255
- perf: RouteCollection $routes optimization by @kenjis in codeigniter4#7175
- Remove Config\App Security items by @kenjis in codeigniter4#7630
- refactor: extract ResponseCache class for Web Page Caching by @kenjis in codeigniter4#7644
- fix: change Services::session() config param type by @kenjis in codeigniter4#7671
- feat: add Factories::define() to explicitly override a class by @kenjis in codeigniter4#7733
- Return signatures of Autoloader's loaders should be void by @paulbalandan in codeigniter4#7747
- fix: remove instantiation of Response in
Services::exceptions()
by @kenjis in codeigniter4#7670 - refactor: move callExit() to index.php by @kenjis in codeigniter4#7800
- rework: URI creation and URL helper by @kenjis in codeigniter4#7282
- fix: incorrect segment number in URI::getSegment() exception message by @kenjis in codeigniter4#7267
- fix: can't change and override valid locales by @kenjis in codeigniter4#7309
- fix: Validation::check() does not accept array rules by @kenjis in codeigniter4#7424
- fix: directory separator from routing file. by @ping-yee in codeigniter4#7487
- [4.4] Fix output buffering by @iRedds in codeigniter4#7500
- fix: [Auto Routing Improved] one controller method has more than one URI when $translateURIDashes is true by @kenjis in codeigniter4#7422
- fix: [4.4] merge Exception::maskSensitiveData() fix into BaseExceptionHandler by @kenjis in codeigniter4#7736
- feat: Hot Reloading by @lonnieezell in codeigniter4#7489
- feat:
renderSection
option to retained data by @addngr in codeigniter4#7126 - feat: [Auto Routing Improved] fallback to default method by @kenjis in codeigniter4#7162
- feat: Filter Arguments with $filters in Config\Filters by @kenjis in codeigniter4#7159
- feat: New method DownloadResponse::inline() by @iRedds in codeigniter4#7207
- feat: add
--host
option tospark routes
by @kenjis in codeigniter4#7213 - feat: add
Entity::injectRawData()
to avoid name collision by @kenjis in codeigniter4#7208 - feat: [MySQLi] add config to use MYSQLI_OPT_INT_AND_FLOAT_NATIVE by @kai890707 in codeigniter4#7265
- feat: add new setter/getter for Entity by @kenjis in codeigniter4#7230
- feat: [SQLSRV] getFieldData() supports nullable by @kenjis in codeigniter4#7301
- feat: HTML Table data keys synchronize order with Heading keys by @rumpfc in codeigniter4#7409
- feat: [Validation] add method to get the validated data by @kenjis in codeigniter4#7420
- feat: [Auto Routing Improved] Module Routing by @kenjis in codeigniter4#7416
- feat: function array_group_by by @rumpfc in codeigniter4#7438
- feat: add Session::close() by @kenjis in codeigniter4#7508
- feat:
GDHandler
makeWebP
with option quality by @ddevsr in codeigniter4#7506 - feat: [Auto Routing Improved] fallback to default controller's default method by @kenjis in codeigniter4#7406
- Add access to
full_path
index of uploaded files by @JamminCoder in codeigniter4#7541 - [4.4] Rework redirect exception by @iRedds in codeigniter4#7610
- feat: [CURLRequest] add option for Proxy by @kenjis in codeigniter4#7632
- feat: improve View route output by @kenjis in codeigniter4#7646
- feat: add SiteURI class by @kenjis in codeigniter4#7252
- feat: add SiteURIFactory by @kenjis in codeigniter4#7256
- feat: [Factories] Config caching by @kenjis in codeigniter4#7696
- refactor: remove Cookie config items in Config\App by @kenjis in codeigniter4#7221
- refactor: deprecate $request and $response in Exceptions::__construct() by @kenjis in codeigniter4#7232
- refactor: use config(Cache::class) in CodeIgniter by @kenjis in codeigniter4#7297
- [4.4] refactor: a single point of sending the Response. by @iRedds in codeigniter4#7519
- refactor: [Entity] fix incorrect return value by @kenjis in codeigniter4#7544
- [4.4] refactor: use ::class to config() param by @kenjis in codeigniter4#7619
- refactor: drop support for
Config\App::$proxyIPs = ''
by @kenjis in codeigniter4#7621 - refactor: extract DefinedRouteCollector by @kenjis in codeigniter4#7653
- refactor: remove uneeded
if
in Commands\Utilities\Routes by @kenjis in codeigniter4#7661 - refactor: [4.4] add types for phpstan by @kenjis in codeigniter4#7723
- Remove trimming logic of
Autoloader::loadClass()
by @paulbalandan in codeigniter4#7763
See CHANGELOG_4.3.md