diff options
author | Ondřej Surý <ondrej@sury.org> | 2013-01-16 09:02:55 +0100 |
---|---|---|
committer | Ondřej Surý <ondrej@sury.org> | 2013-01-16 09:02:55 +0100 |
commit | 8572aeb0703107705fc7dde35961cd6a5f89c0c8 (patch) | |
tree | 833d2a593591ac362a7dfe90971bef61d155bfaa /UPGRADING | |
parent | 0b82e05fe264306004119e30119e665365331e17 (diff) | |
download | php-8572aeb0703107705fc7dde35961cd6a5f89c0c8.tar.gz |
Imported Upstream version 5.5.0~alpha3upstream/5.5.0_alpha3
Diffstat (limited to 'UPGRADING')
-rwxr-xr-x | UPGRADING | 77 |
1 files changed, 64 insertions, 13 deletions
@@ -1,6 +1,6 @@ $Id$ -PHP X.Y UPGRADE NOTES +PHP 5.5 UPGRADE NOTES 1. Backward Incompatible Changes 2. New Features @@ -13,7 +13,8 @@ PHP X.Y UPGRADE NOTES 8. Other Changes to Extensions 9. New Global Constants 10. Changes to INI File Handling -11. Other Changes +11. Windows Support +12. Other Changes ======================================== @@ -27,6 +28,38 @@ PHP X.Y UPGRADE NOTES zend_logo_guid() have been removed - Removal of Logo GUIDs +- extensions can't override zend_execute() any more, they should override + zend_execute_ex() instead. The EG(current_execute_data) is already + initialized in zend_execute_ex(), so for compatibility extensions + may need to use EG(current_execute_data)->prev_execute_data instead. +- removed EG(arg_types_stack), EX(fbc), EX(called_scope), EX(current_object) +- added op_array->nested_calls. It's calculated at compile time. +- added EX(call_slots). It is an array to store information about syntaticaly + nested calls (e.g. foo(bar())). It's preallocated together with execute_data. +- added EX(call) - pointer to a current calling function. Actually an + element of EX(call_slots) +- opcodes INIT_METHOD_CALL, ZEND_INIT_STATIC_METHOD_CALL, + ZEND_INIT_FCALL_BY_NAME, ZEND_INIT_NS_FCALL_BY_NAME use result.num as + an index in EX(call_slots) +- opcode ZEND_NEW uses extended_vallue as an index in EX(call_slots) +- opcoes ZEND_DO_FCALL and ZEND_DO_FCALL_BY_NAME use op2.num as + an index in EX(call_slots) +- added op_array->used_stack. It's calculated at compile time and the + corresponding stack space is preallocated together with execute_data. + ZEND_SEND* and ZEND_DO_FCALL* don't need to check for stack overflow + anymore. +- Removed execute_data->Ts field. The VM temporary variables always allocated + immediately before execute_data structure. Now they are accessed by offset + from the execute_data base pointer (instead of execute_data->Ts). Compiler + stores new offsets in op_array->opcodes[*].op?.num. You can use macros + EX_TMP_VAR() and EX_TMP_VAR_NUM() to access temp_variable by offset or + number. You can convert number to offset using EX_TMP_VAR_NUM(0, num) or + offset to number (EX_TMP_VAR_NUM(0,0)-EX_TMP_VAR(0,offset)). +- Removed execute_data->CVs field. The VM compiled variables always allocated + immediately after execute_data structure. Now they are accessed by offset + from the execute_data base pointer (instead of execute_data->CVs). You can + use macros EX_CV_NUM() to access compiled variables by number. + ======================================== 2. New Features ======================================== @@ -52,9 +85,19 @@ PHP X.Y UPGRADE NOTES 3. Deprecated Functionality ======================================== +- The original MySQL extension is now deprecated, and will generate deprecation + warnings when connecting to a database through mysql_connect(), + mysql_pconnect() or by establishing an implicit connection. Use MySQLi or PDO + instead. - The preg_replace /e modifier is now deprecated. Use preg_replace_callback instead. (https://wiki.php.net/rfc/remove_preg_replace_eval_modifier) +- IntlDateFormatter::setTimeZoneID() and datefmt_set_timezone_id() are + deprecated. Use IntlDateFormatter::setTimeZone() or datefmt_set_timezone() + instead. +- mcrypt_ecb(), mcrypt_cbc(), mcrypt_cfb() and mcrypt_ofb() now throw + E_DEPRECATED. Their use was already previously discouraged in the docs, + but that predated the existence of E_DEPRECATED. ======================================== 4. Changed Functions @@ -97,14 +140,8 @@ PHP X.Y UPGRADE NOTES - IntlDateFormatter::setCalendar() and datefmt_set_calendar() now also accept an IntlCalendar object, in which case its time zone is taken. Passing a constant is still allowed, and still keeps the time zone. -- IntlDateFormatter::setTimeZoneID() and datefmt_set_timezone_id() are - deprecated. Use IntlDateFormatter::setTimeZone() or datefmt_set_timezone() - instead. - IntlDateFormatter::format() and datefmt_format() now also accept an IntlCalendar object for formatting. -- mcrypt_ecb(), mcrypt_cbc(), mcrypt_cfb() and mcrypt_ofb() now throw - E_DEPRECATED. Their use was already previously discouraged in the docs, - but that predated the existence of E_DEPRECATED. - php_logo_guid(), php_egg_logo_guid(), php_real_logo_guid() and zend_logo_guid() have been removed - set_error_handler(NULL) can now be used to reset the error handler. @@ -118,6 +155,10 @@ PHP X.Y UPGRADE NOTES - Core: - boolval() + - password_get_info() + - password_hash() + - password_needs_rehash() + - password_verify() - Hash: - hash_pbkdf2() @@ -230,26 +271,36 @@ PHP X.Y UPGRADE NOTES - Intl: - This extension now requires ICU 4.0+. - - Added intl.use_exceptions INI directive, which controls what happens when - global errors are set together with intl.error_level. ======================================== 9. New Global Constants ======================================== -- mysqli + +- mysqli: - Added MYSQLI_SERVER_PUBLIC_KEY constant to be used with mysqli_options() ======================================== 10. Changes to INI File Handling ======================================== -- mysqlnd + +- Intl: + - Added intl.use_exceptions INI directive, which controls what happens when + global errors are set together with intl.error_level. + +- mysqlnd: - Added mysqlnd.sha256_server_public_key INI PERDIR setting that affects all APIs which use(are built) for mysqlnd. This allows ext/mysqli to be used with the new auth protocol, although at coarser level. +======================================== +11. Windows Support +======================================== + +- Apache 2.4 handler is supported as of PHP 5.5.0 + ======================================== -11. Other Changes +12. Other Changes ======================================== - Logo GUIDs will no longer work |