summaryrefslogtreecommitdiff
path: root/UPGRADING
diff options
context:
space:
mode:
authorOndřej Surý <ondrej@sury.org>2013-01-16 09:02:55 +0100
committerOndřej Surý <ondrej@sury.org>2013-01-16 09:02:55 +0100
commit8572aeb0703107705fc7dde35961cd6a5f89c0c8 (patch)
tree833d2a593591ac362a7dfe90971bef61d155bfaa /UPGRADING
parent0b82e05fe264306004119e30119e665365331e17 (diff)
downloadphp-8572aeb0703107705fc7dde35961cd6a5f89c0c8.tar.gz
Imported Upstream version 5.5.0~alpha3upstream/5.5.0_alpha3
Diffstat (limited to 'UPGRADING')
-rwxr-xr-xUPGRADING77
1 files changed, 64 insertions, 13 deletions
diff --git a/UPGRADING b/UPGRADING
index 0e497f743..f65e86870 100755
--- a/UPGRADING
+++ b/UPGRADING
@@ -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