diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index a89ff5aad3..14e4456f9d 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -19,7 +19,7 @@ on:
env:
# All versions should be declared here
- PHALCON_VERSION: 5.5.0
+ PHALCON_VERSION: 5.5.1
ZEPHIR_PARSER_VERSION: 1.6.0
# For tests
diff --git a/CHANGELOG-5.0.md b/CHANGELOG-5.0.md
index 5b98669fd2..79911a9284 100644
--- a/CHANGELOG-5.0.md
+++ b/CHANGELOG-5.0.md
@@ -1,6 +1,6 @@
# Changelog
-## [5.5.1](https://github.com/phalcon/cphalcon/releases/tag/v5.5.1) (xxxx-xx-xx)
+## [5.5.1](https://github.com/phalcon/cphalcon/releases/tag/v5.5.1) (2024-01-09)
### Changed
@@ -13,6 +13,7 @@
- Fixed `Phalcon\Mvc\Model::count` to ignore the `order` parameter (needed for Posgresql) [#16471](https://github.com/phalcon/cphalcon/issues/16471)
- Fixed `Phalcon\Mvc\Model::toArray` added parameter to ignore getters in order not to break serialize. [#16490](https://github.com/phalcon/cphalcon/issues/16490)
+- Fixed `Phalcon\Mvc\Model::toArray` changing the conditionals for population to remove segfault. [#16498](https://github.com/phalcon/cphalcon/issues/16498)
### Removed
diff --git a/build/phalcon/phalcon.zep.c b/build/phalcon/phalcon.zep.c
index dd81d2c937..6405c4a9b8 100644
--- a/build/phalcon/phalcon.zep.c
+++ b/build/phalcon/phalcon.zep.c
@@ -56736,12 +56736,12 @@ static PHP_METHOD(Phalcon_Mvc_Model, sum)
static PHP_METHOD(Phalcon_Mvc_Model, toArray)
{
- zend_bool _3$$4, _11$$3, _13$$15, _19$$14;
+ zend_bool _3$$4, _11$$3, _14$$15, _20$$14;
zval data;
zephir_method_globals *ZEPHIR_METHOD_GLOBALS_PTR = NULL;
zephir_fcall_cache_entry *_5 = NULL, *_9 = NULL;
zend_long ZEPHIR_LAST_CALL_STATUS;
- zval *columns = NULL, columns_sub, *useGetter = NULL, useGetter_sub, __$null, __$true, attribute, attributeField, columnMap, metaData, method, value, _0, *_1, _2, _4$$5, _6$$7, _7$$7, _8$$7, _10$$3, _12$$11, _14$$16, _15$$18, _16$$18, _17$$18, _18$$14, _20$$22;
+ zval *columns = NULL, columns_sub, *useGetter = NULL, useGetter_sub, __$null, __$true, attribute, attributeField, columnMap, metaData, method, _0, *_1, _2, _4$$5, _6$$7, _7$$7, _8$$7, _10$$3, _12$$11, _13$$12, _15$$16, _16$$18, _17$$18, _18$$18, _19$$14, _21$$22, _22$$23;
zval *this_ptr = getThis();
ZVAL_UNDEF(&columns_sub);
@@ -56753,7 +56753,6 @@ static PHP_METHOD(Phalcon_Mvc_Model, toArray)
ZVAL_UNDEF(&columnMap);
ZVAL_UNDEF(&metaData);
ZVAL_UNDEF(&method);
- ZVAL_UNDEF(&value);
ZVAL_UNDEF(&_0);
ZVAL_UNDEF(&_2);
ZVAL_UNDEF(&_4$$5);
@@ -56762,12 +56761,14 @@ static PHP_METHOD(Phalcon_Mvc_Model, toArray)
ZVAL_UNDEF(&_8$$7);
ZVAL_UNDEF(&_10$$3);
ZVAL_UNDEF(&_12$$11);
- ZVAL_UNDEF(&_14$$16);
- ZVAL_UNDEF(&_15$$18);
+ ZVAL_UNDEF(&_13$$12);
+ ZVAL_UNDEF(&_15$$16);
ZVAL_UNDEF(&_16$$18);
ZVAL_UNDEF(&_17$$18);
- ZVAL_UNDEF(&_18$$14);
- ZVAL_UNDEF(&_20$$22);
+ ZVAL_UNDEF(&_18$$18);
+ ZVAL_UNDEF(&_19$$14);
+ ZVAL_UNDEF(&_21$$22);
+ ZVAL_UNDEF(&_22$$23);
ZVAL_UNDEF(&data);
bool is_null_true = 1;
ZEND_PARSE_PARAMETERS_START(0, 2)
@@ -56843,13 +56844,14 @@ static PHP_METHOD(Phalcon_Mvc_Model, toArray)
if (_11$$3) {
_11$$3 = (zephir_method_exists(this_ptr, &method) == SUCCESS);
}
- ZEPHIR_OBS_NVAR(&value);
if (_11$$3) {
ZEPHIR_CALL_METHOD_ZVAL(&_12$$11, this_ptr, &method, NULL, 0);
zephir_check_call_status();
zephir_array_update_zval(&data, &attributeField, &_12$$11, PH_COPY | PH_SEPARATE);
- } else if (zephir_fetch_property_zval(&value, this_ptr, &attributeField, PH_SILENT_CC)) {
- zephir_array_update_zval(&data, &attributeField, &value, PH_COPY | PH_SEPARATE);
+ } else if (zephir_isset_property_zval(this_ptr, &attributeField)) {
+ ZEPHIR_OBS_NVAR(&_13$$12);
+ zephir_read_property_zval(&_13$$12, this_ptr, &attributeField, PH_NOISY_CC);
+ zephir_array_update_zval(&data, &attributeField, &_13$$12, PH_COPY | PH_SEPARATE);
} else {
zephir_array_update_zval(&data, &attributeField, &__$null, PH_COPY | PH_SEPARATE);
}
@@ -56866,27 +56868,27 @@ static PHP_METHOD(Phalcon_Mvc_Model, toArray)
ZEPHIR_CALL_METHOD(&attribute, &_0, "current", NULL, 0);
zephir_check_call_status();
if (Z_TYPE_P(&columnMap) == IS_ARRAY) {
- _13$$15 = !(zephir_array_isset(&columnMap, &attribute));
- if (_13$$15) {
- _13$$15 = ZEPHIR_GLOBAL(orm).case_insensitive_column_map;
+ _14$$15 = !(zephir_array_isset(&columnMap, &attribute));
+ if (_14$$15) {
+ _14$$15 = ZEPHIR_GLOBAL(orm).case_insensitive_column_map;
}
- if (_13$$15) {
- ZEPHIR_CALL_SELF(&_14$$16, "caseinsensitivecolumnmap", &_5, 420, &columnMap, &attribute);
+ if (_14$$15) {
+ ZEPHIR_CALL_SELF(&_15$$16, "caseinsensitivecolumnmap", &_5, 420, &columnMap, &attribute);
zephir_check_call_status();
- ZEPHIR_CPY_WRT(&attribute, &_14$$16);
+ ZEPHIR_CPY_WRT(&attribute, &_15$$16);
}
ZEPHIR_OBS_NVAR(&attributeField);
if (!(zephir_array_isset_fetch(&attributeField, &columnMap, &attribute, 0))) {
if (UNEXPECTED(!(ZEPHIR_GLOBAL(orm).ignore_unknown_columns))) {
- ZEPHIR_INIT_NVAR(&_15$$18);
- object_init_ex(&_15$$18, phalcon_mvc_model_exception_ce);
ZEPHIR_INIT_NVAR(&_16$$18);
- zephir_get_class(&_16$$18, this_ptr, 0);
+ object_init_ex(&_16$$18, phalcon_mvc_model_exception_ce);
ZEPHIR_INIT_NVAR(&_17$$18);
- ZEPHIR_CONCAT_SVSVS(&_17$$18, "Column '", &attribute, "' doesn't make part of the column map in '", &_16$$18, "'");
- ZEPHIR_CALL_METHOD(NULL, &_15$$18, "__construct", &_9, 33, &_17$$18);
+ zephir_get_class(&_17$$18, this_ptr, 0);
+ ZEPHIR_INIT_NVAR(&_18$$18);
+ ZEPHIR_CONCAT_SVSVS(&_18$$18, "Column '", &attribute, "' doesn't make part of the column map in '", &_17$$18, "'");
+ ZEPHIR_CALL_METHOD(NULL, &_16$$18, "__construct", &_9, 33, &_18$$18);
zephir_check_call_status();
- zephir_throw_exception_debug(&_15$$18, "phalcon/Mvc/Model.zep", 3311);
+ zephir_throw_exception_debug(&_16$$18, "phalcon/Mvc/Model.zep", 3311);
ZEPHIR_MM_RESTORE();
return;
}
@@ -56900,21 +56902,22 @@ static PHP_METHOD(Phalcon_Mvc_Model, toArray)
continue;
}
}
- ZEPHIR_INIT_NVAR(&_18$$14);
- zephir_camelize(&_18$$14, &attributeField, NULL );
+ ZEPHIR_INIT_NVAR(&_19$$14);
+ zephir_camelize(&_19$$14, &attributeField, NULL );
ZEPHIR_INIT_NVAR(&method);
- ZEPHIR_CONCAT_SV(&method, "get", &_18$$14);
- _19$$14 = ZEPHIR_IS_TRUE_IDENTICAL(useGetter);
- if (_19$$14) {
- _19$$14 = (zephir_method_exists(this_ptr, &method) == SUCCESS);
- }
- ZEPHIR_OBS_NVAR(&value);
- if (_19$$14) {
- ZEPHIR_CALL_METHOD_ZVAL(&_20$$22, this_ptr, &method, NULL, 0);
- zephir_check_call_status();
- zephir_array_update_zval(&data, &attributeField, &_20$$22, PH_COPY | PH_SEPARATE);
- } else if (zephir_fetch_property_zval(&value, this_ptr, &attributeField, PH_SILENT_CC)) {
- zephir_array_update_zval(&data, &attributeField, &value, PH_COPY | PH_SEPARATE);
+ ZEPHIR_CONCAT_SV(&method, "get", &_19$$14);
+ _20$$14 = ZEPHIR_IS_TRUE_IDENTICAL(useGetter);
+ if (_20$$14) {
+ _20$$14 = (zephir_method_exists(this_ptr, &method) == SUCCESS);
+ }
+ if (_20$$14) {
+ ZEPHIR_CALL_METHOD_ZVAL(&_21$$22, this_ptr, &method, NULL, 0);
+ zephir_check_call_status();
+ zephir_array_update_zval(&data, &attributeField, &_21$$22, PH_COPY | PH_SEPARATE);
+ } else if (zephir_isset_property_zval(this_ptr, &attributeField)) {
+ ZEPHIR_OBS_NVAR(&_22$$23);
+ zephir_read_property_zval(&_22$$23, this_ptr, &attributeField, PH_NOISY_CC);
+ zephir_array_update_zval(&data, &attributeField, &_22$$23, PH_COPY | PH_SEPARATE);
} else {
zephir_array_update_zval(&data, &attributeField, &__$null, PH_COPY | PH_SEPARATE);
}
@@ -183858,7 +183861,7 @@ static PHP_METHOD(Phalcon_Support_Version, getVersion)
ZVAL_LONG(&_0, 5);
zephir_array_fast_append(return_value, &_0);
ZEPHIR_INIT_NVAR(&_0);
- ZVAL_LONG(&_0, 0);
+ ZVAL_LONG(&_0, 1);
zephir_array_fast_append(return_value, &_0);
ZEPHIR_INIT_NVAR(&_0);
ZVAL_LONG(&_0, 4);
diff --git a/build/phalcon/php_phalcon.h b/build/phalcon/php_phalcon.h
index 0f465ad032..9408927ee0 100644
--- a/build/phalcon/php_phalcon.h
+++ b/build/phalcon/php_phalcon.h
@@ -103,7 +103,7 @@ typedef zend_function zephir_fcall_cache_entry;
#define PHP_PHALCON_NAME "phalcon"
-#define PHP_PHALCON_VERSION "5.5.0"
+#define PHP_PHALCON_VERSION "5.5.1"
#define PHP_PHALCON_EXTNAME "phalcon"
#define PHP_PHALCON_AUTHOR "Phalcon Team and contributors"
#define PHP_PHALCON_ZEPVERSION "0.18.0-$Id$"
diff --git a/config.json b/config.json
index 2e7e77b055..47a10c4e52 100644
--- a/config.json
+++ b/config.json
@@ -3,7 +3,7 @@
"name": "phalcon",
"description": "Phalcon is a full stack PHP framework, delivered as a PHP extension, offering lower resource consumption and high performance.",
"author": "Phalcon Team and contributors",
- "version": "5.5.0",
+ "version": "5.5.1",
"verbose": false,
"stubs": {
"path": "ide\/%version%\/%namespace%\/",
diff --git a/ext/phalcon/mvc/model.zep.c b/ext/phalcon/mvc/model.zep.c
index 4ba908f96e..0bffab7f81 100644
--- a/ext/phalcon/mvc/model.zep.c
+++ b/ext/phalcon/mvc/model.zep.c
@@ -5501,12 +5501,12 @@ PHP_METHOD(Phalcon_Mvc_Model, sum)
*/
PHP_METHOD(Phalcon_Mvc_Model, toArray)
{
- zend_bool _3$$4, _11$$3, _13$$15, _19$$14;
+ zend_bool _3$$4, _11$$3, _14$$15, _20$$14;
zval data;
zephir_method_globals *ZEPHIR_METHOD_GLOBALS_PTR = NULL;
zephir_fcall_cache_entry *_5 = NULL, *_9 = NULL;
zend_long ZEPHIR_LAST_CALL_STATUS;
- zval *columns = NULL, columns_sub, *useGetter = NULL, useGetter_sub, __$null, __$true, attribute, attributeField, columnMap, metaData, method, value, _0, *_1, _2, _4$$5, _6$$7, _7$$7, _8$$7, _10$$3, _12$$11, _14$$16, _15$$18, _16$$18, _17$$18, _18$$14, _20$$22;
+ zval *columns = NULL, columns_sub, *useGetter = NULL, useGetter_sub, __$null, __$true, attribute, attributeField, columnMap, metaData, method, _0, *_1, _2, _4$$5, _6$$7, _7$$7, _8$$7, _10$$3, _12$$11, _13$$12, _15$$16, _16$$18, _17$$18, _18$$18, _19$$14, _21$$22, _22$$23;
zval *this_ptr = getThis();
ZVAL_UNDEF(&columns_sub);
@@ -5518,7 +5518,6 @@ PHP_METHOD(Phalcon_Mvc_Model, toArray)
ZVAL_UNDEF(&columnMap);
ZVAL_UNDEF(&metaData);
ZVAL_UNDEF(&method);
- ZVAL_UNDEF(&value);
ZVAL_UNDEF(&_0);
ZVAL_UNDEF(&_2);
ZVAL_UNDEF(&_4$$5);
@@ -5527,12 +5526,14 @@ PHP_METHOD(Phalcon_Mvc_Model, toArray)
ZVAL_UNDEF(&_8$$7);
ZVAL_UNDEF(&_10$$3);
ZVAL_UNDEF(&_12$$11);
- ZVAL_UNDEF(&_14$$16);
- ZVAL_UNDEF(&_15$$18);
+ ZVAL_UNDEF(&_13$$12);
+ ZVAL_UNDEF(&_15$$16);
ZVAL_UNDEF(&_16$$18);
ZVAL_UNDEF(&_17$$18);
- ZVAL_UNDEF(&_18$$14);
- ZVAL_UNDEF(&_20$$22);
+ ZVAL_UNDEF(&_18$$18);
+ ZVAL_UNDEF(&_19$$14);
+ ZVAL_UNDEF(&_21$$22);
+ ZVAL_UNDEF(&_22$$23);
ZVAL_UNDEF(&data);
bool is_null_true = 1;
ZEND_PARSE_PARAMETERS_START(0, 2)
@@ -5608,13 +5609,14 @@ PHP_METHOD(Phalcon_Mvc_Model, toArray)
if (_11$$3) {
_11$$3 = (zephir_method_exists(this_ptr, &method) == SUCCESS);
}
- ZEPHIR_OBS_NVAR(&value);
if (_11$$3) {
ZEPHIR_CALL_METHOD_ZVAL(&_12$$11, this_ptr, &method, NULL, 0);
zephir_check_call_status();
zephir_array_update_zval(&data, &attributeField, &_12$$11, PH_COPY | PH_SEPARATE);
- } else if (zephir_fetch_property_zval(&value, this_ptr, &attributeField, PH_SILENT_CC)) {
- zephir_array_update_zval(&data, &attributeField, &value, PH_COPY | PH_SEPARATE);
+ } else if (zephir_isset_property_zval(this_ptr, &attributeField)) {
+ ZEPHIR_OBS_NVAR(&_13$$12);
+ zephir_read_property_zval(&_13$$12, this_ptr, &attributeField, PH_NOISY_CC);
+ zephir_array_update_zval(&data, &attributeField, &_13$$12, PH_COPY | PH_SEPARATE);
} else {
zephir_array_update_zval(&data, &attributeField, &__$null, PH_COPY | PH_SEPARATE);
}
@@ -5631,27 +5633,27 @@ PHP_METHOD(Phalcon_Mvc_Model, toArray)
ZEPHIR_CALL_METHOD(&attribute, &_0, "current", NULL, 0);
zephir_check_call_status();
if (Z_TYPE_P(&columnMap) == IS_ARRAY) {
- _13$$15 = !(zephir_array_isset(&columnMap, &attribute));
- if (_13$$15) {
- _13$$15 = ZEPHIR_GLOBAL(orm).case_insensitive_column_map;
+ _14$$15 = !(zephir_array_isset(&columnMap, &attribute));
+ if (_14$$15) {
+ _14$$15 = ZEPHIR_GLOBAL(orm).case_insensitive_column_map;
}
- if (_13$$15) {
- ZEPHIR_CALL_SELF(&_14$$16, "caseinsensitivecolumnmap", &_5, 420, &columnMap, &attribute);
+ if (_14$$15) {
+ ZEPHIR_CALL_SELF(&_15$$16, "caseinsensitivecolumnmap", &_5, 420, &columnMap, &attribute);
zephir_check_call_status();
- ZEPHIR_CPY_WRT(&attribute, &_14$$16);
+ ZEPHIR_CPY_WRT(&attribute, &_15$$16);
}
ZEPHIR_OBS_NVAR(&attributeField);
if (!(zephir_array_isset_fetch(&attributeField, &columnMap, &attribute, 0))) {
if (UNEXPECTED(!(ZEPHIR_GLOBAL(orm).ignore_unknown_columns))) {
- ZEPHIR_INIT_NVAR(&_15$$18);
- object_init_ex(&_15$$18, phalcon_mvc_model_exception_ce);
ZEPHIR_INIT_NVAR(&_16$$18);
- zephir_get_class(&_16$$18, this_ptr, 0);
+ object_init_ex(&_16$$18, phalcon_mvc_model_exception_ce);
ZEPHIR_INIT_NVAR(&_17$$18);
- ZEPHIR_CONCAT_SVSVS(&_17$$18, "Column '", &attribute, "' doesn't make part of the column map in '", &_16$$18, "'");
- ZEPHIR_CALL_METHOD(NULL, &_15$$18, "__construct", &_9, 33, &_17$$18);
+ zephir_get_class(&_17$$18, this_ptr, 0);
+ ZEPHIR_INIT_NVAR(&_18$$18);
+ ZEPHIR_CONCAT_SVSVS(&_18$$18, "Column '", &attribute, "' doesn't make part of the column map in '", &_17$$18, "'");
+ ZEPHIR_CALL_METHOD(NULL, &_16$$18, "__construct", &_9, 33, &_18$$18);
zephir_check_call_status();
- zephir_throw_exception_debug(&_15$$18, "phalcon/Mvc/Model.zep", 3311);
+ zephir_throw_exception_debug(&_16$$18, "phalcon/Mvc/Model.zep", 3311);
ZEPHIR_MM_RESTORE();
return;
}
@@ -5665,21 +5667,22 @@ PHP_METHOD(Phalcon_Mvc_Model, toArray)
continue;
}
}
- ZEPHIR_INIT_NVAR(&_18$$14);
- zephir_camelize(&_18$$14, &attributeField, NULL );
+ ZEPHIR_INIT_NVAR(&_19$$14);
+ zephir_camelize(&_19$$14, &attributeField, NULL );
ZEPHIR_INIT_NVAR(&method);
- ZEPHIR_CONCAT_SV(&method, "get", &_18$$14);
- _19$$14 = ZEPHIR_IS_TRUE_IDENTICAL(useGetter);
- if (_19$$14) {
- _19$$14 = (zephir_method_exists(this_ptr, &method) == SUCCESS);
+ ZEPHIR_CONCAT_SV(&method, "get", &_19$$14);
+ _20$$14 = ZEPHIR_IS_TRUE_IDENTICAL(useGetter);
+ if (_20$$14) {
+ _20$$14 = (zephir_method_exists(this_ptr, &method) == SUCCESS);
}
- ZEPHIR_OBS_NVAR(&value);
- if (_19$$14) {
- ZEPHIR_CALL_METHOD_ZVAL(&_20$$22, this_ptr, &method, NULL, 0);
+ if (_20$$14) {
+ ZEPHIR_CALL_METHOD_ZVAL(&_21$$22, this_ptr, &method, NULL, 0);
zephir_check_call_status();
- zephir_array_update_zval(&data, &attributeField, &_20$$22, PH_COPY | PH_SEPARATE);
- } else if (zephir_fetch_property_zval(&value, this_ptr, &attributeField, PH_SILENT_CC)) {
- zephir_array_update_zval(&data, &attributeField, &value, PH_COPY | PH_SEPARATE);
+ zephir_array_update_zval(&data, &attributeField, &_21$$22, PH_COPY | PH_SEPARATE);
+ } else if (zephir_isset_property_zval(this_ptr, &attributeField)) {
+ ZEPHIR_OBS_NVAR(&_22$$23);
+ zephir_read_property_zval(&_22$$23, this_ptr, &attributeField, PH_NOISY_CC);
+ zephir_array_update_zval(&data, &attributeField, &_22$$23, PH_COPY | PH_SEPARATE);
} else {
zephir_array_update_zval(&data, &attributeField, &__$null, PH_COPY | PH_SEPARATE);
}
diff --git a/ext/phalcon/support/version.zep.c b/ext/phalcon/support/version.zep.c
index d31e6aeb15..400891b370 100644
--- a/ext/phalcon/support/version.zep.c
+++ b/ext/phalcon/support/version.zep.c
@@ -115,7 +115,7 @@ PHP_METHOD(Phalcon_Support_Version, getVersion)
ZVAL_LONG(&_0, 5);
zephir_array_fast_append(return_value, &_0);
ZEPHIR_INIT_NVAR(&_0);
- ZVAL_LONG(&_0, 0);
+ ZVAL_LONG(&_0, 1);
zephir_array_fast_append(return_value, &_0);
ZEPHIR_INIT_NVAR(&_0);
ZVAL_LONG(&_0, 4);
diff --git a/ext/php_phalcon.h b/ext/php_phalcon.h
index c7d7c7e6b7..bcc43069e2 100644
--- a/ext/php_phalcon.h
+++ b/ext/php_phalcon.h
@@ -11,7 +11,7 @@
#include "kernel/globals.h"
#define PHP_PHALCON_NAME "phalcon"
-#define PHP_PHALCON_VERSION "5.5.0"
+#define PHP_PHALCON_VERSION "5.5.1"
#define PHP_PHALCON_EXTNAME "phalcon"
#define PHP_PHALCON_AUTHOR "Phalcon Team and contributors"
#define PHP_PHALCON_ZEPVERSION "0.18.0-$Id$"
diff --git a/package.xml b/package.xml
index 6c1ca0cb6f..5bec05b2c4 100644
--- a/package.xml
+++ b/package.xml
@@ -22,11 +22,11 @@
nikos@phalcon.io
yes
- 2023-12-25
+ 2024-01-09
- 5.5.0
- 5.5.0
+ 5.5.1
+ 5.5.1
stable
@@ -38,19 +38,14 @@
### Changed
- - Shifted minimal support from PHP 7.4 to PHP 8.0 [#16477](https://github.com/phalcon/cphalcon/issues/16477)
- - Changed `Phalcon\Mvc\Model::toArray` to use getters if present [#16320](https://github.com/phalcon/cphalcon/issues/16320)
- - Adjusted return types identical to original interface `int|false` in `Phalcon\Session\Adapter\*::gc()` [#16477](https://github.com/phalcon/cphalcon/issues/16477)
- - Changed return type of `Phalcon\Config\Adapter\Ini::cast()` to `mixed` [#16477](https://github.com/phalcon/cphalcon/issues/16477)
-
- ### Added
-
- - Added support for PHP 8.3 [#16477](https://github.com/phalcon/cphalcon/issues/16477)
+ - Changed `Phalcon\Db\Adapter\Pdo\Mysql` to not use specific flags for `PDO` (`PDO::ATTR_EMULATE_PREPARES` or `PDO::ATTR_STRINGIFY_FETCHES`) for performance reasons [#16474](https://github.com/phalcon/cphalcon/issues/16474)
+ - Merged `Phalcon\Db\AbstractDb` with `Phalcon\Db\Adapter\AbstractAdapter` since the former was not used [#16474](https://github.com/phalcon/cphalcon/issues/16474)
### Fixed
- - Fixed `Phalcon\Filter\Validation\Validator\Numericality` to return false when input has spaces [#16461](https://github.com/phalcon/cphalcon/issues/16461)
- - Fixed `Phalcon\Mvc\Model\ResultsetSimple::toArray` to ignore numeric indexes in case results come as not `fetch_assoc` [#16467](https://github.com/phalcon/cphalcon/issues/16467)
+ - Fixed `Phalcon\Mvc\Model::count` to ignore the `order` parameter (needed for Posgresql) [#16471](https://github.com/phalcon/cphalcon/issues/16471)
+ - Fixed `Phalcon\Mvc\Model::toArray` added parameter to ignore getters in order not to break serialize. [#16490](https://github.com/phalcon/cphalcon/issues/16490)
+ - Fixed `Phalcon\Mvc\Model::toArray` changing the conditionals for population to remove segfault. [#16498](https://github.com/phalcon/cphalcon/issues/16498)
diff --git a/phalcon/Support/Version.zep b/phalcon/Support/Version.zep
index ec4207bf43..7b507b31fe 100644
--- a/phalcon/Support/Version.zep
+++ b/phalcon/Support/Version.zep
@@ -77,7 +77,7 @@ class Version
*/
protected function getVersion() -> array
{
- return [5, 5, 0, 4, 0];
+ return [5, 5, 1, 4, 0];
}
/**