Welcome! Log In Create A New Profile

Advanced

PHP 5.3.0 Final released....wait for fpm patch!!!

Posted by fei 
fei
PHP 5.3.0 Final released....wait for fpm patch!!!
June 29, 2009 08:43AM
http://us2.php.net/distributions/php-5.3.0.tar.bz2
30 Jun 2009, PHP 5.3.0
- Upgraded bundled PCRE to version 7.9. (Nuno)
- Upgraded bundled sqlite to version 3.6.15. (Scott)

- Moved extensions to PECL (Derick, Lukas, Pierre, Scott):
. ext/dbase
. ext/fbsql
. ext/fdf
. ext/ncurses
. ext/mhash (BC layer is now entirely within ext/hash)
. ext/ming
. ext/msql
. ext/sybase (not maintained anymore, sybase_ct has to be used instead)

- Removed the experimental RPL (master/slave) functions from mysqli. (Andrey)
- Removed zend.ze1_compatibility_mode. (Dmitry)
- Removed all zend_extension_* php.ini directives. Zend extensions are now
always loaded using zend_extension directive. (Derick)
- Removed special treatment of "/tmp" in sessions for open_basedir.
Note: This undocumented behaviour was introduced in 5.2.2. (Alexey)
- Removed shebang line check from CGI sapi (checked by scanner). (Dmitry)

- Changed PCRE, Reflection and SPL extensions to be always enabled. (Marcus)
- Changed md5() to use improved implementation. (Solar Designer, Dmitry)
- Changed HTTP stream wrapper to accept any code between and including
200 to 399 as successful. (Mike, Noah Fontes)
- Changed __call() to be invoked on private/protected method access, similar to
properties and __get(). (Andrei)
- Changed dl() to be disabled by default. Enabled only when explicitly
registered by the SAPI. Currently enabled with cli, cgi and embed SAPIs.
(Dmitry)
- Changed opendir(), dir() and scandir() to use default context when no context
argument is passed. (Sara)
- Changed open_basedir to allow tightening in runtime contexts. (Sara)
- Changed PHP/Zend extensions to use flexible build IDs. (Stas)
- Changed error level E_ERROR into E_WARNING in Soap extension methods
parameter validation. (Felipe)
- Changed openssl info to show the shared library version number. (Scott)
- Changed floating point behaviour to consistently use double precision on all
platforms and with all compilers. (Christian Seiler)
- Changed round() to act more intuitively when rounding to a certain precision
and round very large and very small exponents correctly. (Christian Seiler)
- Changed session_start() to return false when session startup fails. (Jani)
- Changed property_exists() to check the existence of a property independent of
accessibility (like method_exists()). (Felipe)
- Changed array_reduce() to allow mixed $initial (Christian Seiler)

- Improved PHP syntax and semantics:
. Added lambda functions and closures. (Christian Seiler, Dmitry)
. Added "jump label" operator (limited "goto"). (Dmitry, Sara)
. Added NOWDOC syntax. (Gwynne Raskind, Stas, Dmitry)
. Added HEREDOC syntax with double quotes. (Lars Strojny, Felipe)
. Added support for using static HEREDOCs to initialize static variables and
class members or constants. (Matt)
. Improved syntax highlighting and consistency for variables in double-quoted
strings and literal text in HEREDOCs and backticks. (Matt)
. Added "?:" operator. (Marcus)
. Added support for namespaces. (Dmitry, Stas, Gregory, Marcus)
. Added support for Late Static Binding. (Dmitry, Etienne Kneuss)
. Added support for __callStatic() magic method. (Sara)
. Added forward_static_call(_array) to complete LSB. (Mike Lively)
. Added support for dynamic access of static members using $foo::myFunc().
(Etienne Kneuss)
. Improved checks for callbacks. (Marcus)
. Added __DIR__ constant. (Lars Strojny)
. Added new error modes E_USER_DEPRECATED and E_DEPRECATED.
E_DEPRECATED is used to inform about stuff being scheduled for removal
in future PHP versions. (Lars Strojny, Felipe, Marcus)
. Added "request_order" INI variable to control specifically $_REQUEST
behavior. (Stas)
. Added support for exception linking. (Marcus)
. Added ability to handle exceptions in destructors. (Marcus)

- Improved PHP runtime speed and memory usage:
. Substitute global-scope, persistent constants with their values at compile
time. (Matt)
. Optimized ZEND_SIGNED_MULTIPLY_LONG(). (Matt)
. Removed direct executor recursion. (Dmitry)
. Use fastcall calling convention in executor on x86. (Dmitry)
. Use IS_CV for direct access to $this variable. (Dmitry)
. Use ZEND_FREE() opcode instead of ZEND_SWITCH_FREE(IS_TMP_VAR). (Dmitry)
. Lazy EG(active_symbol_table) initialization. (Dmitry)
. Optimized ZEND_RETURN opcode to not allocate and copy return value if it is
not used. (Dmitry)
. Replaced all flex based scanners with re2c based scanners.
(Marcus, Nuno, Scott)
. Added garbage collector. (David Wang, Dmitry).
. Improved PHP binary size and startup speed with GCC4 visibility control.
(Nuno)
. Improved engine stack implementation for better performance and stability.
(Dmitry)
. Improved memory usage by moving constants to read only memory.
(Dmitry, Pierre)
. Changed exception handling. Now each op_array doesn't contain
ZEND_HANDLE_EXCEPTION opcode in the end. (Dmitry)
. Optimized require_once() and include_once() by eliminating fopen(3) on
second usage. (Dmitry)
. Optimized ZEND_FETCH_CLASS + ZEND_ADD_INTERFACE into single
ZEND_ADD_INTERFACE opcode. (Dmitry)
. Optimized string searching for a single character.
(Michal Dziemianko, Scott)
. Optimized interpolated strings to use one less opcode. (Matt)

- Improved php.ini handling: (Jani)
. Added ".htaccess" style user-defined php.ini files support for CGI/FastCGI.
. Added support for special [PATH=/opt/httpd/www.example.com/] and
[HOST=www.example.com] sections. Directives set in these sections can
not be overridden by user-defined ini-files or during runtime.
. Added better error reporting for php.ini syntax errors.
. Allowed using full path to load modules using "extension" directive.
. Allowed "ini-variables" to be used almost everywhere ini php.ini files.
. Allowed using alphanumeric/variable indexes in "array" ini options.
. Added 3rd optional parameter to parse_ini_file() to specify the scanning
mode of INI_SCANNER_NORMAL or INI_SCANNER_RAW. In raw mode option values
and section values are treated as-is.
. Fixed get_cfg_var() to be able to return "array" ini options.
. Added optional parameter to ini_get_all() to only retrieve the current
value. (Hannes)

- Improved Windows support:
. Update all libraries to their latest stable version. (Pierre, Rob, Liz,
Garrett).
. Added Windows support for stat(), touch(), filemtime(), filesize() and
related functions. (Pierre)
. Re-added socket_create_pair() for Windows in sockets extension. (Kalle)
. Added inet_pton() and inet_ntop() also for Windows platforms.
(Kalle, Pierre)
. Added mcrypt_create_iv() for Windows platforms. (Pierre)
. Added ACL Cache support on Windows.
(Kanwaljeet Singla, Pierre, Venkat Raman Don)
. Added constants based on Windows' GetVersionEx information.
PHP_WINDOWS_VERSION_* and PHP_WINDOWS_NT_*. (Pierre)
. Added support for ACL (is_writable, is_readable, reports now correct
results) on Windows. (Pierre, Venkat Raman Don, Kanwaljeet Singla)
. Added support for fnmatch() on Windows. (Pierre)
. Added support for time_nanosleep() and time_sleep_until() on Windows.
(Pierre)
. Added support for symlink(), readlink(), linkinfo() and link() on Windows.
They are available only when the running platform supports them. (Pierre)
. the GMP extension now relies on MPIR instead of the GMP library. (Pierre)
. Added Windows support for stream_socket_pair(). (Kalle)
. Drop all external dependencies for the core features. (Pierre)
. Drastically improve the build procedure (Pierre, Kalle, Rob):
. VC9 (Visual C++ 2008) or later support
. Initial experimental x64 support
. MSI installer now supports all recent Windows versions, including
Windows 7. (John, Kanwaljeet Singla)

- Improved and cleaned CGI code:
. FastCGI is now always enabled and cannot be disabled.
See sapi/cgi/CHANGES for more details. (Dmitry)
. Added CGI SAPI -T option which can be used to measure execution
time of script repeated several times. (Dmitry)

- Improved streams:
. Fixed confusing error message on failure when no errors are logged. (Greg)
. Added stream_supports_lock() function. (Benjamin Schulz)
. Added context parameter for copy() function. (Sara)
. Added "glob://" stream wrapper. (Marcus)
. Added "params" as optional parameter for stream_context_create(). (Sara)
. Added ability to use stream wrappers in include_path. (Gregory, Dmitry)

- Improved DNS API
. Added Windows support for dns_check_record(), dns_get_mx(), checkdnsrr() and
getmxrr(). (Pierre)
. Added support for old style DNS functions (supports OSX and FBSD). (Scott)
. Added a new "entries" array in dns_check_record() containing the TXT
elements. (Felipe, Pierre)

- Improved hash extension:
. Changed mhash to be a wrapper layer around the hash extension. (Scott)
. Added hash_copy() function. (Tony)
. Added sha224 hash algorithm to the hash extension. (Scott)

- Improved IMAP support (Pierre):
. Added imap_gc() to clear the imap cache
. Added imap_utf8_to_mutf7() and imap_mutf7_to_utf8()

- Improved mbstring extension:
. Added "mbstring.http_output_conv_mimetypes" INI directive that allows
common non-text types such as "application/xhtml+xml" to be converted
by mb_output_handler(). (Moriyoshi)

- Improved OCI8 extension (Chris Jones/Oracle Corp.):
. Added Database Resident Connection Pooling (DRCP) and Fast
Application Notification (FAN) support.
. Added support for Oracle External Authentication (not supported
on Windows).
. Improve persistent connection handling of restarted DBs.
. Added SQLT_AFC (aka CHAR datatype) support to oci_bind_by_name.
. Fixed bug #45458 (Numeric keys for associative arrays are not
handled properly)
. Fixed bug #41069 (Segmentation fault with query over DB link).
. Fixed define of SQLT_BDOUBLE and SQLT_BFLOAT constants with Oracle
10g ORACLE_HOME builds.
. Changed default value of oci8.default_prefetch from 10 to 100.
. Fixed PECL Bug #16035 (OCI8: oci_connect without ORACLE_HOME defined causes
segfault) (Chris Jones/Oracle Corp.)
. Fixed PECL Bug #15988 (OCI8: sqlnet.ora isn't read with older Oracle
libraries) (Chris Jones/Oracle Corp.)
. Fixed PECL Bug #14268 (Allow "pecl install oci8" command to "autodetect" an
Instant Client RPM install) (Chris Jones/Oracle Corp.)
. Fixed PECL bug #12431 (OCI8 ping functionality is broken).
. Allow building (e.g from PECL) the PHP 5.3-based OCI8 code with
PHP 4.3.9 onwards.
. Provide separate extensions for Oracle 11g and 10g on Windows.
(Pierre, Chris)

- Improved OpenSSL extension:
. Added support for OpenSSL digest and cipher functions. (Dmitry)
. Added access to internal values of DSA, RSA and DH keys. (Dmitry)
. Fixed a memory leak on openssl_decrypt(). (Henrique)
. Fixed segfault caused by openssl_pkey_new(). (Henrique)
. Fixed bug caused by uninitilized variables in openssl_pkcs7_encrypt() and
openssl_pkcs7_sign(). (Henrique)
. Fixed error message in openssl_seal(). (Henrique)

- Improved pcntl extension: (Arnaud)
. Added pcntl_signal_dispatch().
. Added pcntl_sigprocmask().
. Added pcntl_sigwaitinfo().
. Added pcntl_sigtimedwait().

- Improved SOAP extension:
. Added support for element names in context of XMLSchema's <any>. (Dmitry)
. Added ability to use Traversable objects instead of plain arrays.
(Joshua Reese, Dmitry)
. Fixed possible crash bug caused by an uninitialized value. (Zdash Urf)

- Improved SPL extension:
. Added SPL to list of standard extensions that cannot be disabled. (Marcus)
. Added ability to store associative information with objects in
SplObjectStorage. (Marcus)
. Added ArrayAccess support to SplObjectStorage. (Marcus)
. Added SplDoublyLinkedList, SplStack, SplQueue classes. (Etienne)
. Added FilesystemIterator. (Marcus)
. Added GlobIterator. (Marcus)
. Added SplHeap, SplMinHeap, SplMaxHeap, SplPriorityQueue classes. (Etienne)
. Added new parameter $prepend to spl_autoload_register(). (Etienne)
. Added SplFixedArray. (Etienne, Tony)
. Added delaying exceptions in SPL's autoload mechanism. (Marcus)
. Added RecursiveTreeIterator. (Arnaud, Marcus)
. Added MultipleIterator. (Arnaud, Marcus, Johannes)

- Improved Zend Engine:
. Added "compact" handler for Zend MM storage. (Dmitry)
. Added "+" and "*" specifiers to zend_parse_parameters(). (Andrei)
. Added concept of "delayed early binding" that allows opcode caches to
perform class declaration (early and/or run-time binding) in exactly
the same order as vanilla PHP. (Dmitry)

- Improved crypt() function: (Pierre)
. Added Blowfish and extended DES support. (Using Blowfish implementation
from Solar Designer).
. Made crypt features portable by providing our own implementations
for crypt_r and the algorithms which are used when OS does not provide
them. PHP implementations are always used for Windows builds.

- Deprecated session_register(), session_unregister() and
session_is_registered(). (Hannes)
- Deprecated define_syslog_variables(). (Kalle)
- Deprecated ereg extension. (Felipe)
- Added new extensions:
. Added Enchant extension as a way to access spell checkers. (Pierre)
. Added fileinfo extension as replacement for mime_magic extension. (Derick)
. Added intl extension for Internationalization. (Ed B., Vladimir I.,
Dmitry L., Stanislav M., Vadim S., Kirti V.)
. Added mysqlnd extension as replacement for libmysql for ext/mysql, mysqli
and PDO_mysql. (Andrey, Johannes, Ulf)
. Added phar extension for handling PHP Archives. (Greg, Marcus, Steph)
. Added SQLite3 extension. (Scott)

- Added new date/time functionality: (Derick)
. date_parse_from_format(): Parse date/time strings according to a format.
. date_create_from_format()/DateTime::createFromFormat(): Create a date/time
object by parsing a date/time string according to a given format.
. date_get_last_errors()/DateTime::getLastErrors(): Return a list of warnings
and errors that were found while parsing a date/time string through:
. strtotime() / new DateTime
. date_create_from_format() / DateTime::createFromFormat()
. date_parse_from_format().
. support for abbreviation and offset based timezone specifiers for
the 'e' format specifier, DateTime::__construct(), DateTime::getTimeZone()
and DateTimeZone::getName().
. support for selectively listing timezone identifiers by continent or
country code through timezone_identifiers_list() /
DateTimezone::listIdentifiers().
. timezone_location_get() / DateTimezone::getLocation() for retrieving
location information from timezones.
. date_timestamp_set() / DateTime::setTimestamp() to set a Unix timestamp
without invoking the date parser. (Scott, Derick)
. date_timestamp_get() / DateTime::getTimestamp() to retrieve the Unix
timestamp belonging to a date object.
. two optional parameters to timezone_transitions_get() /
DateTimeZone::getTranstions() to limit the range of transitions being
returned.
. support for "first/last day of <month>" style texts.
. support for date/time strings returned by MS SQL.
. support for serialization and unserialization of DateTime objects.
. support for diffing date/times through date_diff() / DateTime::diff().
. support for adding/subtracting weekdays with strtotime() and
DateTime::modify().
. DateInterval class to represent the difference between two date/times.
. support for parsing ISO intervals for use with DateInterval.
. date_add() / DateTime::add(), date_sub() / DateTime::sub() for applying an
interval to an existing date/time.
. proper support for "this week", "previous week"/"last week" and "next week"
phrases so that they actually mean the week and not a seven day period
around the current day.
. support for "<xth> <weekday> of" and "last <weekday> of" phrases to be used
with months - like in "last saturday of februari 2008".
. support for "back of <hour>" and "front of <hour>" phrases that are used in
Scotland.
. DatePeriod class which supports iterating over a DateTime object applying
DateInterval on each iteration, up to an end date or limited by maximum
number of occurences.

- Added compatibility mode in GD, imagerotate, image(filled)ellipse
imagefilter, imageconvolution and imagecolormatch are now always enabled.
(Pierre)
- Added array_replace() and array_replace_recursive() functions. (Matt)
- Added ReflectionProperty::setAccessible() method that allows non-public
property's values to be read through ::getValue() and set through
::setValue(). (Derick, Sebastian)
- Added msg_queue_exists() function to sysvmsg extension. (Benjamin Schulz)
- Added Firebird specific attributes that can be set via PDO::setAttribute()
to control formatting of date/timestamp columns: PDO::FB_ATTR_DATE_FORMAT,
PDO::FB_ATTR_TIME_FORMAT and PDO::FB_ATTR_TIMESTAMP_FORMAT. (Lars W)
- Added gmp_testbit() function. (Stas)
- Added icon format support to getimagesize(). (Scott)
- Added LDAP_OPT_NETWORK_TIMEOUT option for ldap_set_option() to allow
setting network timeout (FR #42837). (Jani)
- Added optional escape character parameter to fgetcsv(). (David Soria Parra)
- Added an optional parameter to strstr() and stristr() for retrieval of either
the part of haystack before or after first occurrence of needle.
(Johannes, Felipe)
- Added xsl->setProfiling() for profiling stylesheets. (Christian)
- Added long-option feature to getopt() and made getopt() available also on
win32 systems by adding a common getopt implementation into core.
(David Soria Parra, Jani)
- Added support for optional values, and = as separator, in getopt(). (Hannes)
- Added lcfirst() function. (David C)
- Added PREG_BAD_UTF8_OFFSET_ERROR constant. (Nuno)
- Added native support for asinh(), acosh(), atanh(), log1p() and expm1().
(Kalle)
- Added LIBXML_LOADED_VERSION constant (libxml2 version currently used). (Rob)
- Added JSON_FORCE_OBJECT flag to json_encode(). (Scott, Richard Quadling)
- Added timezone_version_get() to retrieve the version of the used timezone
database. (Derick)
- Added 'n' flag to fopen to allow passing O_NONBLOCK to the underlying
open(2) system call. (Mikko)
- Added "dechunk" filter which can decode HTTP responses with chunked
transfer-encoding. HTTP streams use this filter automatically in case
"Transfer-Encoding: chunked" header is present in response. It's possible to
disable this behaviour using "http"=>array("auto_decode"=>0) in stream
context. (Dmitry)
- Added support for CP850 encoding in mbstring extension.
(Denis Giffeler, Moriyoshi)
- Added stream_cast() and stream_set_options() to user-space stream wrappers,
allowing stream_select(), stream_set_blocking(), stream_set_timeout() and
stream_set_write_buffer() to work with user-space stream wrappers. (Arnaud)
- Added header_remove() function. (chsc at peytz dot dk, Arnaud)
- Added stream_context_get_params() function. (Arnaud)
- Added optional parameter "new" to sybase_connect(). (Timm)
- Added parse_ini_string() function. (grange at lemonde dot fr, Arnaud)
- Added str_getcsv() function. (Sara)
- Added openssl_random_pseudo_bytes() function. (Scott)
- Added ability to send user defined HTTP headers with SOAP request.
(Brian J.France, Dmitry)
- Added concatenation option to bz2.decompress stream filter.
(Keisial at gmail dot com, Greg)
- Added support for using compressed connections with PDO_mysql. (Johannes)
- Added the ability for json_decode() to take a user specified depth. (Scott)
- Added support for the mysql_stmt_next_result() function from libmysql.
(Andrey)
- Added function preg_filter() that does grep and replace in one go. (Marcus)
- Added system independent realpath() implementation which caches intermediate
directories in realpath-cache. (Dmitry)
- Added optional clear_realpath_cache and filename parameters to
clearstatcache(). (Jani, Arnaud)
- Added litespeed SAPI module. (George Wang)
- Added ext/hash support to ext/session's ID generator. (Sara)
- Added quoted_printable_encode() function. (Tony)
- Added stream_context_set_default() function. (Davey Shafik)
- Added optional "is_xhtml" parameter to nl2br() which makes the function
output <br> when false and <br /> when true (FR #34381). (Kalle)
- Added PHP_MAXPATHLEN constant (maximum length of a path). (Pierre)
- Added support for SSH via libssh2 in cURL. (Pierre)
- Added support for gray levels PNG image with alpha in GD extension. (Pierre)
- Added support for salsa hashing functions in HASH extension. (Scott)
- Added DOMNode::getLineNo to get line number of parsed node. (Rob)
- Added table info to PDO::getColumnMeta() with SQLite. (Martin Jansen, Scott)
- Added mail logging functionality that allows logging of mail sent via
mail() function. (Ilia)
- Added json_last_error() to return any error information from json_decode().
(Scott)
- Added gethostname() to return the current system host name. (Ilia)
- Added shm_has_var() function. (Mike)
- Added depth parameter to json_decode() to lower the nesting depth from the
maximum if required. (Scott)
- Added pixelation support in imagefilter(). (Takeshi Abe, Kalle)
- Added SplObjectStorage::addAll/removeAll. (Etienne)

- Implemented FR #41712 (curl progress callback: CURLOPT_PROGRESSFUNCTION).
(sdteffen[at]gmail[dot].com, Pierre)
- Implemented FR #47739 (Missing cURL option do disable IPv6). (Pierre)
- Implemented FR #39637 (Missing cURL option CURLOPT_FTP_FILEMETHOD). (Pierre)

- Fixed an issue with ReflectionProperty::setAccessible().
(Sebastian, Roman Borschel)
- Fixed html_entity_decode() incorrectly converting numeric html entities
to different characters with cp1251 and cp866. (Scott)
- Fixed an issue in date() where a : was printed for the O modifier after a P
modifier was used. (Derick)
- Fixed exec() on Windows to not eat the first and last double quotes. (Scott)
- Fixed readlink on Windows in thread safe SAPI (apache2.x etc.). (Pierre)
- Fixed a bug causing miscalculations with the "last <weekday> of <n> month"
relative time string. (Derick)
- Fixed bug causing the algorithm parameter of mhash() to be modified. (Scott)
- Fixed invalid calls to free when internal fileinfo magic file is used. (Scott)
- Fixed memory leak inside wddx_add_vars() function. (Felipe)
- Fixed check in recode extension to allow builing of recode and mysql
extensions when using a recent libmysql. (Johannes)

- Fixed PECL bug #12794 (PDOStatement->nextRowset() doesn't work). (Johannes)
- Fixed PECL bug #12401 (Add support for ATTR_FETCH_TABLE_NAMES). (Johannes)

- Fixed bug #48696 (ldap_read() segfaults with invalid parameters). (Felipe)
- Fixed bug #48643 (String functions memory issue). (Dmitry)
- Fixed bug #48641 (tmpfile() uses old parameter parsing).
(crrodriguez at opensuse dot org)
- Fixed bug #48624 (.user.ini never gets parsed). (Pierre)
- Fixed bug #48620 (X-PHP-Originating-Script assumes no trailing CRLF in
existing headers). (Ilia)
- Fixed bug #48578 (Can't build 5.3 on FBSD 4.11). (Rasmus)
- Fixed bug #48535 (file_exists returns false when impersonate is used).
(Kanwaljeet Singla, Venkat Raman Don)
- Fixed bug #48493 (spl_autoload_register() doesn't work correctly when
prepending functions). (Scott)
- Fixed bug #48215 (Calling a method with the same name as the parent class
calls the constructor). (Scott)
- Fixed bug #48200 (compile failure with mbstring.c when
--enable-zend-multibyte is used). (Jani)
- Fixed bug #48188 (Cannot execute a scrollable cursors twice with PDO_PGSQL).
(Matteo)
- Fixed bug #48185 (warning: value computed is not used in
pdo_sqlite_stmt_get_col line 271). (Matteo)
- Fixed bug #48087 (call_user_method() invalid free of arguments). (Felipe)
- Fixed bug #48060 (pdo_pgsql - large objects are returned as empty). (Matteo)
- Fixed bug #48034 (PHP crashes when script is 8192 (8KB) bytes long). (Dmitry)
- Fixed bug #48004 (Error handler prevents creation of default object). (Dmitry)
- Fixed bug #47880 (crashes in call_user_func_array()). (Dmitry)
- Fixed bug #47856 (stristr() converts needle to lower-case). (Ilia)
- Fixed bug #47851 (is_callable throws fatal error). (Dmitry)
- Fixed bug #47816 (pcntl tests failing on NetBSD). (Matteo)
- Fixed bug #47779 (Wrong value for SIG_UNBLOCK and SIG_SETMASK constants).
(Matteo)
- Fixed bug #47771 (Exception during object construction from arg call calls
object's destructor). (Dmitry)
- Fixed bug #47767 (include_once does not resolve windows symlinks or junctions)
(Kanwaljeet Singla, Venkat Raman Don)
- Fixed bug #47757 (rename JPG to JPEG in phpinfo). (Pierre)
- Fixed bug #47745 (FILTER_VALIDATE_INT doesn't allow minimum integer). (Dmitry)
- Fixed bug #47714 (autoloading classes inside exception_handler leads to
crashes). (Dmitry)
- Fixed bug #47671 (Cloning SplObjectStorage instances). (Etienne)
- Fixed bug #47664 (get_class returns NULL instead of FALSE). (Dmitry)
- Fixed bug #47662 (Support more than 127 subpatterns in preg_match). (Nuno)
- Fixed bug #47596 (Bus error on parsing file). (Dmitry)
- Fixed bug #47572 (Undefined constant causes segmentation fault). (Felipe)
- Fixed bug #47560 (explode()'s limit parameter odd behaviour). (Matt)
- Fixed bug #47549 (get_defined_constants() return array with broken array
categories). (Ilia)
- Fixed bug #47535 (Compilation failure in ps_fetch_from_1_to_8_bytes()).
(Johannes)
- Fixed bug #47534 (RecursiveDiteratoryIterator::getChildren ignoring
CURRENT_AS_PATHNAME). (Etienne)
- Fixed bug #47443 (metaphone('scratch') returns wrong result). (Felipe)
- Fixed bug #47438 (mysql_fetch_field ignores zero offset). (Johannes)
- Fixed bug #47398 (PDO_Firebird doesn't implements quoter correctly). (Felipe)
- Fixed bug #47390 (odbc_fetch_into - BC in php 5.3.0). (Felipe)
- Fixed bug #47359 (Use the expected unofficial mimetype for bmp files). (Scott)
- Fixed bug #47343 (gc_collect_cycles causes a segfault when called within a
destructor in one case). (Dmitry)
- Fixed bug #47320 ($php_errormsg out of scope in functions). (Dmitry)
- Fixed bug #47318 (UMR when trying to activate user config). (Pierre)
- Fixed bug #47243 (OCI8: Crash at shutdown on Windows) (Chris Jones/Oracle
Corp.)
- Fixed bug #47231 (offsetGet error using incorrect offset). (Etienne)
- Fixed bug #47229 (preg_quote() should escape the '-' char). (Nuno)
- Fixed bug #47165 (Possible memory corruption when passing return value by
reference). (Dmitry)
- Fixed bug #47087 (Second parameter of mssql_fetch_array()). (Felipe)
- Fixed bug #47085 (rename() returns true even if the file in PHAR does not
exist). (Greg)
- Fixed bug #47050 (mysqli_poll() modifies improper variables). (Johannes)
- Fixed bug #47045 (SplObjectStorage instances compared with ==). (Etienne)
- Fixed bug #47038 (Memory leak in include). (Dmitry)
- Fixed bug #47031 (Fix constants in DualIterator example). (Etienne)
- Fixed bug #47021 (SoapClient stumbles over WSDL delivered with
"Transfer-Encoding: chunked"). (Dmitry)
- Fixed bug #46994 (OCI8: CLOB size does not update when using CLOB IN OUT param
in stored procedure) (Chris Jones/Oracle Corp.)
- Fixed bug #46979 (use with non-compound name *has* effect). (Dmitry)
- Fixed bug #46957 (The tokenizer returns deprecated values). (Felipe)
- Fixed bug #46944 (UTF-8 characters outside the BMP aren't encoded correctly).
(Scott)
- Fixed bug #46897 (ob_flush() should fail to flush unerasable buffers).
(David C.)
- Fixed bug #46849 (Cloning DOMDocument doesn't clone the properties). (Rob)
- Fixed bug #46847 (phpinfo() is missing some settings). (Hannes)
- Fixed bug #46844 (php scripts or included files with first line starting
with # have the 1st line missed from the output). (Ilia)
- Fixed bug #46817 (tokenizer misses last single-line comment (PHP 5.3+, with
re2c lexer)). (Matt, Shire)
- Fixed bug #46811 (ini_set() doesn't return false on failure). (Hannes)
- Fixed bug #46763 (mb_stristr() wrong output when needle does not exist).
(Henrique M. Decaria)
- Fixed bug #46755 (warning: use statement with non-compound name). (Dmitry)
- Fixed bug #46746 (xmlrpc_decode_request outputs non-suppressable error when
given bad data). (Ilia)
- Fixed bug #46738 (Segfault when mb_detect_encoding() fails). (Scott)
- Fixed bug #46731 (Missing validation for the options parameter of the
imap_fetch_overview() function). (Ilia)
- Fixed bug #46711 (cURL curl_setopt leaks memory in foreach loops). (magicaltux
[at] php [dot] net)
- Fixed bug #46701 (Creating associative array with long values in the key fails
on 32bit linux). (Shire)
- Fixed bug #46681 (mkdir() fails silently on PHP 5.3). (Hannes)
- Fixed bug #46653 (can't extend mysqli). (Johannes)
- Fixed bug #46646 (Restrict serialization on some internal classes like Closure
and SplFileInfo using exceptions). (Etienne)
- Fixed bug #46623 (OCI8: phpinfo doesn't show compile time ORACLE_HOME with
phpize) (Chris Jones/Oracle Corp.)
- Fixed bug #46578 (strip_tags() does not honor end-of-comment when it
encounters a single quote). (Felipe)
- Fixed bug #46546 (Segmentation fault when using declare statement with
non-string value). (Felipe)
- Fixed bug #46542 (Extending PDO class with a __call() function doesn't work as
expected). (Johannes)
- Fixed bug #46421 (SplFileInfo not correctly handling /). (Etienne)
- Fixed bug #46347 (parse_ini_file() doesn't support * in keys). (Nuno)
- Fixed bug #46268 (DateTime::modify() does not reset relative time values).
(Derick)
- Fixed bug #46241 (stacked error handlers, internal error handling in general).
(Etienne)
- Fixed bug #46238 (Segmentation fault on static call with empty string method).
(Felipe)
- Fixed bug #46192 (ArrayObject with objects as storage serialization).
(Etienne)
- Fixed bug #46185 (importNode changes the namespace of an XML element). (Rob)
- Fixed bug #46178 (memory leak in ext/phar). (Greg)
- Fixed bug #46160 (SPL - Memory leak when exception is thrown in offsetSet).
(Felipe)
- Fixed Bug #46147 (after stream seek, appending stream filter reads incorrect
data). (Greg)
- Fixed bug #46127 (php_openssl_tcp_sockop_accept forgets to set context on
accepted stream) (Mark Karpeles, Pierre)
- Fixed bug #46115 (Memory leak when calling a method using Reflection).
(Dmitry)
- Fixed bug #46110 (XMLWriter - openmemory() and openuri() leak memory on
multiple calls). (Ilia)
- Fixed bug #46108 (DateTime - Memory leak when unserializing). (Felipe)
- Fixed bug #46106 (Memory leaks when using global statement). (Dmitry)
- Fixed bug #46099 (Xsltprocessor::setProfiling - memory leak). (Felipe, Rob).
- Fixed bug #46087 (DOMXPath - segfault on destruction of a cloned object).
(Ilia)
- Fixed bug #46048 (SimpleXML top-level @attributes not part of iterator).
(David C.)
- Fixed bug #46044 (Mysqli - wrong error message). (Johannes)
- Fixed bug #46042 (memory leaks with reflection of mb_convert_encoding()).
(Ilia)
- Fixed bug #46039 (ArrayObject iteration is slow). (Arnaud)
- Fixed bug #46033 (Direct instantiation of SQLite3stmt and SQLite3result cause
a segfault.) (Scott)
- Fixed bug #45991 (Ini files with the UTF-8 BOM are treated as invalid).
(Scott)
- Fixed bug #45989 (json_decode() doesn't return NULL on certain invalid
strings). (magicaltux, Scott)
- Fixed bug #45976 (Moved SXE from SPL to SimpleXML). (Etienne)
- Fixed bug #45928 (large scripts from stdin are stripped at 16K border).
(Christian Schneider, Arnaud)
- Fixed bug #45911 (Cannot disable ext/hash). (Arnaud)
- Fixed bug #45907 (undefined reference to 'PHP_SHA512Init'). (Greg)
- Fixed bug #45826 (custom ArrayObject serialization). (Etienne)
- Fixed bug #45820 (Allow empty keys in ArrayObject). (Etienne)
- Fixed bug #45791 (json_decode() doesn't convert 0e0 to a double). (Scott)
- Fixed bug #45786 (FastCGI process exited unexpectedly). (Dmitry)
- Fixed bug #45757 (FreeBSD4.11 build failure: failed include; stdint.h).
(Hannes)
- Fixed bug #45743 (property_exists fails to find static protected member in
child class). (Felipe)
- Fixed bug #45717 (Fileinfo/libmagic build fails, missing err.h and getopt.h).
(Derick)
- Fixed bug #45706 (Unserialization of classes derived from ArrayIterator
fails). (Etienne, Dmitry)
- Fixed bug #45696 (Not all DateTime methods allow method chaining). (Derick)
- Fixed bug #45682 (Unable to var_dump(DateInterval)). (Derick)
- Fixed bug #45447 (Filesystem time functions on Vista and server 2008).
(Pierre)
- Fixed bug #45432 (PDO: persistent connection leak). (Felipe)
- Fixed bug #45392 (ob_start()/ob_end_clean() and memory_limit). (Ilia)
- Fixed bug #45384 (parse_ini_file will result in parse error with no trailing
newline). (Arnaud)
- Fixed bug #45382 (timeout bug in stream_socket_enable_crypto). (vnegrier at
optilian dot com, Ilia)
- Fixed bug #45044 (relative paths not resolved correctly). (Dmitry)
- Fixed bug #44861 (scrollable cursor don't work with pgsql). (Matteo)
- Fixed bug #44842 (parse_ini_file keys that start/end with underscore).
(Arnaud)
- Fixed bug #44575 (parse_ini_file comment # line problems). (Arnaud)
- Fixed bug #44409 (PDO::FETCH_SERIALIZE calls __construct()). (Matteo)
- Fixed bug #44173 (PDO->query() parameter parsing/checking needs an update).
(Matteo)
- Fixed bug #44154 (pdo->errorInfo() always have three elements in the returned
array). (David C.)
- Fixed bug #44153 (pdo->errorCode() returns NULL when there are no errors).
(David C.)
- Fixed bug #44135 (PDO MySQL does not support CLIENT_FOUND_ROWS). (Johannes,
chx1975 at gmail dot com)
- Fixed bug #44100 (Inconsistent handling of static array declarations with
duplicate keys). (Dmitry)
- Fixed bug #43831 ($this gets mangled when extending PDO with persistent
connection). (Felipe)
- Fixed bug #43817 (opendir() fails on Windows directories with parent directory
unaccessible). (Dmitry)
- Fixed bug #43069 (SoapClient causes 505 HTTP Version not supported error
message). (Dmitry)
- Fixed bug #43008 (php://filter uris ignore url encoded filternames and can't
handle slashes). (Arnaud)
- Fixed bug #42362 (HTTP status codes 204 and 304 should not be gzipped).
(Scott, Edward Z. Yang)
- Fixed bug #41874 (separate STDOUT and STDERR in exec functions). (Kanwaljeet
Singla, Venkat Raman Don, Pierre)
- Fixed bug #41534 (SoapClient over HTTPS fails to reestablish connection).
(Dmitry)
- Fixed bug #38802 (max_redirects and ignore_errors). (patch by
datibbaw@php.net)
- Fixed bug #35980 (touch() works on files but not on directories). (Pierre)
Re: PHP 5.3.0 Final released....wait for fpm patch!!!
June 29, 2009 12:39PM
It hasn't been officially announced yet.

But like last time you are probably just a couple hours ahead.. :)

If anyone would like to work on getting the patch fixed up, I'm not
sure if using the php 5.3 one from cvs (which is quite old) or just
trying to get the 5.2.10 one working with it is a good place to
start...

I would love to have a patch out as soon as we can!


On Mon, Jun 29, 2009 at 5:43 AM, fei<nginx-forum@nginx.us> wrote:
>
> http://us2.php.net/distributions/php-5.3.0.tar.bz2
> 30 Jun 2009, PHP 5.3.0
> - Upgraded bundled PCRE to version 7.9. (Nuno)
> - Upgraded bundled sqlite to version 3.6.15. (Scott)
>
> - Moved extensions to PECL (Derick, Lukas, Pierre, Scott):
> . ext/dbase
> . ext/fbsql
> . ext/fdf
> . ext/ncurses
> . ext/mhash (BC layer is now entirely within ext/hash)
> . ext/ming
> . ext/msql
> . ext/sybase (not maintained anymore, sybase_ct has to be used instead)
>
> - Removed the experimental RPL (master/slave) functions from mysqli. (Andrey)
> - Removed zend.ze1_compatibility_mode. (Dmitry)
> - Removed all zend_extension_* php.ini directives. Zend extensions are now
> always loaded using zend_extension directive. (Derick)
> - Removed special treatment of "/tmp" in sessions for open_basedir.
> Note: This undocumented behaviour was introduced in 5.2.2. (Alexey)
> - Removed shebang line check from CGI sapi (checked by scanner). (Dmitry)
>
> - Changed PCRE, Reflection and SPL extensions to be always enabled. (Marcus)
> - Changed md5() to use improved implementation. (Solar Designer, Dmitry)
> - Changed HTTP stream wrapper to accept any code between and including
> 200 to 399 as successful. (Mike, Noah Fontes)
> - Changed __call() to be invoked on private/protected method access, similar to
> properties and __get(). (Andrei)
> - Changed dl() to be disabled by default. Enabled only when explicitly
> registered by the SAPI. Currently enabled with cli, cgi and embed SAPIs.
> (Dmitry)
> - Changed opendir(), dir() and scandir() to use default context when no context
> argument is passed. (Sara)
> - Changed open_basedir to allow tightening in runtime contexts. (Sara)
> - Changed PHP/Zend extensions to use flexible build IDs. (Stas)
> - Changed error level E_ERROR into E_WARNING in Soap extension methods
> parameter validation. (Felipe)
> - Changed openssl info to show the shared library version number. (Scott)
> - Changed floating point behaviour to consistently use double precision on all
> platforms and with all compilers. (Christian Seiler)
> - Changed round() to act more intuitively when rounding to a certain precision
> and round very large and very small exponents correctly. (Christian Seiler)
> - Changed session_start() to return false when session startup fails. (Jani)
> - Changed property_exists() to check the existence of a property independent of
> accessibility (like method_exists()). (Felipe)
> - Changed array_reduce() to allow mixed $initial (Christian Seiler)
>
> - Improved PHP syntax and semantics:
> . Added lambda functions and closures. (Christian Seiler, Dmitry)
> . Added "jump label" operator (limited "goto"). (Dmitry, Sara)
> . Added NOWDOC syntax. (Gwynne Raskind, Stas, Dmitry)
> . Added HEREDOC syntax with double quotes. (Lars Strojny, Felipe)
> . Added support for using static HEREDOCs to initialize static variables and
> class members or constants. (Matt)
> . Improved syntax highlighting and consistency for variables in double-quoted
> strings and literal text in HEREDOCs and backticks. (Matt)
> . Added "?:" operator. (Marcus)
> . Added support for namespaces. (Dmitry, Stas, Gregory, Marcus)
> . Added support for Late Static Binding. (Dmitry, Etienne Kneuss)
> . Added support for __callStatic() magic method. (Sara)
> . Added forward_static_call(_array) to complete LSB. (Mike Lively)
> . Added support for dynamic access of static members using $foo::myFunc().
> (Etienne Kneuss)
> . Improved checks for callbacks. (Marcus)
> . Added __DIR__ constant. (Lars Strojny)
> . Added new error modes E_USER_DEPRECATED and E_DEPRECATED.
> E_DEPRECATED is used to inform about stuff being scheduled for removal
> in future PHP versions. (Lars Strojny, Felipe, Marcus)
> . Added "request_order" INI variable to control specifically $_REQUEST
> behavior. (Stas)
> . Added support for exception linking. (Marcus)
> . Added ability to handle exceptions in destructors. (Marcus)
>
> - Improved PHP runtime speed and memory usage:
> . Substitute global-scope, persistent constants with their values at compile
> time. (Matt)
> . Optimized ZEND_SIGNED_MULTIPLY_LONG(). (Matt)
> . Removed direct executor recursion. (Dmitry)
> . Use fastcall calling convention in executor on x86. (Dmitry)
> . Use IS_CV for direct access to $this variable. (Dmitry)
> . Use ZEND_FREE() opcode instead of ZEND_SWITCH_FREE(IS_TMP_VAR). (Dmitry)
> . Lazy EG(active_symbol_table) initialization. (Dmitry)
> . Optimized ZEND_RETURN opcode to not allocate and copy return value if it is
> not used. (Dmitry)
> . Replaced all flex based scanners with re2c based scanners.
> (Marcus, Nuno, Scott)
> . Added garbage collector. (David Wang, Dmitry).
> . Improved PHP binary size and startup speed with GCC4 visibility control.
> (Nuno)
> . Improved engine stack implementation for better performance and stability.
> (Dmitry)
> . Improved memory usage by moving constants to read only memory.
> (Dmitry, Pierre)
> . Changed exception handling. Now each op_array doesn't contain
> ZEND_HANDLE_EXCEPTION opcode in the end. (Dmitry)
> . Optimized require_once() and include_once() by eliminating fopen(3) on
> second usage. (Dmitry)
> . Optimized ZEND_FETCH_CLASS + ZEND_ADD_INTERFACE into single
> ZEND_ADD_INTERFACE opcode. (Dmitry)
> . Optimized string searching for a single character.
> (Michal Dziemianko, Scott)
> . Optimized interpolated strings to use one less opcode. (Matt)
>
> - Improved php.ini handling: (Jani)
> . Added ".htaccess" style user-defined php.ini files support for CGI/FastCGI.
> . Added support for special  and
>  sections. Directives set in these sections can
> not be overridden by user-defined ini-files or during runtime.
> . Added better error reporting for php.ini syntax errors.
> . Allowed using full path to load modules using "extension" directive.
> . Allowed "ini-variables" to be used almost everywhere ini php.ini files.
> . Allowed using alphanumeric/variable indexes in "array" ini options.
> . Added 3rd optional parameter to parse_ini_file() to specify the scanning
> mode of INI_SCANNER_NORMAL or INI_SCANNER_RAW. In raw mode option values
> and section values are treated as-is.
> . Fixed get_cfg_var() to be able to return "array" ini options.
> . Added optional parameter to ini_get_all() to only retrieve the current
> value. (Hannes)
>
> - Improved Windows support:
> . Update all libraries to their latest stable version. (Pierre, Rob, Liz,
> Garrett).
> . Added Windows support for stat(), touch(), filemtime(), filesize() and
> related functions. (Pierre)
> . Re-added socket_create_pair() for Windows in sockets extension. (Kalle)
> . Added inet_pton() and inet_ntop() also for Windows platforms.
> (Kalle, Pierre)
> . Added mcrypt_create_iv() for Windows platforms. (Pierre)
> . Added ACL Cache support on Windows.
> (Kanwaljeet Singla, Pierre, Venkat Raman Don)
> . Added constants based on Windows' GetVersionEx information.
> PHP_WINDOWS_VERSION_* and PHP_WINDOWS_NT_*. (Pierre)
> . Added support for ACL (is_writable, is_readable, reports now correct
> results) on Windows. (Pierre, Venkat Raman Don, Kanwaljeet Singla)
> . Added support for fnmatch() on Windows. (Pierre)
> . Added support for time_nanosleep() and time_sleep_until() on Windows.
> (Pierre)
> . Added support for symlink(), readlink(), linkinfo() and link() on Windows.
> They are available only when the running platform supports them. (Pierre)
> . the GMP extension now relies on MPIR instead of the GMP library. (Pierre)
> . Added Windows support for stream_socket_pair(). (Kalle)
> . Drop all external dependencies for the core features. (Pierre)
> . Drastically improve the build procedure (Pierre, Kalle, Rob):
> . VC9 (Visual C++ 2008) or later support
> . Initial experimental x64 support
> . MSI installer now supports all recent Windows versions, including
> Windows 7. (John, Kanwaljeet Singla)
>
> - Improved and cleaned CGI code:
> . FastCGI is now always enabled and cannot be disabled.
> See sapi/cgi/CHANGES for more details. (Dmitry)
> . Added CGI SAPI -T option which can be used to measure execution
> time of script repeated several times. (Dmitry)
>
> - Improved streams:
> . Fixed confusing error message on failure when no errors are logged. (Greg)
> . Added stream_supports_lock() function. (Benjamin Schulz)
> . Added context parameter for copy() function. (Sara)
> . Added "glob://" stream wrapper. (Marcus)
> . Added "params" as optional parameter for stream_context_create(). (Sara)
> . Added ability to use stream wrappers in include_path. (Gregory, Dmitry)
>
> - Improved DNS API
> . Added Windows support for dns_check_record(), dns_get_mx(), checkdnsrr() and
> getmxrr(). (Pierre)
> . Added support for old style DNS functions (supports OSX and FBSD). (Scott)
> . Added a new "entries" array in dns_check_record() containing the TXT
> elements. (Felipe, Pierre)
>
> - Improved hash extension:
> . Changed mhash to be a wrapper layer around the hash extension. (Scott)
> . Added hash_copy() function. (Tony)
> . Added sha224 hash algorithm to the hash extension. (Scott)
>
> - Improved IMAP support (Pierre):
> . Added imap_gc() to clear the imap cache
> . Added imap_utf8_to_mutf7() and imap_mutf7_to_utf8()
>
> - Improved mbstring extension:
> . Added "mbstring.http_output_conv_mimetypes" INI directive that allows
> common non-text types such as "application/xhtml+xml" to be converted
> by mb_output_handler(). (Moriyoshi)
>
> - Improved OCI8 extension (Chris Jones/Oracle Corp.):
> . Added Database Resident Connection Pooling (DRCP) and Fast
> Application Notification (FAN) support.
> . Added support for Oracle External Authentication (not supported
> on Windows).
> . Improve persistent connection handling of restarted DBs.
> . Added SQLT_AFC (aka CHAR datatype) support to oci_bind_by_name.
> . Fixed bug #45458 (Numeric keys for associative arrays are not
> handled properly)
> . Fixed bug #41069 (Segmentation fault with query over DB link).
> . Fixed define of SQLT_BDOUBLE and SQLT_BFLOAT constants with Oracle
> 10g ORACLE_HOME builds.
> . Changed default value of oci8.default_prefetch from 10 to 100.
> . Fixed PECL Bug #16035 (OCI8: oci_connect without ORACLE_HOME defined causes
> segfault) (Chris Jones/Oracle Corp.)
> . Fixed PECL Bug #15988 (OCI8: sqlnet.ora isn't read with older Oracle
> libraries) (Chris Jones/Oracle Corp.)
> . Fixed PECL Bug #14268 (Allow "pecl install oci8" command to "autodetect" an
> Instant Client RPM install) (Chris Jones/Oracle Corp.)
> . Fixed PECL bug #12431 (OCI8 ping functionality is broken).
> . Allow building (e.g from PECL) the PHP 5.3-based OCI8 code with
> PHP 4.3.9 onwards.
> . Provide separate extensions for Oracle 11g and 10g on Windows.
> (Pierre, Chris)
>
> - Improved OpenSSL extension:
> . Added support for OpenSSL digest and cipher functions. (Dmitry)
> . Added access to internal values of DSA, RSA and DH keys. (Dmitry)
> . Fixed a memory leak on openssl_decrypt(). (Henrique)
> . Fixed segfault caused by openssl_pkey_new(). (Henrique)
> . Fixed bug caused by uninitilized variables in openssl_pkcs7_encrypt() and
> openssl_pkcs7_sign(). (Henrique)
> . Fixed error message in openssl_seal(). (Henrique)
>
> - Improved pcntl extension: (Arnaud)
> . Added pcntl_signal_dispatch().
> . Added pcntl_sigprocmask().
> . Added pcntl_sigwaitinfo().
> . Added pcntl_sigtimedwait().
>
> - Improved SOAP extension:
> . Added support for element names in context of XMLSchema's . (Dmitry)
> . Added ability to use Traversable objects instead of plain arrays.
> (Joshua Reese, Dmitry)
> . Fixed possible crash bug caused by an uninitialized value. (Zdash Urf)
>
> - Improved SPL extension:
> . Added SPL to list of standard extensions that cannot be disabled. (Marcus)
> . Added ability to store associative information with objects in
> SplObjectStorage. (Marcus)
> . Added ArrayAccess support to SplObjectStorage. (Marcus)
> . Added SplDoublyLinkedList, SplStack, SplQueue classes. (Etienne)
> . Added FilesystemIterator. (Marcus)
> . Added GlobIterator. (Marcus)
> . Added SplHeap, SplMinHeap, SplMaxHeap, SplPriorityQueue classes. (Etienne)
> . Added new parameter $prepend to spl_autoload_register(). (Etienne)
> . Added SplFixedArray. (Etienne, Tony)
> . Added delaying exceptions in SPL's autoload mechanism. (Marcus)
> . Added RecursiveTreeIterator. (Arnaud, Marcus)
> . Added MultipleIterator. (Arnaud, Marcus, Johannes)
>
> - Improved Zend Engine:
> . Added "compact" handler for Zend MM storage. (Dmitry)
> . Added "+" and "*" specifiers to zend_parse_parameters(). (Andrei)
> . Added concept of "delayed early binding" that allows opcode caches to
> perform class declaration (early and/or run-time binding) in exactly
> the same order as vanilla PHP. (Dmitry)
>
> - Improved crypt() function: (Pierre)
> . Added Blowfish and extended DES support. (Using Blowfish implementation
> from Solar Designer).
> . Made crypt features portable by providing our own implementations
> for crypt_r and the algorithms which are used when OS does not provide
> them. PHP implementations are always used for Windows builds.
>
> - Deprecated session_register(), session_unregister() and
> session_is_registered(). (Hannes)
> - Deprecated define_syslog_variables(). (Kalle)
> - Deprecated ereg extension. (Felipe)
> - Added new extensions:
> . Added Enchant extension as a way to access spell checkers. (Pierre)
> . Added fileinfo extension as replacement for mime_magic extension. (Derick)
> . Added intl extension for Internationalization. (Ed B., Vladimir I.,
> Dmitry L., Stanislav M., Vadim S., Kirti V.)
> . Added mysqlnd extension as replacement for libmysql for ext/mysql, mysqli
> and PDO_mysql. (Andrey, Johannes, Ulf)
> . Added phar extension for handling PHP Archives. (Greg, Marcus, Steph)
> . Added SQLite3 extension. (Scott)
>
> - Added new date/time functionality: (Derick)
> . date_parse_from_format(): Parse date/time strings according to a format.
> . date_create_from_format()/DateTime::createFromFormat(): Create a date/time
> object by parsing a date/time string according to a given format.
> . date_get_last_errors()/DateTime::getLastErrors(): Return a list of warnings
> and errors that were found while parsing a date/time string through:
> . strtotime() / new DateTime
> . date_create_from_format() / DateTime::createFromFormat()
> . date_parse_from_format().
> . support for abbreviation and offset based timezone specifiers for
> the 'e' format specifier, DateTime::__construct(), DateTime::getTimeZone()
> and DateTimeZone::getName().
> . support for selectively listing timezone identifiers by continent or
> country code through timezone_identifiers_list() /
> DateTimezone::listIdentifiers().
> . timezone_location_get() / DateTimezone::getLocation() for retrieving
> location information from timezones.
> . date_timestamp_set() / DateTime::setTimestamp() to set a Unix timestamp
> without invoking the date parser. (Scott, Derick)
> . date_timestamp_get() / DateTime::getTimestamp() to retrieve the Unix
> timestamp belonging to a date object.
> . two optional parameters to timezone_transitions_get() /
> DateTimeZone::getTranstions() to limit the range of transitions being
> returned.
> . support for "first/last day of " style texts.
> . support for date/time strings returned by MS SQL.
> . support for serialization and unserialization of DateTime objects.
> . support for diffing date/times through date_diff() / DateTime::diff().
> . support for adding/subtracting weekdays with strtotime() and
> DateTime::modify().
> . DateInterval class to represent the difference between two date/times.
> . support for parsing ISO intervals for use with DateInterval.
> . date_add() / DateTime::add(), date_sub() / DateTime::sub() for applying an
> interval to an existing date/time.
> . proper support for "this week", "previous week"/"last week" and "next week"
> phrases so that they actually mean the week and not a seven day period
> around the current day.
> . support for "  of" and "last  of" phrases to be used
> with months - like in "last saturday of februari 2008".
> . support for "back of " and "front of " phrases that are used in
> Scotland.
> . DatePeriod class which supports iterating over a DateTime object applying
> DateInterval on each iteration, up to an end date or limited by maximum
> number of occurences.
>
> - Added compatibility mode in GD, imagerotate, image(filled)ellipse
> imagefilter, imageconvolution and imagecolormatch are now always enabled.
> (Pierre)
> - Added array_replace() and array_replace_recursive() functions. (Matt)
> - Added ReflectionProperty::setAccessible() method that allows non-public
> property's values to be read through ::getValue() and set through
> ::setValue(). (Derick, Sebastian)
> - Added msg_queue_exists() function to sysvmsg extension. (Benjamin Schulz)
> - Added Firebird specific attributes that can be set via PDO::setAttribute()
> to control formatting of date/timestamp columns: PDO::FB_ATTR_DATE_FORMAT,
> PDO::FB_ATTR_TIME_FORMAT and PDO::FB_ATTR_TIMESTAMP_FORMAT. (Lars W)
> - Added gmp_testbit() function. (Stas)
> - Added icon format support to getimagesize(). (Scott)
> - Added LDAP_OPT_NETWORK_TIMEOUT option for ldap_set_option() to allow
> setting network timeout (FR #42837). (Jani)
> - Added optional escape character parameter to fgetcsv(). (David Soria Parra)
> - Added an optional parameter to strstr() and stristr() for retrieval of either
> the part of haystack before or after first occurrence of needle.
> (Johannes, Felipe)
> - Added xsl->setProfiling() for profiling stylesheets. (Christian)
> - Added long-option feature to getopt() and made getopt() available also on
> win32 systems by adding a common getopt implementation into core.
> (David Soria Parra, Jani)
> - Added support for optional values, and = as separator, in getopt(). (Hannes)
> - Added lcfirst() function. (David C)
> - Added PREG_BAD_UTF8_OFFSET_ERROR constant. (Nuno)
> - Added native support for asinh(), acosh(), atanh(), log1p() and expm1().
> (Kalle)
> - Added LIBXML_LOADED_VERSION constant (libxml2 version currently used). (Rob)
> - Added JSON_FORCE_OBJECT flag to json_encode(). (Scott, Richard Quadling)
> - Added timezone_version_get() to retrieve the version of the used timezone
> database. (Derick)
> - Added 'n' flag to fopen to allow passing O_NONBLOCK to the underlying
> open(2) system call. (Mikko)
> - Added "dechunk" filter which can decode HTTP responses with chunked
> transfer-encoding. HTTP streams use this filter automatically in case
> "Transfer-Encoding: chunked" header is present in response. It's possible to
> disable this behaviour using "http"=>array("auto_decode"=>0) in stream
> context. (Dmitry)
> - Added support for CP850 encoding in mbstring extension.
> (Denis Giffeler, Moriyoshi)
> - Added stream_cast() and stream_set_options() to user-space stream wrappers,
> allowing stream_select(), stream_set_blocking(), stream_set_timeout() and
> stream_set_write_buffer() to work with user-space stream wrappers. (Arnaud)
> - Added header_remove() function. (chsc at peytz dot dk, Arnaud)
> - Added stream_context_get_params() function. (Arnaud)
> - Added optional parameter "new" to sybase_connect(). (Timm)
> - Added parse_ini_string() function. (grange at lemonde dot fr, Arnaud)
> - Added str_getcsv() function. (Sara)
> - Added openssl_random_pseudo_bytes() function. (Scott)
> - Added ability to send user defined HTTP headers with SOAP request.
> (Brian J.France, Dmitry)
> - Added concatenation option to bz2.decompress stream filter.
> (Keisial at gmail dot com, Greg)
> - Added support for using compressed connections with PDO_mysql. (Johannes)
> - Added the ability for json_decode() to take a user specified depth. (Scott)
> - Added support for the mysql_stmt_next_result() function from libmysql.
> (Andrey)
> - Added function preg_filter() that does grep and replace in one go. (Marcus)
> - Added system independent realpath() implementation which caches intermediate
> directories in realpath-cache. (Dmitry)
> - Added optional clear_realpath_cache and filename parameters to
> clearstatcache(). (Jani, Arnaud)
> - Added litespeed SAPI module. (George Wang)
> - Added ext/hash support to ext/session's ID generator. (Sara)
> - Added quoted_printable_encode() function. (Tony)
> - Added stream_context_set_default() function. (Davey Shafik)
> - Added optional "is_xhtml" parameter to nl2br() which makes the function
> output  when false and  when true (FR #34381). (Kalle)
> - Added PHP_MAXPATHLEN constant (maximum length of a path). (Pierre)
> - Added support for SSH via libssh2 in cURL. (Pierre)
> - Added support for gray levels PNG image with alpha in GD extension. (Pierre)
> - Added support for salsa hashing functions in HASH extension. (Scott)
> - Added DOMNode::getLineNo to get line number of parsed node. (Rob)
> - Added table info to PDO::getColumnMeta() with SQLite. (Martin Jansen, Scott)
> - Added mail logging functionality that allows logging of mail sent via
> mail() function. (Ilia)
> - Added json_last_error() to return any error information from json_decode().
> (Scott)
> - Added gethostname() to return the current system host name. (Ilia)
> - Added shm_has_var() function. (Mike)
> - Added depth parameter to json_decode() to lower the nesting depth from the
> maximum if required. (Scott)
> - Added pixelation support in imagefilter(). (Takeshi Abe, Kalle)
> - Added SplObjectStorage::addAll/removeAll. (Etienne)
>
> - Implemented FR #41712 (curl progress callback: CURLOPT_PROGRESSFUNCTION).
> (sdteffengmail.com, Pierre)
> - Implemented FR #47739 (Missing cURL option do disable IPv6). (Pierre)
> - Implemented FR #39637 (Missing cURL option CURLOPT_FTP_FILEMETHOD). (Pierre)
>
> - Fixed an issue with ReflectionProperty::setAccessible().
> (Sebastian, Roman Borschel)
> - Fixed html_entity_decode() incorrectly converting numeric html entities
> to different characters with cp1251 and cp866. (Scott)
> - Fixed an issue in date() where a : was printed for the O modifier after a P
> modifier was used. (Derick)
> - Fixed exec() on Windows to not eat the first and last double quotes. (Scott)
> - Fixed readlink on Windows in thread safe SAPI (apache2.x etc.). (Pierre)
> - Fixed a bug causing miscalculations with the "last  of  month"
> relative time string. (Derick)
> - Fixed bug causing the algorithm parameter of mhash() to be modified. (Scott)
> - Fixed invalid calls to free when internal fileinfo magic file is used. (Scott)
> - Fixed memory leak inside wddx_add_vars() function. (Felipe)
> - Fixed check in recode extension to allow builing of recode and mysql
> extensions when using a recent libmysql. (Johannes)
>
> - Fixed PECL bug #12794 (PDOStatement->nextRowset() doesn't work). (Johannes)
> - Fixed PECL bug #12401 (Add support for ATTR_FETCH_TABLE_NAMES). (Johannes)
>
> - Fixed bug #48696 (ldap_read() segfaults with invalid parameters). (Felipe)
> - Fixed bug #48643 (String functions memory issue). (Dmitry)
> - Fixed bug #48641 (tmpfile() uses old parameter parsing).
> (crrodriguez at opensuse dot org)
> - Fixed bug #48624 (.user.ini never gets parsed). (Pierre)
> - Fixed bug #48620 (X-PHP-Originating-Script assumes no trailing CRLF in
> existing headers). (Ilia)
> - Fixed bug #48578 (Can't build 5.3 on FBSD 4.11). (Rasmus)
> - Fixed bug #48535 (file_exists returns false when impersonate is used).
> (Kanwaljeet Singla, Venkat Raman Don)
> - Fixed bug #48493 (spl_autoload_register() doesn't work correctly when
> prepending functions). (Scott)
> - Fixed bug #48215 (Calling a method with the same name as the parent class
> calls the constructor). (Scott)
> - Fixed bug #48200 (compile failure with mbstring.c when
> --enable-zend-multibyte is used). (Jani)
> - Fixed bug #48188 (Cannot execute a scrollable cursors twice with PDO_PGSQL).
> (Matteo)
> - Fixed bug #48185 (warning: value computed is not used in
> pdo_sqlite_stmt_get_col line 271). (Matteo)
> - Fixed bug #48087 (call_user_method() invalid free of arguments). (Felipe)
> - Fixed bug #48060 (pdo_pgsql - large objects are returned as empty). (Matteo)
> - Fixed bug #48034 (PHP crashes when script is 8192 (8KB) bytes long). (Dmitry)
> - Fixed bug #48004 (Error handler prevents creation of default object). (Dmitry)
> - Fixed bug #47880 (crashes in call_user_func_array()). (Dmitry)
> - Fixed bug #47856 (stristr() converts needle to lower-case). (Ilia)
> - Fixed bug #47851 (is_callable throws fatal error). (Dmitry)
> - Fixed bug #47816 (pcntl tests failing on NetBSD). (Matteo)
> - Fixed bug #47779 (Wrong value for SIG_UNBLOCK and SIG_SETMASK constants).
> (Matteo)
> - Fixed bug #47771 (Exception during object construction from arg call calls
> object's destructor). (Dmitry)
> - Fixed bug #47767 (include_once does not resolve windows symlinks or junctions)
> (Kanwaljeet Singla, Venkat Raman Don)
> - Fixed bug #47757 (rename JPG to JPEG in phpinfo). (Pierre)
> - Fixed bug #47745 (FILTER_VALIDATE_INT doesn't allow minimum integer). (Dmitry)
> - Fixed bug #47714 (autoloading classes inside exception_handler leads to
> crashes). (Dmitry)
> - Fixed bug #47671 (Cloning SplObjectStorage instances). (Etienne)
> - Fixed bug #47664 (get_class returns NULL instead of FALSE). (Dmitry)
> - Fixed bug #47662 (Support more than 127 subpatterns in preg_match). (Nuno)
> - Fixed bug #47596 (Bus error on parsing file). (Dmitry)
> - Fixed bug #47572 (Undefined constant causes segmentation fault). (Felipe)
> - Fixed bug #47560 (explode()'s limit parameter odd behaviour). (Matt)
> - Fixed bug #47549 (get_defined_constants() return array with broken array
> categories). (Ilia)
> - Fixed bug #47535 (Compilation failure in ps_fetch_from_1_to_8_bytes()).
> (Johannes)
> - Fixed bug #47534 (RecursiveDiteratoryIterator::getChildren ignoring
> CURRENT_AS_PATHNAME). (Etienne)
> - Fixed bug #47443 (metaphone('scratch') returns wrong result). (Felipe)
> - Fixed bug #47438 (mysql_fetch_field ignores zero offset). (Johannes)
> - Fixed bug #47398 (PDO_Firebird doesn't implements quoter correctly). (Felipe)
> - Fixed bug #47390 (odbc_fetch_into - BC in php 5.3.0). (Felipe)
> - Fixed bug #47359 (Use the expected unofficial mimetype for bmp files). (Scott)
> - Fixed bug #47343 (gc_collect_cycles causes a segfault when called within a
> destructor in one case). (Dmitry)
> - Fixed bug #47320 ($php_errormsg out of scope in functions). (Dmitry)
> - Fixed bug #47318 (UMR when trying to activate user config). (Pierre)
> - Fixed bug #47243 (OCI8: Crash at shutdown on Windows) (Chris Jones/Oracle
> Corp.)
> - Fixed bug #47231 (offsetGet error using incorrect offset). (Etienne)
> - Fixed bug #47229 (preg_quote() should escape the '-' char). (Nuno)
> - Fixed bug #47165 (Possible memory corruption when passing return value by
> reference). (Dmitry)
> - Fixed bug #47087 (Second parameter of mssql_fetch_array()). (Felipe)
> - Fixed bug #47085 (rename() returns true even if the file in PHAR does not
> exist). (Greg)
> - Fixed bug #47050 (mysqli_poll() modifies improper variables). (Johannes)
> - Fixed bug #47045 (SplObjectStorage instances compared with ==). (Etienne)
> - Fixed bug #47038 (Memory leak in include). (Dmitry)
> - Fixed bug #47031 (Fix constants in DualIterator example). (Etienne)
> - Fixed bug #47021 (SoapClient stumbles over WSDL delivered with
> "Transfer-Encoding: chunked"). (Dmitry)
> - Fixed bug #46994 (OCI8: CLOB size does not update when using CLOB IN OUT param
> in stored procedure) (Chris Jones/Oracle Corp.)
> - Fixed bug #46979 (use with non-compound name *has* effect). (Dmitry)
> - Fixed bug #46957 (The tokenizer returns deprecated values). (Felipe)
> - Fixed bug #46944 (UTF-8 characters outside the BMP aren't encoded correctly).
> (Scott)
> - Fixed bug #46897 (ob_flush() should fail to flush unerasable buffers).
> (David C.)
> - Fixed bug #46849 (Cloning DOMDocument doesn't clone the properties). (Rob)
> - Fixed bug #46847 (phpinfo() is missing some settings). (Hannes)
> - Fixed bug #46844 (php scripts or included files with first line starting
> with # have the 1st line missed from the output). (Ilia)
> - Fixed bug #46817 (tokenizer misses last single-line comment (PHP 5.3+, with
> re2c lexer)). (Matt, Shire)
> - Fixed bug #46811 (ini_set() doesn't return false on failure). (Hannes)
> - Fixed bug #46763 (mb_stristr() wrong output when needle does not exist).
> (Henrique M. Decaria)
> - Fixed bug #46755 (warning: use statement with non-compound name). (Dmitry)
> - Fixed bug #46746 (xmlrpc_decode_request outputs non-suppressable error when
> given bad data). (Ilia)
> - Fixed bug #46738 (Segfault when mb_detect_encoding() fails). (Scott)
> - Fixed bug #46731 (Missing validation for the options parameter of the
> imap_fetch_overview() function). (Ilia)
> - Fixed bug #46711 (cURL curl_setopt leaks memory in foreach loops). (magicaltux
>  php  net)
> - Fixed bug #46701 (Creating associative array with long values in the key fails
> on 32bit linux). (Shire)
> - Fixed bug #46681 (mkdir() fails silently on PHP 5.3). (Hannes)
> - Fixed bug #46653 (can't extend mysqli). (Johannes)
> - Fixed bug #46646 (Restrict serialization on some internal classes like Closure
> and SplFileInfo using exceptions). (Etienne)
> - Fixed bug #46623 (OCI8: phpinfo doesn't show compile time ORACLE_HOME with
> phpize) (Chris Jones/Oracle Corp.)
> - Fixed bug #46578 (strip_tags() does not honor end-of-comment when it
> encounters a single quote). (Felipe)
> - Fixed bug #46546 (Segmentation fault when using declare statement with
> non-string value). (Felipe)
> - Fixed bug #46542 (Extending PDO class with a __call() function doesn't work as
> expected). (Johannes)
> - Fixed bug #46421 (SplFileInfo not correctly handling /). (Etienne)
> - Fixed bug #46347 (parse_ini_file() doesn't support * in keys). (Nuno)
> - Fixed bug #46268 (DateTime::modify() does not reset relative time values).
> (Derick)
> - Fixed bug #46241 (stacked error handlers, internal error handling in general).
> (Etienne)
> - Fixed bug #46238 (Segmentation fault on static call with empty string method).
> (Felipe)
> - Fixed bug #46192 (ArrayObject with objects as storage serialization).
> (Etienne)
> - Fixed bug #46185 (importNode changes the namespace of an XML element). (Rob)
> - Fixed bug #46178 (memory leak in ext/phar). (Greg)
> - Fixed bug #46160 (SPL - Memory leak when exception is thrown in offsetSet).
> (Felipe)
> - Fixed Bug #46147 (after stream seek, appending stream filter reads incorrect
> data). (Greg)
> - Fixed bug #46127 (php_openssl_tcp_sockop_accept forgets to set context on
> accepted stream) (Mark Karpeles, Pierre)
> - Fixed bug #46115 (Memory leak when calling a method using Reflection).
> (Dmitry)
> - Fixed bug #46110 (XMLWriter - openmemory() and openuri() leak memory on
> multiple calls). (Ilia)
> - Fixed bug #46108 (DateTime - Memory leak when unserializing). (Felipe)
> - Fixed bug #46106 (Memory leaks when using global statement). (Dmitry)
> - Fixed bug #46099 (Xsltprocessor::setProfiling - memory leak). (Felipe, Rob).
> - Fixed bug #46087 (DOMXPath - segfault on destruction of a cloned object).
> (Ilia)
> - Fixed bug #46048 (SimpleXML top-level @attributes not part of iterator).
> (David C.)
> - Fixed bug #46044 (Mysqli - wrong error message). (Johannes)
> - Fixed bug #46042 (memory leaks with reflection of mb_convert_encoding()).
> (Ilia)
> - Fixed bug #46039 (ArrayObject iteration is slow). (Arnaud)
> - Fixed bug #46033 (Direct instantiation of SQLite3stmt and SQLite3result cause
> a segfault.) (Scott)
> - Fixed bug #45991 (Ini files with the UTF-8 BOM are treated as invalid).
> (Scott)
> - Fixed bug #45989 (json_decode() doesn't return NULL on certain invalid
> strings). (magicaltux, Scott)
> - Fixed bug #45976 (Moved SXE from SPL to SimpleXML). (Etienne)
> - Fixed bug #45928 (large scripts from stdin are stripped at 16K border).
> (Christian Schneider, Arnaud)
> - Fixed bug #45911 (Cannot disable ext/hash). (Arnaud)
> - Fixed bug #45907 (undefined reference to 'PHP_SHA512Init'). (Greg)
> - Fixed bug #45826 (custom ArrayObject serialization). (Etienne)
> - Fixed bug #45820 (Allow empty keys in ArrayObject). (Etienne)
> - Fixed bug #45791 (json_decode() doesn't convert 0e0 to a double). (Scott)
> - Fixed bug #45786 (FastCGI process exited unexpectedly). (Dmitry)
> - Fixed bug #45757 (FreeBSD4.11 build failure: failed include; stdint.h).
> (Hannes)
> - Fixed bug #45743 (property_exists fails to find static protected member in
> child class). (Felipe)
> - Fixed bug #45717 (Fileinfo/libmagic build fails, missing err.h and getopt.h).
> (Derick)
> - Fixed bug #45706 (Unserialization of classes derived from ArrayIterator
> fails). (Etienne, Dmitry)
> - Fixed bug #45696 (Not all DateTime methods allow method chaining). (Derick)
> - Fixed bug #45682 (Unable to var_dump(DateInterval)). (Derick)
> - Fixed bug #45447 (Filesystem time functions on Vista and server 2008).
> (Pierre)
> - Fixed bug #45432 (PDO: persistent connection leak). (Felipe)
> - Fixed bug #45392 (ob_start()/ob_end_clean() and memory_limit). (Ilia)
> - Fixed bug #45384 (parse_ini_file will result in parse error with no trailing
> newline). (Arnaud)
> - Fixed bug #45382 (timeout bug in stream_socket_enable_crypto). (vnegrier at
> optilian dot com, Ilia)
> - Fixed bug #45044 (relative paths not resolved correctly). (Dmitry)
> - Fixed bug #44861 (scrollable cursor don't work with pgsql). (Matteo)
> - Fixed bug #44842 (parse_ini_file keys that start/end with underscore).
> (Arnaud)
> - Fixed bug #44575 (parse_ini_file comment # line problems). (Arnaud)
> - Fixed bug #44409 (PDO::FETCH_SERIALIZE calls __construct()). (Matteo)
> - Fixed bug #44173 (PDO->query() parameter parsing/checking needs an update).
> (Matteo)
> - Fixed bug #44154 (pdo->errorInfo() always have three elements in the returned
> array). (David C.)
> - Fixed bug #44153 (pdo->errorCode() returns NULL when there are no errors).
> (David C.)
> - Fixed bug #44135 (PDO MySQL does not support CLIENT_FOUND_ROWS). (Johannes,
> chx1975 at gmail dot com)
> - Fixed bug #44100 (Inconsistent handling of static array declarations with
> duplicate keys). (Dmitry)
> - Fixed bug #43831 ($this gets mangled when extending PDO with persistent
> connection). (Felipe)
> - Fixed bug #43817 (opendir() fails on Windows directories with parent directory
> unaccessible). (Dmitry)
> - Fixed bug #43069 (SoapClient causes 505 HTTP Version not supported error
> message). (Dmitry)
> - Fixed bug #43008 (php://filter uris ignore url encoded filternames and can't
> handle slashes). (Arnaud)
> - Fixed bug #42362 (HTTP status codes 204 and 304 should not be gzipped).
> (Scott, Edward Z. Yang)
> - Fixed bug #41874 (separate STDOUT and STDERR in exec functions). (Kanwaljeet
> Singla, Venkat Raman Don, Pierre)
> - Fixed bug #41534 (SoapClient over HTTPS fails to reestablish connection).
> (Dmitry)
> - Fixed bug #38802 (max_redirects and ignore_errors). (patch by
> datibbaw@php.net)
> - Fixed bug #35980 (touch() works on files but not on directories). (Pierre)
>
> Posted at Nginx Forum: http://forum.nginx.org/read.php?3,3522,3522#msg-3522
>
>
Cong Dang Chien
Re: PHP 5.3.0 Final released....wait for fpm patch!!!
June 29, 2009 10:25AM
I don't hear any news about PHP-5.3.0 final release!!!!

On Mon, Jun 29, 2009 at 7:43 PM, fei wrote:

>
> http://us2.php.net/distributions/php-5.3.0.tar.bz2
> 30 Jun 2009, PHP 5.3.0
> - Upgraded bundled PCRE to version 7.9. (Nuno)
> - Upgraded bundled sqlite to version 3.6.15. (Scott)
>
> - Moved extensions to PECL (Derick, Lukas, Pierre, Scott):
> . ext/dbase
> . ext/fbsql
> . ext/fdf
> . ext/ncurses
> . ext/mhash (BC layer is now entirely within ext/hash)
> . ext/ming
> . ext/msql
> . ext/sybase (not maintained anymore, sybase_ct has to be used instead)
>
> - Removed the experimental RPL (master/slave) functions from mysqli.
> (Andrey)
> - Removed zend.ze1_compatibility_mode. (Dmitry)
> - Removed all zend_extension_* php.ini directives. Zend extensions are now
> always loaded using zend_extension directive. (Derick)
> - Removed special treatment of "/tmp" in sessions for open_basedir.
> Note: This undocumented behaviour was introduced in 5.2.2. (Alexey)
> - Removed shebang line check from CGI sapi (checked by scanner). (Dmitry)
>
> - Changed PCRE, Reflection and SPL extensions to be always enabled.
> (Marcus)
> - Changed md5() to use improved implementation. (Solar Designer, Dmitry)
> - Changed HTTP stream wrapper to accept any code between and including
> 200 to 399 as successful. (Mike, Noah Fontes)
> - Changed __call() to be invoked on private/protected method access,
> similar to
> properties and __get(). (Andrei)
> - Changed dl() to be disabled by default. Enabled only when explicitly
> registered by the SAPI. Currently enabled with cli, cgi and embed SAPIs.
> (Dmitry)
> - Changed opendir(), dir() and scandir() to use default context when no
> context
> argument is passed. (Sara)
> - Changed open_basedir to allow tightening in runtime contexts. (Sara)
> - Changed PHP/Zend extensions to use flexible build IDs. (Stas)
> - Changed error level E_ERROR into E_WARNING in Soap extension methods
> parameter validation. (Felipe)
> - Changed openssl info to show the shared library version number. (Scott)
> - Changed floating point behaviour to consistently use double precision on
> all
> platforms and with all compilers. (Christian Seiler)
> - Changed round() to act more intuitively when rounding to a certain
> precision
> and round very large and very small exponents correctly. (Christian Seiler)
> - Changed session_start() to return false when session startup fails.
> (Jani)
> - Changed property_exists() to check the existence of a property
> independent of
> accessibility (like method_exists()). (Felipe)
> - Changed array_reduce() to allow mixed $initial (Christian Seiler)
>
> - Improved PHP syntax and semantics:
> . Added lambda functions and closures. (Christian Seiler, Dmitry)
> . Added "jump label" operator (limited "goto"). (Dmitry, Sara)
> . Added NOWDOC syntax. (Gwynne Raskind, Stas, Dmitry)
> . Added HEREDOC syntax with double quotes. (Lars Strojny, Felipe)
> . Added support for using static HEREDOCs to initialize static variables
> and
> class members or constants. (Matt)
> . Improved syntax highlighting and consistency for variables in
> double-quoted
> strings and literal text in HEREDOCs and backticks. (Matt)
> . Added "?:" operator. (Marcus)
> . Added support for namespaces. (Dmitry, Stas, Gregory, Marcus)
> . Added support for Late Static Binding. (Dmitry, Etienne Kneuss)
> . Added support for __callStatic() magic method. (Sara)
> . Added forward_static_call(_array) to complete LSB. (Mike Lively)
> . Added support for dynamic access of static members using $foo::myFunc().
> (Etienne Kneuss)
> . Improved checks for callbacks. (Marcus)
> . Added __DIR__ constant. (Lars Strojny)
> . Added new error modes E_USER_DEPRECATED and E_DEPRECATED.
> E_DEPRECATED is used to inform about stuff being scheduled for removal
> in future PHP versions. (Lars Strojny, Felipe, Marcus)
> . Added "request_order" INI variable to control specifically $_REQUEST
> behavior. (Stas)
> . Added support for exception linking. (Marcus)
> . Added ability to handle exceptions in destructors. (Marcus)
>
> - Improved PHP runtime speed and memory usage:
> . Substitute global-scope, persistent constants with their values at
> compile
> time. (Matt)
> . Optimized ZEND_SIGNED_MULTIPLY_LONG(). (Matt)
> . Removed direct executor recursion. (Dmitry)
> . Use fastcall calling convention in executor on x86. (Dmitry)
> . Use IS_CV for direct access to $this variable. (Dmitry)
> . Use ZEND_FREE() opcode instead of ZEND_SWITCH_FREE(IS_TMP_VAR). (Dmitry)
> . Lazy EG(active_symbol_table) initialization. (Dmitry)
> . Optimized ZEND_RETURN opcode to not allocate and copy return value if it
> is
> not used. (Dmitry)
> . Replaced all flex based scanners with re2c based scanners.
> (Marcus, Nuno, Scott)
> . Added garbage collector. (David Wang, Dmitry).
> . Improved PHP binary size and startup speed with GCC4 visibility control.
> (Nuno)
> . Improved engine stack implementation for better performance and
> stability.
> (Dmitry)
> . Improved memory usage by moving constants to read only memory.
> (Dmitry, Pierre)
> . Changed exception handling. Now each op_array doesn't contain
> ZEND_HANDLE_EXCEPTION opcode in the end. (Dmitry)
> . Optimized require_once() and include_once() by eliminating fopen(3) on
> second usage. (Dmitry)
> . Optimized ZEND_FETCH_CLASS + ZEND_ADD_INTERFACE into single
> ZEND_ADD_INTERFACE opcode. (Dmitry)
> . Optimized string searching for a single character.
> (Michal Dziemianko, Scott)
> . Optimized interpolated strings to use one less opcode. (Matt)
>
> - Improved php.ini handling: (Jani)
> . Added ".htaccess" style user-defined php.ini files support for
> CGI/FastCGI.
> . Added support for special and
> sections. Directives set in these sections can
> not be overridden by user-defined ini-files or during runtime.
> . Added better error reporting for php.ini syntax errors.
> . Allowed using full path to load modules using "extension" directive.
> . Allowed "ini-variables" to be used almost everywhere ini php.ini files.
> . Allowed using alphanumeric/variable indexes in "array" ini options.
> . Added 3rd optional parameter to parse_ini_file() to specify the scanning
> mode of INI_SCANNER_NORMAL or INI_SCANNER_RAW. In raw mode option values
> and section values are treated as-is.
> . Fixed get_cfg_var() to be able to return "array" ini options.
> . Added optional parameter to ini_get_all() to only retrieve the current
> value. (Hannes)
>
> - Improved Windows support:
> . Update all libraries to their latest stable version. (Pierre, Rob, Liz,
> Garrett).
> . Added Windows support for stat(), touch(), filemtime(), filesize() and
> related functions. (Pierre)
> . Re-added socket_create_pair() for Windows in sockets extension. (Kalle)
> . Added inet_pton() and inet_ntop() also for Windows platforms.
> (Kalle, Pierre)
> . Added mcrypt_create_iv() for Windows platforms. (Pierre)
> . Added ACL Cache support on Windows.
> (Kanwaljeet Singla, Pierre, Venkat Raman Don)
> . Added constants based on Windows' GetVersionEx information.
> PHP_WINDOWS_VERSION_* and PHP_WINDOWS_NT_*. (Pierre)
> . Added support for ACL (is_writable, is_readable, reports now correct
> results) on Windows. (Pierre, Venkat Raman Don, Kanwaljeet Singla)
> . Added support for fnmatch() on Windows. (Pierre)
> . Added support for time_nanosleep() and time_sleep_until() on Windows.
> (Pierre)
> . Added support for symlink(), readlink(), linkinfo() and link() on
> Windows.
> They are available only when the running platform supports them. (Pierre)
> . the GMP extension now relies on MPIR instead of the GMP library. (Pierre)
> . Added Windows support for stream_socket_pair(). (Kalle)
> . Drop all external dependencies for the core features. (Pierre)
> . Drastically improve the build procedure (Pierre, Kalle, Rob):
> . VC9 (Visual C++ 2008) or later support
> . Initial experimental x64 support
> . MSI installer now supports all recent Windows versions, including
> Windows 7. (John, Kanwaljeet Singla)
>
> - Improved and cleaned CGI code:
> . FastCGI is now always enabled and cannot be disabled.
> See sapi/cgi/CHANGES for more details. (Dmitry)
> . Added CGI SAPI -T option which can be used to measure execution
> time of script repeated several times. (Dmitry)
>
> - Improved streams:
> . Fixed confusing error message on failure when no errors are logged.
> (Greg)
> . Added stream_supports_lock() function. (Benjamin Schulz)
> . Added context parameter for copy() function. (Sara)
> . Added "glob://" stream wrapper. (Marcus)
> . Added "params" as optional parameter for stream_context_create(). (Sara)
> . Added ability to use stream wrappers in include_path. (Gregory, Dmitry)
>
> - Improved DNS API
> . Added Windows support for dns_check_record(), dns_get_mx(), checkdnsrr()
> and
> getmxrr(). (Pierre)
> . Added support for old style DNS functions (supports OSX and FBSD).
> (Scott)
> . Added a new "entries" array in dns_check_record() containing the TXT
> elements. (Felipe, Pierre)
>
> - Improved hash extension:
> . Changed mhash to be a wrapper layer around the hash extension. (Scott)
> . Added hash_copy() function. (Tony)
> . Added sha224 hash algorithm to the hash extension. (Scott)
>
> - Improved IMAP support (Pierre):
> . Added imap_gc() to clear the imap cache
> . Added imap_utf8_to_mutf7() and imap_mutf7_to_utf8()
>
> - Improved mbstring extension:
> . Added "mbstring.http_output_conv_mimetypes" INI directive that allows
> common non-text types such as "application/xhtml+xml" to be converted
> by mb_output_handler(). (Moriyoshi)
>
> - Improved OCI8 extension (Chris Jones/Oracle Corp.):
> . Added Database Resident Connection Pooling (DRCP) and Fast
> Application Notification (FAN) support.
> . Added support for Oracle External Authentication (not supported
> on Windows).
> . Improve persistent connection handling of restarted DBs.
> . Added SQLT_AFC (aka CHAR datatype) support to oci_bind_by_name.
> . Fixed bug #45458 (Numeric keys for associative arrays are not
> handled properly)
> . Fixed bug #41069 (Segmentation fault with query over DB link).
> . Fixed define of SQLT_BDOUBLE and SQLT_BFLOAT constants with Oracle
> 10g ORACLE_HOME builds.
> . Changed default value of oci8.default_prefetch from 10 to 100.
> . Fixed PECL Bug #16035 (OCI8: oci_connect without ORACLE_HOME defined
> causes
> segfault) (Chris Jones/Oracle Corp.)
> . Fixed PECL Bug #15988 (OCI8: sqlnet.ora isn't read with older Oracle
> libraries) (Chris Jones/Oracle Corp.)
> . Fixed PECL Bug #14268 (Allow "pecl install oci8" command to "autodetect"
> an
> Instant Client RPM install) (Chris Jones/Oracle Corp.)
> . Fixed PECL bug #12431 (OCI8 ping functionality is broken).
> . Allow building (e.g from PECL) the PHP 5.3-based OCI8 code with
> PHP 4.3.9 onwards.
> . Provide separate extensions for Oracle 11g and 10g on Windows.
> (Pierre, Chris)
>
> - Improved OpenSSL extension:
> . Added support for OpenSSL digest and cipher functions. (Dmitry)
> . Added access to internal values of DSA, RSA and DH keys. (Dmitry)
> . Fixed a memory leak on openssl_decrypt(). (Henrique)
> . Fixed segfault caused by openssl_pkey_new(). (Henrique)
> . Fixed bug caused by uninitilized variables in openssl_pkcs7_encrypt() and
> openssl_pkcs7_sign(). (Henrique)
> . Fixed error message in openssl_seal(). (Henrique)
>
> - Improved pcntl extension: (Arnaud)
> . Added pcntl_signal_dispatch().
> . Added pcntl_sigprocmask().
> . Added pcntl_sigwaitinfo().
> . Added pcntl_sigtimedwait().
>
> - Improved SOAP extension:
> . Added support for element names in context of XMLSchema's . (Dmitry)
> . Added ability to use Traversable objects instead of plain arrays.
> (Joshua Reese, Dmitry)
> . Fixed possible crash bug caused by an uninitialized value. (Zdash Urf)
>
> - Improved SPL extension:
> . Added SPL to list of standard extensions that cannot be disabled.
> (Marcus)
> . Added ability to store associative information with objects in
> SplObjectStorage. (Marcus)
> . Added ArrayAccess support to SplObjectStorage. (Marcus)
> . Added SplDoublyLinkedList, SplStack, SplQueue classes. (Etienne)
> . Added FilesystemIterator. (Marcus)
> . Added GlobIterator. (Marcus)
> . Added SplHeap, SplMinHeap, SplMaxHeap, SplPriorityQueue classes.
> (Etienne)
> . Added new parameter $prepend to spl_autoload_register(). (Etienne)
> . Added SplFixedArray. (Etienne, Tony)
> . Added delaying exceptions in SPL's autoload mechanism. (Marcus)
> . Added RecursiveTreeIterator. (Arnaud, Marcus)
> . Added MultipleIterator. (Arnaud, Marcus, Johannes)
>
> - Improved Zend Engine:
> . Added "compact" handler for Zend MM storage. (Dmitry)
> . Added "+" and "*" specifiers to zend_parse_parameters(). (Andrei)
> . Added concept of "delayed early binding" that allows opcode caches to
> perform class declaration (early and/or run-time binding) in exactly
> the same order as vanilla PHP. (Dmitry)
>
> - Improved crypt() function: (Pierre)
> . Added Blowfish and extended DES support. (Using Blowfish implementation
> from Solar Designer).
> . Made crypt features portable by providing our own implementations
> for crypt_r and the algorithms which are used when OS does not provide
> them. PHP implementations are always used for Windows builds.
>
> - Deprecated session_register(), session_unregister() and
> session_is_registered(). (Hannes)
> - Deprecated define_syslog_variables(). (Kalle)
> - Deprecated ereg extension. (Felipe)
> - Added new extensions:
> . Added Enchant extension as a way to access spell checkers. (Pierre)
> . Added fileinfo extension as replacement for mime_magic extension.
> (Derick)
> . Added intl extension for Internationalization. (Ed B., Vladimir I.,
> Dmitry L., Stanislav M., Vadim S., Kirti V.)
> . Added mysqlnd extension as replacement for libmysql for ext/mysql, mysqli
> and PDO_mysql. (Andrey, Johannes, Ulf)
> . Added phar extension for handling PHP Archives. (Greg, Marcus, Steph)
> . Added SQLite3 extension. (Scott)
>
> - Added new date/time functionality: (Derick)
> . date_parse_from_format(): Parse date/time strings according to a format.
> . date_create_from_format()/DateTime::createFromFormat(): Create a
> date/time
> object by parsing a date/time string according to a given format.
> . date_get_last_errors()/DateTime::getLastErrors(): Return a list of
> warnings
> and errors that were found while parsing a date/time string through:
> . strtotime() / new DateTime
> . date_create_from_format() / DateTime::createFromFormat()
> . date_parse_from_format().
> . support for abbreviation and offset based timezone specifiers for
> the 'e' format specifier, DateTime::__construct(), DateTime::getTimeZone()
> and DateTimeZone::getName().
> . support for selectively listing timezone identifiers by continent or
> country code through timezone_identifiers_list() /
> DateTimezone::listIdentifiers().
> . timezone_location_get() / DateTimezone::getLocation() for retrieving
> location information from timezones.
> . date_timestamp_set() / DateTime::setTimestamp() to set a Unix timestamp
> without invoking the date parser. (Scott, Derick)
> . date_timestamp_get() / DateTime::getTimestamp() to retrieve the Unix
> timestamp belonging to a date object.
> . two optional parameters to timezone_transitions_get() /
> DateTimeZone::getTranstions() to limit the range of transitions being
> returned.
> . support for "first/last day of " style texts.
> . support for date/time strings returned by MS SQL.
> . support for serialization and unserialization of DateTime objects.
> . support for diffing date/times through date_diff() / DateTime::diff().
> . support for adding/subtracting weekdays with strtotime() and
> DateTime::modify().
> . DateInterval class to represent the difference between two date/times.
> . support for parsing ISO intervals for use with DateInterval.
> . date_add() / DateTime::add(), date_sub() / DateTime::sub() for applying
> an
> interval to an existing date/time.
> . proper support for "this week", "previous week"/"last week" and "next
> week"
> phrases so that they actually mean the week and not a seven day period
> around the current day.
> . support for " of" and "last of" phrases to be used
> with months - like in "last saturday of februari 2008".
> . support for "back of " and "front of " phrases that are used in
> Scotland.
> . DatePeriod class which supports iterating over a DateTime object applying
> DateInterval on each iteration, up to an end date or limited by maximum
> number of occurences.
>
> - Added compatibility mode in GD, imagerotate, image(filled)ellipse
> imagefilter, imageconvolution and imagecolormatch are now always enabled.
> (Pierre)
> - Added array_replace() and array_replace_recursive() functions. (Matt)
> - Added ReflectionProperty::setAccessible() method that allows non-public
> property's values to be read through ::getValue() and set through
> ::setValue(). (Derick, Sebastian)
> - Added msg_queue_exists() function to sysvmsg extension. (Benjamin Schulz)
> - Added Firebird specific attributes that can be set via
> PDO::setAttribute()
> to control formatting of date/timestamp columns: PDO::FB_ATTR_DATE_FORMAT,
> PDO::FB_ATTR_TIME_FORMAT and PDO::FB_ATTR_TIMESTAMP_FORMAT. (Lars W)
> - Added gmp_testbit() function. (Stas)
> - Added icon format support to getimagesize(). (Scott)
> - Added LDAP_OPT_NETWORK_TIMEOUT option for ldap_set_option() to allow
> setting network timeout (FR #42837). (Jani)
> - Added optional escape character parameter to fgetcsv(). (David Soria
> Parra)
> - Added an optional parameter to strstr() and stristr() for retrieval of
> either
> the part of haystack before or after first occurrence of needle.
> (Johannes, Felipe)
> - Added xsl->setProfiling() for profiling stylesheets. (Christian)
> - Added long-option feature to getopt() and made getopt() available also on
> win32 systems by adding a common getopt implementation into core.
> (David Soria Parra, Jani)
> - Added support for optional values, and = as separator, in getopt().
> (Hannes)
> - Added lcfirst() function. (David C)
> - Added PREG_BAD_UTF8_OFFSET_ERROR constant. (Nuno)
> - Added native support for asinh(), acosh(), atanh(), log1p() and expm1().
> (Kalle)
> - Added LIBXML_LOADED_VERSION constant (libxml2 version currently used).
> (Rob)
> - Added JSON_FORCE_OBJECT flag to json_encode(). (Scott, Richard Quadling)
> - Added timezone_version_get() to retrieve the version of the used timezone
> database. (Derick)
> - Added 'n' flag to fopen to allow passing O_NONBLOCK to the underlying
> open(2) system call. (Mikko)
> - Added "dechunk" filter which can decode HTTP responses with chunked
> transfer-encoding. HTTP streams use this filter automatically in case
> "Transfer-Encoding: chunked" header is present in response. It's possible
> to
> disable this behaviour using "http"=>array("auto_decode"=>0) in stream
> context. (Dmitry)
> - Added support for CP850 encoding in mbstring extension.
> (Denis Giffeler, Moriyoshi)
> - Added stream_cast() and stream_set_options() to user-space stream
> wrappers,
> allowing stream_select(), stream_set_blocking(), stream_set_timeout() and
> stream_set_write_buffer() to work with user-space stream wrappers. (Arnaud)
> - Added header_remove() function. (chsc at peytz dot dk, Arnaud)
> - Added stream_context_get_params() function. (Arnaud)
> - Added optional parameter "new" to sybase_connect(). (Timm)
> - Added parse_ini_string() function. (grange at lemonde dot fr, Arnaud)
> - Added str_getcsv() function. (Sara)
> - Added openssl_random_pseudo_bytes() function. (Scott)
> - Added ability to send user defined HTTP headers with SOAP request.
> (Brian J.France, Dmitry)
> - Added concatenation option to bz2.decompress stream filter.
> (Keisial at gmail dot com, Greg)
> - Added support for using compressed connections with PDO_mysql. (Johannes)
> - Added the ability for json_decode() to take a user specified depth.
> (Scott)
> - Added support for the mysql_stmt_next_result() function from libmysql.
> (Andrey)
> - Added function preg_filter() that does grep and replace in one go.
> (Marcus)
> - Added system independent realpath() implementation which caches
> intermediate
> directories in realpath-cache. (Dmitry)
> - Added optional clear_realpath_cache and filename parameters to
> clearstatcache(). (Jani, Arnaud)
> - Added litespeed SAPI module. (George Wang)
> - Added ext/hash support to ext/session's ID generator. (Sara)
> - Added quoted_printable_encode() function. (Tony)
> - Added stream_context_set_default() function. (Davey Shafik)
> - Added optional "is_xhtml" parameter to nl2br() which makes the function
> output when false and when true (FR #34381). (Kalle)
> - Added PHP_MAXPATHLEN constant (maximum length of a path). (Pierre)
> - Added support for SSH via libssh2 in cURL. (Pierre)
> - Added support for gray levels PNG image with alpha in GD extension.
> (Pierre)
> - Added support for salsa hashing functions in HASH extension. (Scott)
> - Added DOMNode::getLineNo to get line number of parsed node. (Rob)
> - Added table info to PDO::getColumnMeta() with SQLite. (Martin Jansen,
> Scott)
> - Added mail logging functionality that allows logging of mail sent via
> mail() function. (Ilia)
> - Added json_last_error() to return any error information from
> json_decode().
> (Scott)
> - Added gethostname() to return the current system host name. (Ilia)
> - Added shm_has_var() function. (Mike)
> - Added depth parameter to json_decode() to lower the nesting depth from
> the
> maximum if required. (Scott)
> - Added pixelation support in imagefilter(). (Takeshi Abe, Kalle)
> - Added SplObjectStorage::addAll/removeAll. (Etienne)
>
> - Implemented FR #41712 (curl progress callback: CURLOPT_PROGRESSFUNCTION).
> (sdteffengmail.com, Pierre)
> - Implemented FR #47739 (Missing cURL option do disable IPv6). (Pierre)
> - Implemented FR #39637 (Missing cURL option CURLOPT_FTP_FILEMETHOD).
> (Pierre)
>
> - Fixed an issue with ReflectionProperty::setAccessible().
> (Sebastian, Roman Borschel)
> - Fixed html_entity_decode() incorrectly converting numeric html entities
> to different characters with cp1251 and cp866. (Scott)
> - Fixed an issue in date() where a : was printed for the O modifier after a
> P
> modifier was used. (Derick)
> - Fixed exec() on Windows to not eat the first and last double quotes.
> (Scott)
> - Fixed readlink on Windows in thread safe SAPI (apache2.x etc.). (Pierre)
> - Fixed a bug causing miscalculations with the "last of month"
> relative time string. (Derick)
> - Fixed bug causing the algorithm parameter of mhash() to be modified.
> (Scott)
> - Fixed invalid calls to free when internal fileinfo magic file is used.
> (Scott)
> - Fixed memory leak inside wddx_add_vars() function. (Felipe)
> - Fixed check in recode extension to allow builing of recode and mysql
> extensions when using a recent libmysql. (Johannes)
>
> - Fixed PECL bug #12794 (PDOStatement->nextRowset() doesn't work).
> (Johannes)
> - Fixed PECL bug #12401 (Add support for ATTR_FETCH_TABLE_NAMES).
> (Johannes)
>
> - Fixed bug #48696 (ldap_read() segfaults with invalid parameters).
> (Felipe)
> - Fixed bug #48643 (String functions memory issue). (Dmitry)
> - Fixed bug #48641 (tmpfile() uses old parameter parsing).
> (crrodriguez at opensuse dot org)
> - Fixed bug #48624 (.user.ini never gets parsed). (Pierre)
> - Fixed bug #48620 (X-PHP-Originating-Script assumes no trailing CRLF in
> existing headers). (Ilia)
> - Fixed bug #48578 (Can't build 5.3 on FBSD 4.11). (Rasmus)
> - Fixed bug #48535 (file_exists returns false when impersonate is used).
> (Kanwaljeet Singla, Venkat Raman Don)
> - Fixed bug #48493 (spl_autoload_register() doesn't work correctly when
> prepending functions). (Scott)
> - Fixed bug #48215 (Calling a method with the same name as the parent class
> calls the constructor). (Scott)
> - Fixed bug #48200 (compile failure with mbstring.c when
> --enable-zend-multibyte is used). (Jani)
> - Fixed bug #48188 (Cannot execute a scrollable cursors twice with
> PDO_PGSQL).
> (Matteo)
> - Fixed bug #48185 (warning: value computed is not used in
> pdo_sqlite_stmt_get_col line 271). (Matteo)
> - Fixed bug #48087 (call_user_method() invalid free of arguments). (Felipe)
> - Fixed bug #48060 (pdo_pgsql - large objects are returned as empty).
> (Matteo)
> - Fixed bug #48034 (PHP crashes when script is 8192 (8KB) bytes long).
> (Dmitry)
> - Fixed bug #48004 (Error handler prevents creation of default object).
> (Dmitry)
> - Fixed bug #47880 (crashes in call_user_func_array()). (Dmitry)
> - Fixed bug #47856 (stristr() converts needle to lower-case). (Ilia)
> - Fixed bug #47851 (is_callable throws fatal error). (Dmitry)
> - Fixed bug #47816 (pcntl tests failing on NetBSD). (Matteo)
> - Fixed bug #47779 (Wrong value for SIG_UNBLOCK and SIG_SETMASK constants).
> (Matteo)
> - Fixed bug #47771 (Exception during object construction from arg call
> calls
> object's destructor). (Dmitry)
> - Fixed bug #47767 (include_once does not resolve windows symlinks or
> junctions)
> (Kanwaljeet Singla, Venkat Raman Don)
> - Fixed bug #47757 (rename JPG to JPEG in phpinfo). (Pierre)
> - Fixed bug #47745 (FILTER_VALIDATE_INT doesn't allow minimum integer).
> (Dmitry)
> - Fixed bug #47714 (autoloading classes inside exception_handler leads to
> crashes). (Dmitry)
> - Fixed bug #47671 (Cloning SplObjectStorage instances). (Etienne)
> - Fixed bug #47664 (get_class returns NULL instead of FALSE). (Dmitry)
> - Fixed bug #47662 (Support more than 127 subpatterns in preg_match).
> (Nuno)
> - Fixed bug #47596 (Bus error on parsing file). (Dmitry)
> - Fixed bug #47572 (Undefined constant causes segmentation fault). (Felipe)
> - Fixed bug #47560 (explode()'s limit parameter odd behaviour). (Matt)
> - Fixed bug #47549 (get_defined_constants() return array with broken array
> categories). (Ilia)
> - Fixed bug #47535 (Compilation failure in ps_fetch_from_1_to_8_bytes()).
> (Johannes)
> - Fixed bug #47534 (RecursiveDiteratoryIterator::getChildren ignoring
> CURRENT_AS_PATHNAME). (Etienne)
> - Fixed bug #47443 (metaphone('scratch') returns wrong result). (Felipe)
> - Fixed bug #47438 (mysql_fetch_field ignores zero offset). (Johannes)
> - Fixed bug #47398 (PDO_Firebird doesn't implements quoter correctly).
> (Felipe)
> - Fixed bug #47390 (odbc_fetch_into - BC in php 5.3.0). (Felipe)
> - Fixed bug #47359 (Use the expected unofficial mimetype for bmp files).
> (Scott)
> - Fixed bug #47343 (gc_collect_cycles causes a segfault when called within
> a
> destructor in one case). (Dmitry)
> - Fixed bug #47320 ($php_errormsg out of scope in functions). (Dmitry)
> - Fixed bug #47318 (UMR when trying to activate user config). (Pierre)
> - Fixed bug #47243 (OCI8: Crash at shutdown on Windows) (Chris Jones/Oracle
> Corp.)
> - Fixed bug #47231 (offsetGet error using incorrect offset). (Etienne)
> - Fixed bug #47229 (preg_quote() should escape the '-' char). (Nuno)
> - Fixed bug #47165 (Possible memory corruption when passing return value by
> reference). (Dmitry)
> - Fixed bug #47087 (Second parameter of mssql_fetch_array()). (Felipe)
> - Fixed bug #47085 (rename() returns true even if the file in PHAR does not
> exist). (Greg)
> - Fixed bug #47050 (mysqli_poll() modifies improper variables). (Johannes)
> - Fixed bug #47045 (SplObjectStorage instances compared with ==). (Etienne)
> - Fixed bug #47038 (Memory leak in include). (Dmitry)
> - Fixed bug #47031 (Fix constants in DualIterator example). (Etienne)
> - Fixed bug #47021 (SoapClient stumbles over WSDL delivered with
> "Transfer-Encoding: chunked"). (Dmitry)
> - Fixed bug #46994 (OCI8: CLOB size does not update when using CLOB IN OUT
> param
> in stored procedure) (Chris Jones/Oracle Corp.)
> - Fixed bug #46979 (use with non-compound name *has* effect). (Dmitry)
> - Fixed bug #46957 (The tokenizer returns deprecated values). (Felipe)
> - Fixed bug #46944 (UTF-8 characters outside the BMP aren't encoded
> correctly).
> (Scott)
> - Fixed bug #46897 (ob_flush() should fail to flush unerasable buffers).
> (David C.)
> - Fixed bug #46849 (Cloning DOMDocument doesn't clone the properties).
> (Rob)
> - Fixed bug #46847 (phpinfo() is missing some settings). (Hannes)
> - Fixed bug #46844 (php scripts or included files with first line starting
> with # have the 1st line missed from the output). (Ilia)
> - Fixed bug #46817 (tokenizer misses last single-line comment (PHP 5.3+,
> with
> re2c lexer)). (Matt, Shire)
> - Fixed bug #46811 (ini_set() doesn't return false on failure). (Hannes)
> - Fixed bug #46763 (mb_stristr() wrong output when needle does not exist).
> (Henrique M. Decaria)
> - Fixed bug #46755 (warning: use statement with non-compound name).
> (Dmitry)
> - Fixed bug #46746 (xmlrpc_decode_request outputs non-suppressable error
> when
> given bad data). (Ilia)
> - Fixed bug #46738 (Segfault when mb_detect_encoding() fails). (Scott)
> - Fixed bug #46731 (Missing validation for the options parameter of the
> imap_fetch_overview() function). (Ilia)
> - Fixed bug #46711 (cURL curl_setopt leaks memory in foreach loops).
> (magicaltux
> php net)
> - Fixed bug #46701 (Creating associative array with long values in the key
> fails
> on 32bit linux). (Shire)
> - Fixed bug #46681 (mkdir() fails silently on PHP 5.3). (Hannes)
> - Fixed bug #46653 (can't extend mysqli). (Johannes)
> - Fixed bug #46646 (Restrict serialization on some internal classes like
> Closure
> and SplFileInfo using exceptions). (Etienne)
> - Fixed bug #46623 (OCI8: phpinfo doesn't show compile time ORACLE_HOME
> with
> phpize) (Chris Jones/Oracle Corp.)
> - Fixed bug #46578 (strip_tags() does not honor end-of-comment when it
> encounters a single quote). (Felipe)
> - Fixed bug #46546 (Segmentation fault when using declare statement with
> non-string value). (Felipe)
> - Fixed bug #46542 (Extending PDO class with a __call() function doesn't
> work as
> expected). (Johannes)
> - Fixed bug #46421 (SplFileInfo not correctly handling /). (Etienne)
> - Fixed bug #46347 (parse_ini_file() doesn't support * in keys). (Nuno)
> - Fixed bug #46268 (DateTime::modify() does not reset relative time
> values).
> (Derick)
> - Fixed bug #46241 (stacked error handlers, internal error handling in
> general).
> (Etienne)
> - Fixed bug #46238 (Segmentation fault on static call with empty string
> method).
> (Felipe)
> - Fixed bug #46192 (ArrayObject with objects as storage serialization).
> (Etienne)
> - Fixed bug #46185 (importNode changes the namespace of an XML element).
> (Rob)
> - Fixed bug #46178 (memory leak in ext/phar). (Greg)
> - Fixed bug #46160 (SPL - Memory leak when exception is thrown in
> offsetSet).
> (Felipe)
> - Fixed Bug #46147 (after stream seek, appending stream filter reads
> incorrect
> data). (Greg)
> - Fixed bug #46127 (php_openssl_tcp_sockop_accept forgets to set context on
> accepted stream) (Mark Karpeles, Pierre)
> - Fixed bug #46115 (Memory leak when calling a method using Reflection).
> (Dmitry)
> - Fixed bug #46110 (XMLWriter - openmemory() and openuri() leak memory on
> multiple calls). (Ilia)
> - Fixed bug #46108 (DateTime - Memory leak when unserializing). (Felipe)
> - Fixed bug #46106 (Memory leaks when using global statement). (Dmitry)
> - Fixed bug #46099 (Xsltprocessor::setProfiling - memory leak). (Felipe,
> Rob).
> - Fixed bug #46087 (DOMXPath - segfault on destruction of a cloned object).
> (Ilia)
> - Fixed bug #46048 (SimpleXML top-level @attributes not part of iterator).
> (David C.)
> - Fixed bug #46044 (Mysqli - wrong error message). (Johannes)
> - Fixed bug #46042 (memory leaks with reflection of mb_convert_encoding()).
> (Ilia)
> - Fixed bug #46039 (ArrayObject iteration is slow). (Arnaud)
> - Fixed bug #46033 (Direct instantiation of SQLite3stmt and SQLite3result
> cause
> a segfault.) (Scott)
> - Fixed bug #45991 (Ini files with the UTF-8 BOM are treated as invalid).
> (Scott)
> - Fixed bug #45989 (json_decode() doesn't return NULL on certain invalid
> strings). (magicaltux, Scott)
> - Fixed bug #45976 (Moved SXE from SPL to SimpleXML). (Etienne)
> - Fixed bug #45928 (large scripts from stdin are stripped at 16K border).
> (Christian Schneider, Arnaud)
> - Fixed bug #45911 (Cannot disable ext/hash). (Arnaud)
> - Fixed bug #45907 (undefined reference to 'PHP_SHA512Init'). (Greg)
> - Fixed bug #45826 (custom ArrayObject serialization). (Etienne)
> - Fixed bug #45820 (Allow empty keys in ArrayObject). (Etienne)
> - Fixed bug #45791 (json_decode() doesn't convert 0e0 to a double). (Scott)
> - Fixed bug #45786 (FastCGI process exited unexpectedly). (Dmitry)
> - Fixed bug #45757 (FreeBSD4.11 build failure: failed include; stdint.h).
> (Hannes)
> - Fixed bug #45743 (property_exists fails to find static protected member
> in
> child class). (Felipe)
> - Fixed bug #45717 (Fileinfo/libmagic build fails, missing err.h and
> getopt.h).
> (Derick)
> - Fixed bug #45706 (Unserialization of classes derived from ArrayIterator
> fails). (Etienne, Dmitry)
> - Fixed bug #45696 (Not all DateTime methods allow method chaining).
> (Derick)
> - Fixed bug #45682 (Unable to var_dump(DateInterval)). (Derick)
> - Fixed bug #45447 (Filesystem time functions on Vista and server 2008).
> (Pierre)
> - Fixed bug #45432 (PDO: persistent connection leak). (Felipe)
> - Fixed bug #45392 (ob_start()/ob_end_clean() and memory_limit). (Ilia)
> - Fixed bug #45384 (parse_ini_file will result in parse error with no
> trailing
> newline). (Arnaud)
> - Fixed bug #45382 (timeout bug in stream_socket_enable_crypto). (vnegrier
> at
> optilian dot com, Ilia)
> - Fixed bug #45044 (relative paths not resolved correctly). (Dmitry)
> - Fixed bug #44861 (scrollable cursor don't work with pgsql). (Matteo)
> - Fixed bug #44842 (parse_ini_file keys that start/end with underscore).
> (Arnaud)
> - Fixed bug #44575 (parse_ini_file comment # line problems). (Arnaud)
> - Fixed bug #44409 (PDO::FETCH_SERIALIZE calls __construct()). (Matteo)
> - Fixed bug #44173 (PDO->query() parameter parsing/checking needs an
> update).
> (Matteo)
> - Fixed bug #44154 (pdo->errorInfo() always have three elements in the
> returned
> array). (David C.)
> - Fixed bug #44153 (pdo->errorCode() returns NULL when there are no
> errors).
> (David C.)
> - Fixed bug #44135 (PDO MySQL does not support CLIENT_FOUND_ROWS).
> (Johannes,
> chx1975 at gmail dot com)
> - Fixed bug #44100 (Inconsistent handling of static array declarations with
> duplicate keys). (Dmitry)
> - Fixed bug #43831 ($this gets mangled when extending PDO with persistent
> connection). (Felipe)
> - Fixed bug #43817 (opendir() fails on Windows directories with parent
> directory
> unaccessible). (Dmitry)
> - Fixed bug #43069 (SoapClient causes 505 HTTP Version not supported error
> message). (Dmitry)
> - Fixed bug #43008 (php://filter uris ignore url encoded filternames and
> can't
> handle slashes). (Arnaud)
> - Fixed bug #42362 (HTTP status codes 204 and 304 should not be gzipped).
> (Scott, Edward Z. Yang)
> - Fixed bug #41874 (separate STDOUT and STDERR in exec functions).
> (Kanwaljeet
> Singla, Venkat Raman Don, Pierre)
> - Fixed bug #41534 (SoapClient over HTTPS fails to reestablish connection).
> (Dmitry)
> - Fixed bug #38802 (max_redirects and ignore_errors). (patch by
> datibbaw@php.net)
> - Fixed bug #35980 (touch() works on files but not on directories).
> (Pierre)
>
> Posted at Nginx Forum:
> http://forum.nginx.org/read.php?3,3522,3522#msg-3522
>
>
Hi, starting from "php-5.3.0-alpha3-fpm-0.5.10-2.diff.gz" found
somewhere some time ago
i've managed to get a patch for http://us2.php.net/distributions/php-5.3.0.tar.bz2

I've named it: php-5.3.0-fpm-unofficial.diff.gz
download at: http://drop.io/0yfvfku

seems to work...but who knows :)


On Jun 29, 6:39
Re: PHP 5.3.0 Final released....wait for fpm patch!!!
June 29, 2009 06:32PM
I grabbed a copy of it.

It kinda sucks - it would be good to know which areas need testing,
both from functional and from stress testing before calling it
production capable. We don't have any system like that in place nor do
I know the right method to test how the FPM patch changes
functionality necessarily...

On Mon, Jun 29, 2009 at 3:00 PM, Martin<gpointorama@gmail.com> wrote:
>
> Hi, starting from "php-5.3.0-alpha3-fpm-0.5.10-2.diff.gz" found
> somewhere some time ago
> i've managed to get a patch for http://us2.php.net/distributions/php-5.3.0.tar.bz2
>
> I've named it: php-5.3.0-fpm-unofficial.diff.gz
> download at: http://drop.io/0yfvfku
>
> seems to work...but who knows :)
>
>
> On Jun 29, 6:39 pm, Michael Shadle <mike...@gmail.com> wrote:
>> It hasn't been officially announced yet.
>>
>> But like last time you are probably just a couple hours ahead.. :)
>>
>> If anyone would like to work on getting the patch fixed up, I'm not
>> sure if using the php 5.3 one from cvs (which is quite old) or just
>> trying to get the 5.2.10 one working with it is a good place to
>> start...
>>
>> I would love to have a patch out as soon as we can!
>>
>> On Mon, Jun 29, 2009 at 5:43 AM, fei<nginx-fo...@nginx.us> wrote:
>>
>> >http://us2.php.net/distributions/php-5.3.0.tar.bz2
>> > 30 Jun 2009, PHP 5.3.0
>> > - Upgraded bundled PCRE to version 7.9. (Nuno)
>> > - Upgraded bundled sqlite to version 3.6.15. (Scott)
>>
>> > - Moved extensions to PECL (Derick, Lukas, Pierre, Scott):
>> > . ext/dbase
>> > . ext/fbsql
>> > . ext/fdf
>> > . ext/ncurses
>> > . ext/mhash (BC layer is now entirely within ext/hash)
>> > . ext/ming
>> > . ext/msql
>> > . ext/sybase (not maintained anymore, sybase_ct has to be used instead)
>>
>> > - Removed the experimental RPL (master/slave) functions from mysqli. (Andrey)
>> > - Removed zend.ze1_compatibility_mode. (Dmitry)
>> > - Removed all zend_extension_* php.ini directives. Zend extensions are now
>> > always loaded using zend_extension directive. (Derick)
>> > - Removed special treatment of "/tmp" in sessions for open_basedir.
>> > Note: This undocumented behaviour was introduced in 5.2.2. (Alexey)
>> > - Removed shebang line check from CGI sapi (checked by scanner). (Dmitry)
>>
>> > - Changed PCRE, Reflection and SPL extensions to be always enabled. (Marcus)
>> > - Changed md5() to use improved implementation. (Solar Designer, Dmitry)
>> > - Changed HTTP stream wrapper to accept any code between and including
>> > 200 to 399 as successful. (Mike, Noah Fontes)
>> > - Changed __call() to be invoked on private/protected method access, similar to
>> > properties and __get(). (Andrei)
>> > - Changed dl() to be disabled by default. Enabled only when explicitly
>> > registered by the SAPI. Currently enabled with cli, cgi and embed SAPIs.
>> > (Dmitry)
>> > - Changed opendir(), dir() and scandir() to use default context when no context
>> > argument is passed. (Sara)
>> > - Changed open_basedir to allow tightening in runtime contexts. (Sara)
>> > - Changed PHP/Zend extensions to use flexible build IDs. (Stas)
>> > - Changed error level E_ERROR into E_WARNING in Soap extension methods
>> > parameter validation. (Felipe)
>> > - Changed openssl info to show the shared library version number. (Scott)
>> > - Changed floating point behaviour to consistently use double precision on all
>> > platforms and with all compilers. (Christian Seiler)
>> > - Changed round() to act more intuitively when rounding to a certain precision
>> > and round very large and very small exponents correctly. (Christian Seiler)
>> > - Changed session_start() to return false when session startup fails. (Jani)
>> > - Changed property_exists() to check the existence of a property independent of
>> > accessibility (like method_exists()). (Felipe)
>> > - Changed array_reduce() to allow mixed $initial (Christian Seiler)
>>
>> > - Improved PHP syntax and semantics:
>> > . Added lambda functions and closures. (Christian Seiler, Dmitry)
>> > . Added "jump label" operator (limited "goto"). (Dmitry, Sara)
>> > . Added NOWDOC syntax. (Gwynne Raskind, Stas, Dmitry)
>> > . Added HEREDOC syntax with double quotes. (Lars Strojny, Felipe)
>> > . Added support for using static HEREDOCs to initialize static variables and
>> > class members or constants. (Matt)
>> > . Improved syntax highlighting and consistency for variables in double-quoted
>> > strings and literal text in HEREDOCs and backticks. (Matt)
>> > . Added "?:" operator. (Marcus)
>> > . Added support for namespaces. (Dmitry, Stas, Gregory, Marcus)
>> > . Added support for Late Static Binding. (Dmitry, Etienne Kneuss)
>> > . Added support for __callStatic() magic method. (Sara)
>> > . Added forward_static_call(_array) to complete LSB. (Mike Lively)
>> > . Added support for dynamic access of static members using $foo::myFunc().
>> > (Etienne Kneuss)
>> > . Improved checks for callbacks. (Marcus)
>> > . Added __DIR__ constant. (Lars Strojny)
>> > . Added new error modes E_USER_DEPRECATED and E_DEPRECATED.
>> > E_DEPRECATED is used to inform about stuff being scheduled for removal
>> > in future PHP versions. (Lars Strojny, Felipe, Marcus)
>> > . Added "request_order" INI variable to control specifically $_REQUEST
>> > behavior. (Stas)
>> > . Added support for exception linking. (Marcus)
>> > . Added ability to handle exceptions in destructors. (Marcus)
>>
>> > - Improved PHP runtime speed and memory usage:
>> > . Substitute global-scope, persistent constants with their values at compile
>> > time. (Matt)
>> > . Optimized ZEND_SIGNED_MULTIPLY_LONG(). (Matt)
>> > . Removed direct executor recursion. (Dmitry)
>> > . Use fastcall calling convention in executor on x86. (Dmitry)
>> > . Use IS_CV for direct access to $this variable. (Dmitry)
>> > . Use ZEND_FREE() opcode instead of ZEND_SWITCH_FREE(IS_TMP_VAR). (Dmitry)
>> > . Lazy EG(active_symbol_table) initialization. (Dmitry)
>> > . Optimized ZEND_RETURN opcode to not allocate and copy return value if it is
>> > not used. (Dmitry)
>> > . Replaced all flex based scanners with re2c based scanners.
>> > (Marcus, Nuno, Scott)
>> > . Added garbage collector. (David Wang, Dmitry).
>> > . Improved PHP binary size and startup speed with GCC4 visibility control.
>> > (Nuno)
>> > . Improved engine stack implementation for better performance and stability.
>> > (Dmitry)
>> > . Improved memory usage by moving constants to read only memory.
>> > (Dmitry, Pierre)
>> > . Changed exception handling. Now each op_array doesn't contain
>> > ZEND_HANDLE_EXCEPTION opcode in the end. (Dmitry)
>> > . Optimized require_once() and include_once() by eliminating fopen(3) on
>> > second usage. (Dmitry)
>> > . Optimized ZEND_FETCH_CLASS + ZEND_ADD_INTERFACE into single
>> > ZEND_ADD_INTERFACE opcode. (Dmitry)
>> > . Optimized string searching for a single character.
>> > (Michal Dziemianko, Scott)
>> > . Optimized interpolated strings to use one less opcode. (Matt)
>>
>> > - Improved php.ini handling: (Jani)
>> > . Added ".htaccess" style user-defined php.ini files support for CGI/FastCGI.
>> > . Added support for special  and
>> >  sections. Directives set in these sections can
>> > not be overridden by user-defined ini-files or during runtime.
>> > . Added better error reporting for php.ini syntax errors.
>> > . Allowed using full path to load modules using "extension" directive.
>> > . Allowed "ini-variables" to be used almost everywhere ini php.ini files.
>> > . Allowed using alphanumeric/variable indexes in "array" ini options.
>> > . Added 3rd optional parameter to parse_ini_file() to specify the scanning
>> > mode of INI_SCANNER_NORMAL or INI_SCANNER_RAW. In raw mode option values
>> > and section values are treated as-is.
>> > . Fixed get_cfg_var() to be able to return "array" ini options.
>> > . Added optional parameter to ini_get_all() to only retrieve the current
>> > value. (Hannes)
>>
>> > - Improved Windows support:
>> > . Update all libraries to their latest stable version. (Pierre, Rob, Liz,
>> > Garrett).
>> > . Added Windows support for stat(), touch(), filemtime(), filesize() and
>> > related functions. (Pierre)
>> > . Re-added socket_create_pair() for Windows in sockets extension. (Kalle)
>> > . Added inet_pton() and inet_ntop() also for Windows platforms.
>> > (Kalle, Pierre)
>> > . Added mcrypt_create_iv() for Windows platforms. (Pierre)
>> > . Added ACL Cache support on Windows.
>> > (Kanwaljeet Singla, Pierre, Venkat Raman Don)
>> > . Added constants based on Windows' GetVersionEx information.
>> > PHP_WINDOWS_VERSION_* and PHP_WINDOWS_NT_*. (Pierre)
>> > . Added support for ACL (is_writable, is_readable, reports now correct
>> > results) on Windows. (Pierre, Venkat Raman Don, Kanwaljeet Singla)
>> > . Added support for fnmatch() on Windows. (Pierre)
>> > . Added support for time_nanosleep() and time_sleep_until() on Windows.
>> > (Pierre)
>> > . Added support for symlink(), readlink(), linkinfo() and link() on Windows.
>> > They are available only when the running platform supports them. (Pierre)
>> > . the GMP extension now relies on MPIR instead of the GMP library. (Pierre)
>> > . Added Windows support for stream_socket_pair(). (Kalle)
>> > . Drop all external dependencies for the core features. (Pierre)
>> > . Drastically improve the build procedure (Pierre, Kalle, Rob):
>> > . VC9 (Visual C++ 2008) or later support
>> > . Initial experimental x64 support
>> > . MSI installer now supports all recent Windows versions, including
>> > Windows 7. (John, Kanwaljeet Singla)
>>
>> > - Improved and cleaned CGI code:
>> > . FastCGI is now always enabled and cannot be disabled.
>> > See sapi/cgi/CHANGES for more details. (Dmitry)
>> > . Added CGI SAPI -T option which can be used to measure execution
>> > time of script repeated several times. (Dmitry)
>>
>> > - Improved streams:
>> > . Fixed confusing error message on failure when no errors are logged. (Greg)
>> > . Added stream_supports_lock() function. (Benjamin Schulz)
>> > . Added context parameter for copy() function. (Sara)
>> > . Added "glob://" stream wrapper. (Marcus)
>> > . Added "params" as optional parameter for stream_context_create(). (Sara)
>> > . Added ability to use stream wrappers in include_path. (Gregory, Dmitry)
>>
>> > - Improved DNS API
>> > . Added Windows support for dns_check_record(), dns_get_mx(), checkdnsrr() and
>> > getmxrr(). (Pierre)
>> > . Added support for old style DNS functions (supports OSX and FBSD). (Scott)
>> > . Added a new "entries" array in dns_check_record() containing the TXT
>> > elements. (Felipe, Pierre)
>>
>> > - Improved hash extension:
>> > . Changed mhash to be a wrapper layer around the hash extension. (Scott)
>> > . Added hash_copy() function. (Tony)
>> > . Added sha224 hash algorithm to the hash extension. (Scott)
>>
>> > - Improved IMAP support (Pierre):
>> > . Added imap_gc() to clear the imap cache
>> > . Added imap_utf8_to_mutf7() and imap_mutf7_to_utf8()
>>
>> > - Improved mbstring extension:
>> > . Added "mbstring.http_output_conv_mimetypes" INI directive that allows
>> > common non-text types such as "application/xhtml+xml" to be converted
>> > by mb_output_handler(). (Moriyoshi)
>>
>> > - Improved OCI8 extension (Chris Jones/Oracle Corp.):
>> > . Added Database Resident Connection Pooling (DRCP) and Fast
>> > Application Notification
>>
>> ...
>>
>> read more »
>
Sorry if I've in any way called it production capable.
It doesn't add anything to "php-5.3.0-alpha3-fpm-0.5.10-2.diff.gz"
i've simply modified the line numbers of the patch :) in some files.
I've also not executed make tests or nothing more than executing some
pages from a website.
but i liked to share it anyway :)

On Jun 30, 12:32
Re: PHP 5.3.0 Final released....wait for fpm patch!!!
June 29, 2009 06:51PM
Not a problem. Anyone's contributions are valued.

In theory if the patch applies cleanly, there hasn't been any changes
to 5.3.0's FastCGI SAPI all that much then...

I'm supposed to hear back from some actual PHP/PECL folks about next
steps soon too. They may or may not have time or names of people who
can help and other tips to keep this going and/or merge portions or
all of it.

On Mon, Jun 29, 2009 at 3:45 PM, Martin<gpointorama@gmail.com> wrote:
>
> Sorry if I've in any way called it production capable.
> It doesn't add anything to "php-5.3.0-alpha3-fpm-0.5.10-2.diff.gz"
> i've simply modified the line numbers of the patch :) in some files.
> I've also not executed make tests or nothing more than executing some
> pages from a website.
> but i liked to share it anyway :)
>
> On Jun 30, 12:32 am, Michael Shadle <mike...@gmail.com> wrote:
>> I grabbed a copy of it.
>>
>> It kinda sucks - it would be good to know which areas need testing,
>> both from functional and from stress testing before calling it
>> production capable. We don't have any system like that in place nor do
>> I know the right method to test how the FPM patch changes
>> functionality necessarily...
>>
>> On Mon, Jun 29, 2009 at 3:00 PM, Martin<gpointor...@gmail.com> wrote:
>>
>> > Hi, starting from "php-5.3.0-alpha3-fpm-0.5.10-2.diff.gz" found
>> > somewhere some time ago
>> > i've managed to get a patch forhttp://us2.php.net/distributions/php-5.3.0.tar.bz2
>>
>> > I've named it: php-5.3.0-fpm-unofficial.diff.gz
>> > download at:http://drop.io/0yfvfku
>>
>> > seems to work...but who knows :)
>>
>> > On Jun 29, 6:39 pm, Michael Shadle <mike...@gmail.com> wrote:
>> >> It hasn't been officially announced yet.
>>
>> >> But like last time you are probably just a couple hours ahead.. :)
>>
>> >> If anyone would like to work on getting the patch fixed up, I'm not
>> >> sure if using the php 5.3 one from cvs (which is quite old) or just
>> >> trying to get the 5.2.10 one working with it is a good place to
>> >> start...
>>
>> >> I would love to have a patch out as soon as we can!
>>
>> >> On Mon, Jun 29, 2009 at 5:43 AM, fei<nginx-fo...@nginx.us> wrote:
>>
>> >> >http://us2.php.net/distributions/php-5.3.0.tar.bz2
>> >> > 30 Jun 2009, PHP 5.3.0
>> >> > - Upgraded bundled PCRE to version 7.9. (Nuno)
>> >> > - Upgraded bundled sqlite to version 3.6.15. (Scott)
>>
>> >> > - Moved extensions to PECL (Derick, Lukas, Pierre, Scott):
>> >> > . ext/dbase
>> >> > . ext/fbsql
>> >> > . ext/fdf
>> >> > . ext/ncurses
>> >> > . ext/mhash (BC layer is now entirely within ext/hash)
>> >> > . ext/ming
>> >> > . ext/msql
>> >> > . ext/sybase (not maintained anymore, sybase_ct has to be used instead)
>>
>> >> > - Removed the experimental RPL (master/slave) functions from mysqli. (Andrey)
>> >> > - Removed zend.ze1_compatibility_mode. (Dmitry)
>> >> > - Removed all zend_extension_* php.ini directives. Zend extensions are now
>> >> > always loaded using zend_extension directive. (Derick)
>> >> > - Removed special treatment of "/tmp" in sessions for open_basedir.
>> >> > Note: This undocumented behaviour was introduced in 5.2.2. (Alexey)
>> >> > - Removed shebang line check from CGI sapi (checked by scanner). (Dmitry)
>>
>> >> > - Changed PCRE, Reflection and SPL extensions to be always enabled. (Marcus)
>> >> > - Changed md5() to use improved implementation. (Solar Designer, Dmitry)
>> >> > - Changed HTTP stream wrapper to accept any code between and including
>> >> > 200 to 399 as successful. (Mike, Noah Fontes)
>> >> > - Changed __call() to be invoked on private/protected method access, similar to
>> >> > properties and __get(). (Andrei)
>> >> > - Changed dl() to be disabled by default. Enabled only when explicitly
>> >> > registered by the SAPI. Currently enabled with cli, cgi and embed SAPIs.
>> >> > (Dmitry)
>> >> > - Changed opendir(), dir() and scandir() to use default context when no context
>> >> > argument is passed. (Sara)
>> >> > - Changed open_basedir to allow tightening in runtime contexts. (Sara)
>> >> > - Changed PHP/Zend extensions to use flexible build IDs. (Stas)
>> >> > - Changed error level E_ERROR into E_WARNING in Soap extension methods
>> >> > parameter validation. (Felipe)
>> >> > - Changed openssl info to show the shared library version number. (Scott)
>> >> > - Changed floating point behaviour to consistently use double precision on all
>> >> > platforms and with all compilers. (Christian Seiler)
>> >> > - Changed round() to act more intuitively when rounding to a certain precision
>> >> > and round very large and very small exponents correctly. (Christian Seiler)
>> >> > - Changed session_start() to return false when session startup fails. (Jani)
>> >> > - Changed property_exists() to check the existence of a property independent of
>> >> > accessibility (like method_exists()). (Felipe)
>> >> > - Changed array_reduce() to allow mixed $initial (Christian Seiler)
>>
>> >> > - Improved PHP syntax and semantics:
>> >> > . Added lambda functions and closures. (Christian Seiler, Dmitry)
>> >> > . Added "jump label" operator (limited "goto"). (Dmitry, Sara)
>> >> > . Added NOWDOC syntax. (Gwynne Raskind, Stas, Dmitry)
>> >> > . Added HEREDOC syntax with double quotes. (Lars Strojny, Felipe)
>> >> > . Added support for using static HEREDOCs to initialize static variables and
>> >> > class members or constants. (Matt)
>> >> > . Improved syntax highlighting and consistency for variables in double-quoted
>> >> > strings and literal text in HEREDOCs and backticks. (Matt)
>> >> > . Added "?:" operator. (Marcus)
>> >> > . Added support for namespaces. (Dmitry, Stas, Gregory, Marcus)
>> >> > . Added support for Late Static Binding. (Dmitry, Etienne Kneuss)
>> >> > . Added support for __callStatic() magic method. (Sara)
>> >> > . Added forward_static_call(_array) to complete LSB. (Mike Lively)
>> >> > . Added support for dynamic access of static members using $foo::myFunc().
>> >> > (Etienne Kneuss)
>> >> > . Improved checks for callbacks. (Marcus)
>> >> > . Added __DIR__ constant. (Lars Strojny)
>> >> > . Added new error modes E_USER_DEPRECATED and E_DEPRECATED.
>> >> > E_DEPRECATED is used to inform about stuff being scheduled for removal
>> >> > in future PHP versions. (Lars Strojny, Felipe, Marcus)
>> >> > . Added "request_order" INI variable to control specifically $_REQUEST
>> >> > behavior. (Stas)
>> >> > . Added support for exception linking. (Marcus)
>> >> > . Added ability to handle exceptions in destructors. (Marcus)
>>
>> >> > - Improved PHP runtime speed and memory usage:
>> >> > . Substitute global-scope, persistent constants with their values at compile
>> >> > time. (Matt)
>> >> > . Optimized ZEND_SIGNED_MULTIPLY_LONG(). (Matt)
>> >> > . Removed direct executor recursion. (Dmitry)
>> >> > . Use fastcall calling convention in executor on x86. (Dmitry)
>> >> > . Use IS_CV for direct access to $this variable. (Dmitry)
>> >> > . Use ZEND_FREE() opcode instead of ZEND_SWITCH_FREE(IS_TMP_VAR). (Dmitry)
>> >> > . Lazy EG(active_symbol_table) initialization. (Dmitry)
>> >> > . Optimized ZEND_RETURN opcode to not allocate and copy return value if it is
>> >> > not used. (Dmitry)
>> >> > . Replaced all flex based scanners with re2c based scanners.
>> >> > (Marcus, Nuno, Scott)
>> >> > . Added garbage collector. (David Wang, Dmitry).
>> >> > . Improved PHP binary size and startup speed with GCC4 visibility control.
>> >> > (Nuno)
>> >> > . Improved engine stack implementation for better performance and stability.
>> >> > (Dmitry)
>> >> > . Improved memory usage by moving constants to read only memory.
>> >> > (Dmitry, Pierre)
>> >> > . Changed exception handling. Now each op_array doesn't contain
>> >> > ZEND_HANDLE_EXCEPTION opcode in the end. (Dmitry)
>> >> > . Optimized require_once() and include_once() by eliminating fopen(3) on
>> >> > second usage. (Dmitry)
>> >> > . Optimized ZEND_FETCH_CLASS + ZEND_ADD_INTERFACE into single
>> >> > ZEND_ADD_INTERFACE opcode. (Dmitry)
>> >> > . Optimized string searching for a single character.
>> >> > (Michal Dziemianko, Scott)
>> >> > . Optimized interpolated strings to use one less opcode. (Matt)
>>
>> >> > - Improved php.ini handling: (Jani)
>> >> > . Added ".htaccess" style user-defined php.ini files support for CGI/FastCGI.
>> >> > . Added support for special  and
>> >> >  sections. Directives set in these sections can
>> >> > not be overridden by user-defined ini-files or during runtime.
>> >> > . Added better error reporting for php.ini syntax errors.
>> >> > . Allowed using full path to load modules using "extension" directive.
>> >> > . Allowed "ini-variables" to be used almost everywhere ini php.ini files.
>> >> > . Allowed using alphanumeric/variable indexes in "array" ini options.
>> >> > . Added 3rd optional parameter to parse_ini_file() to specify the scanning
>> >> > mode of INI_SCANNER_NORMAL or INI_SCANNER_RAW. In raw mode option values
>> >> > and section values are treated as-is.
>> >> > . Fixed get_cfg_var() to be able to return "array" ini options.
>> >> > . Added optional parameter to ini_get_all() to only retrieve the current
>> >> > value. (Hannes)
>>
>> >> > - Improved Windows support:
>> >> > . Update all libraries to their latest stable version. (Pierre, Rob, Liz,
>> >> > Garrett).
>> >> > . Added Windows support for stat(), touch(), filemtime(), filesize() and
>> >> > related functions. (Pierre)
>> >> > . Re-added socket_create_pair() for Windows in sockets extension. (Kalle)
>> >> > . Added inet_pton() and inet_ntop() also for Windows platforms.
>> >> > (Kalle, Pierre)
>> >> > . Added mcrypt_create_iv() for Windows platforms. (Pierre)
>> >> > . Added ACL Cache support on Windows.
>> >> > (Kanwaljeet Singla, Pierre, Venkat Raman Don)
>> >> > . Added constants based on Windows' GetVersionEx information.
>> >> > PHP_WINDOWS_VERSION_* and PHP_WINDOWS_NT_*. (Pierre)
>> >> > . Added support for ACL (is_writable, is_readable, reports now correct
>> >> > results) on Windows. (Pierre, Venkat Raman Don, Kanwaljeet Singla)
>> >> > . Added support for fnmatch() on Windows. (Pierre)
>> >> > . Added support for time_nanosleep() and time_sleep_until() on Windows.
>> >> > (Pierre)
>> >> > . Added support for symlink(), readlink(), linkinfo() and link() on Windows.
>> >> > They are available only when the running platform supports them. (Pierre)
>> >> > . the GMP extension now relies on MPIR instead of the GMP library. (Pierre)
>> >> > . Added Windows support for stream_socket_pair(). (Kalle)
>> >> > . Drop all external dependencies for the core features. (Pierre)
>> >> > . Drastically improve the build procedure (Pierre, Kalle, Rob):
>> >> > . VC9 (Visual C++ 2008) or later support
>> >> > . Initial experimental x64 support
>> >> > . MSI installer now supports all recent Windows versions, including
>> >> > Windows 7. (John, Kanwaljeet Singla)
>>
>> >> > - Improved and cleaned CGI code:
>> >> > . FastCGI is now always enabled and cannot be disabled.
>> >> > See sapi/cgi/CHANGES for more details. (Dmitry)
>> >> > . Added CGI SAPI -T option which can be used to measure execution
>> >> > time of script repeated several times. (Dmitry)
>>
>> >> > - Improved streams:
>> >> > . Fixed confusing error message on failure when no errors are logged. (Greg)
>> >> > . Added stream_supports_lock() function. (Benjamin Schulz)
>> >> > . Added context
>>
>> ...
>>
>> read more »
fei
Re: PHP 5.3.0 Final released....wait for fpm patch!!!
June 29, 2009 08:57PM
works fine.compile ok.
Re: PHP 5.3.0 Final released....wait for fpm patch!!!
June 29, 2009 10:48PM
Well that's good. Compile passes. But we can't consider it gold
without some true tests. Of which none are written so we can only rely
on "me too" replies on the mailing list running it in production.

I'm not even sure i can adopt it because some of the code I have to
support is using deprecated functions or changed behaviors!

Sent from my iPhone

On Jun 29, 2009, at 5:57 PM, "fei" <nginx-forum@nginx.us> wrote:

>
> works fine.compile ok.
>
> Posted at Nginx Forum: http://forum.nginx.org/read.php?3,3522,3551#msg-3551
>
Re: PHP 5.3.0 Final released....wait for fpm patch!!!
June 30, 2009 01:01PM
I noticed two things in my quick look at changes for php 5.3.0. These
may have already been done or worked out in the cvs 5.3.0 fpm - but
they were changes to the fastcgi SAPI which may lead to different
behavior possibly. Although the more people who can use that version,
it obviously compiles fine, now we need people with real production
load, multiple pools, tcp ports and file sockets, trying to hit the
request_execution_timeout (or whichever one is not the deprecated one)
and ensuring it dies properly, PHP children respawning appropriately,
etc. We need a lot of people to try it out before I will label it
official.... like I said, I want to use it myself, but I know some of
the code I'm supporting will probably break (years of bad code from
tons of different people)

Here's the two obvious things which may warrant some looking:

Improved and cleaned CGI code:
FastCGI is now always enabled and cannot be disabled. See
sapi/cgi/CHANGES for more details. (Dmitry)

and http://bugs.php.net/bug.php?id=45786


On Mon, Jun 29, 2009 at 7:48 PM, Michael Shadle<mike503@gmail.com> wrote:
> Well that's good. Compile passes. But we can't consider it gold without some
> true tests. Of which none are written so we can only rely on "me too"
> replies on the mailing list running it in production.
>
> I'm not even sure i can adopt it because some of the code I have to support
> is using deprecated functions or changed behaviors!
>
> Sent from my iPhone
>
> On Jun 29, 2009, at 5:57 PM, "fei" <nginx-forum@nginx.us> wrote:
>
>>
>> works fine.compile ok.
>>
>> Posted at Nginx Forum:
>> http://forum.nginx.org/read.php?3,3522,3551#msg-3551
>>
>
Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 99
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready