summaryrefslogtreecommitdiff
path: root/NEWS
diff options
context:
space:
mode:
authorMark A. Hershberger <mah@debian.(none)>2009-03-25 19:39:21 -0400
committerMark A. Hershberger <mah@debian.(none)>2009-03-25 19:39:21 -0400
commit6821b67124604da690c5e9276d5370d679c63ac8 (patch)
treebefb4ca2520eb577950cef6cb76d10b914cbf67a /NEWS
parentcd0b49c72aee33b3e44a9c589fcd93b9e1c7a64f (diff)
downloadphp-6821b67124604da690c5e9276d5370d679c63ac8.tar.gz
Imported Upstream version 5.3.0RC1upstream/5.3.0_RC1upstream/5.3.0RC1
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS1365
1 files changed, 718 insertions, 647 deletions
diff --git a/NEWS b/NEWS
index 269718f87..15ac567d8 100644
--- a/NEWS
+++ b/NEWS
@@ -1,673 +1,744 @@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-26 Feb 2009, PHP 5.2.9
+24 Mar 2009, PHP 5.3.0 RC 1
+- Upgraded bundled sqlite to version 3.6.11. (Scott)
+- Upgraded bundled libmagic to 5.00 in the fileinfo extension. (Scott)
+
+- Re-enabled phar for big-endian systems after fixing problems. (Greg)
+
+- Added LIBXML_LOADED_VERSION constant (libxml2 version currently used). (Rob)
+- Added JSON_FORCE_OBJECT flag to json_encode(). (Scott, Richard Quadling)
+
+- Added support for CP850 encoding in mbstring extension.
+ (Denis Giffeler, Moriyoshi)
+
+- Fixed bug #47678 (Allow loadExtension to be disabled in SQLite3). (Scott)
+- Fixed bug #47671 (Cloning SplObjectStorage instances). (Etienne)
+- Fixed bug #47664 (get_class returns NULL instead of FALSE). (Dmitry)
+- Fixed bug #47593 (interface_exists() returns false when using absolute
+ namespace path). (Kalle, Felipe)
+- Fixed bug #47572 (Undefined constant causes segmentation fault). (Felipe)
+- Fixed bug #47549 (get_defined_constants() return array with broken
+ array categories). (Ilia)
+- 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 #47329 (Crash in garbage collector). (Dmitry)
+- Fixed bug #47320 ($php_errormsg out of scope in functions). (Dmitry)
+- Fixed bug #47265 (generating phar.phar fails because of safe_mode). (Greg)
+- 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 #47085 (rename() returns true even if the file in PHAR does not
+ exist). (Greg)
+- Fixed bug #47031 (Fix constants in DualIterator example). (Etienne)
+- Fixed bug #46994 (OCI8: CLOB size does not update when using CLOB IN OUT
+ param in stored procedure) (Chris Jones/Oracle Corp.)
+- Fixed bug #46897 (ob_flush() should fail to flush unerasable buffers).
+ (David C.)
+- Fixed bug #46623 (OCI8: phpinfo doesn't show compile time ORACLE_HOME with
+ phpize) (Chris Jones/Oracle Corp.)
+- Fixed bug #46542 (Extending PDO class with a __call() function doesn't work
+ as expected). (Johannes)
+- Fixed bug #46347 (parse_ini_file() doesn't support * in keys). (Nuno)
+- Fixed bug #46048 (SimpleXML top-level @attributes not part of iterator).
+ (David C.)
+- Fixed bug #45877 (Array key '2147483647' left as string). (Matt)
+- Fixed bug #45432 (PDO: persistent connection leak). (Felipe)
+- Fixed bug #43831 ($this gets mangled when extending PDO with persistent
+ connection). (Felipe)
+- 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.)
+
+29 Jan 2009, PHP 5.3.0 Beta 1
+- Upgraded bundled sqlite to version 3.6.10. (Scott, Ilia)
+
+- Deprecated session_register(), session_unregister() and
+ session_is_registered(). (Hannes)
+
+- 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)
+
- Changed __call() to be invoked on private/protected method access, similar to
properties and __get(). (Andrei)
-
-- Added optional sorting type flag parameter to array_unique(). Default is
- SORT_REGULAR. (Andrei)
-
-- Fixed a crash on extract in zip when files or directories entry names contain
- a relative path. (Pierre)
-- Fixed error conditions handling in stream_filter_append(). (Arnaud)
-- Fixed zip filename property read. (Pierre)
-- Fixed explode() behavior with empty string to respect negative limit. (Shire)
-- Fixed security issue in imagerotate(), background colour isn't validated
- correctly with a non truecolour image. Reported by Hamid Ebadi,
- APA Laboratory (Fixes CVE-2008-5498). (Scott)
-- Fixed a segfault when malformed string is passed to json_decode(). (Scott)
-- Fixed bug in xml_error_string() which resulted in messages being
- off by one. (Scott)
-
-- Fixed bug #47422 (modulus operator returns incorrect results on 64 bit
- linux). (Matt)
-- Fixed bug #47399 (mb_check_encoding() returns true for some illegal SJIS
- characters). (for-bugs at hnw dot jp, Moriyoshi)
-- Fixed bug #47353 (crash when creating a lot of objects in object
- destructor). (Tony)
-- Fixed bug #47322 (sscanf %d doesn't work). (Felipe)
-- Fixed bug #47282 (FILTER_VALIDATE_EMAIL is marking valid email addresses
- as invalid). (Ilia)
-- Fixed bug #47220 (segfault in dom_document_parser in recovery mode). (Rob)
-- Fixed bug #47217 (content-type is not set properly for file uploads). (Ilia)
-- Fixed bug #47174 (base64_decode() interprets pad char in mid string as
- terminator). (Ilia)
-- Fixed bug #47165 (Possible memory corruption when passing return value by
- reference). (Dmitry)
-- Fixed bug #47152 (gzseek/fseek using SEEK_END produces strange results).
- (Felipe)
-- Fixed bug #47131 (SOAP Extension ignores "user_agent" ini setting). (Ilia)
-- Fixed bug #47109 (Memory leak on $a->{"a"."b"} when $a is not an object).
- (Etienne, Dmitry)
-- Fixed bug #47104 (Linking shared extensions fails with icc). (Jani)
-- Fixed bug #47049 (SoapClient::__soapCall causes a segmentation fault).
+- Changed dl() to be disabled by default. Enabled only when explicitly
+ registered by the SAPI. Currently enabled with cli, cgi and embed SAPIs.
(Dmitry)
-- Fixed bug #47048 (Segfault with new pg_meta_data). (Felipe)
-- Fixed bug #47042 (PHP cgi sapi is removing SCRIPT_FILENAME for non
- apache). (Sriram Natarajan)
-- Fixed bug #47037 (No error when using fopen with empty string). (Cristian
- Rodriguez R., Felipe)
-- Fixed bug #47035 (dns_get_record returns a garbage byte at the end of a
- TXT record). (Felipe)
-- Fixed bug #47027 (var_export doesn't show numeric indices on ArrayObject).
- (Derick)
-- Fixed bug #46985 (OVERWRITE and binary mode does not work, regression
- introduced in 5.2.8). (Pierre)
-- Fixed bug #46973 (IPv6 address filter rejects valid address). (Felipe)
-- Fixed bug #46964 (Fixed pdo_mysql build with older version of MySQL). (Ilia)
-- Fixed bug #46959 (Unable to disable PCRE). (Scott)
-- Fixed bug #46918 (imap_rfc822_parse_adrlist host part not filled in
- correctly). (Felipe)
-- Fixed bug #46889 (Memory leak in strtotime()). (Derick)
-- Fixed bug #46887 (Invalid calls to php_error_docref()). (oeriksson at
- mandriva dot com, Ilia)
-- Fixed bug #46873 (extract($foo) crashes if $foo['foo'] exists). (Arnaud)
-- Fixed bug #46843 (CP936 euro symbol is not converted properly). (ty_c at
- cybozuy dot co dot jp, Moriyoshi)
-- Fixed bug #46798 (Crash in mssql extension when retrieving a NULL value
- inside a binary or image column type). (Ilia)
-- Fixed bug #46782 (fastcgi.c parse error). (Matt)
-- Fixed bug #46760 (SoapClient doRequest fails when proxy is used). (Felipe)
-- Fixed bug #46748 (Segfault when an SSL error has more than one error).
- (Scott)
-- Fixed bug #46739 (array returned by curl_getinfo should contain
- content_type key). (Mikko)
-- Fixed bug #46699 (xml_parse crash when parser is namespace aware). (Rob)
-- Fixed bug #46419 (Elements of associative arrays with NULL value are
- lost). (Dmitry)
-- Fixed bug #46282 (Corrupt DBF When Using DATE). (arne at bukkie dot nl)
-- Fixed bug #46026 (bz2.decompress/zlib.inflate filter tries to decompress
- after end of stream). (Greg)
-- Fixed bug #46005 (User not consistently logged under Apache2). (admorten
- at umich dot edu, Stas)
-- Fixed bug #45996 (libxml2 2.7 causes breakage with character data in
- xml_parse()). (Rob)
-- Fixed bug #45940 (MySQLI OO does not populate connect_error property on
- failed connect). (Johannes)
-- Fixed bug #45923 (mb_st[r]ripos() offset not handled correctly). (Moriyoshi)
-- Fixed bug #45327 (memory leak if offsetGet throws exception). (Greg)
-- Fixed bug #45239 (Encoding detector hangs with mbstring.strict_detection
- enabled). (Moriyoshi)
-- Fixed bug #45161 (Reusing a curl handle leaks memory). (Mark Karpeles, Jani)
-- Fixed bug #44336 (Improve pcre UTF-8 string matching performance). (frode
- at coretrek dot com, Nuno)
-- Fixed bug #43841 (mb_strrpos() offset is byte count for negative values).
- (Moriyoshi)
-- Fixed bug #37209 (mssql_execute with non fatal errors). (Kalle)
-- Fixed bug #35975 (Session cookie expires date format isn't the most
- compatible. Now matches that of setcookie()). (Scott)
+- 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)
+- Added new Enchant extension. (Pierre)
-08 Dec 2008, PHP 5.2.8
-- Reverted bug fix #42718 that broke magic_quotes_gpc (Scott)
+- Added support for IDN via ICU in intl, idn_to_ascii and idn_to_utf8. (Pierre)
+- Added support for SSH via libssh2 in cURL. (Pierre)
+- 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)
+- 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 ICU support to SQLite3 when using the bundled version. (Scott)
+- Added SQLite3::openBlob() to read a blob value as a stream. (Scott)
+- Added pixelation support in imagefilter(). (Takeshi Abe, Kalle)
+- Added SplObjectStorage::addAll/removeAll. (Etienne)
+- Added Windows support for stream_socket_pair(). (Kalle)
-04 Dec 2008, PHP 5.2.7
-- Upgraded PCRE to version 7.8 (Fixes CVE-2008-2371). (Ilia)
-- Updated timezone database to version 2008.9. (Derick)
-- Upgraded bundled libzip to 0.9.0. (Pierre)
+- Re-added socket_create_pair() for Windows in sockets extension. (Kalle)
-- Added logging option for error_log to send directly to SAPI. (Stas)
-- Added PHP_MAJOR_VERSION, PHP_MINOR_VERSION, PHP_RELEASE_VERSION,
- PHP_EXTRA_VERSION, PHP_VERSION_ID, PHP_ZTS and PHP_DEBUG constants. (Pierre)
-- Added "PHP_INI_SCAN_DIR" environment variable which can be used to
- either disable or change the compile time ini scan directory (FR #45114).
- (Jani)
+- Disabled Phar for big endian systems due to various crash bugs. (Scott)
-- Fixed missing initialization of BG(page_uid) and BG(page_gid),
- reported by Maksymilian Arciemowicz. (Stas)
-- Fixed memory leak inside sqlite_create_aggregate(). (Felipe)
-- Fixed memory leak inside PDO sqlite's sqliteCreateAggregate() method.
- (Felipe)
-- Fixed a crash inside gd with invalid fonts (Fixes CVE-2008-3658). (Pierre)
-- Fixed a possible overflow inside memnstr (Fixes CVE-2008-3659).
- (LaurentGaffie)
-- Fixed incorrect php_value order for Apache configuration, reported by
- Maksymilian Arciemowicz. (Stas)
-- Fixed memory leak inside readline_callback_handler_remove() function.
- (Felipe)
-- Fixed sybase_fetch_*() to continue reading after CS_ROW_FAIL status (Timm)
-- Fixed a bug inside dba_replace() that could cause file truncation
- withinvalid keys. (Ilia)
-- Fixed memory leak inside readline_callback_handler_install() function.(Ilia)
-- Fixed memory leak inside readline_completion_function() function. (Felipe)
-- Fixed stream_get_contents() when using $maxlength and socket is notclosed.
- indeyets [at] php [dot] net on #46049. (Arnaud)
-- Fixed stream_get_line() to behave as documented on non-blocking streams.
- (Arnaud)
-- Fixed endless loop in PDOStatement::debugDumpParams().
- (jonah.harris at gmail dot com)
-- Fixed ability to use "internal" heaps in extensions. (Arnaud, Dmitry)
-- Fixed weekdays adding/subtracting algorithm. (Derick)
-- Fixed some ambiguities in the date parser. (Derick)
-- Fixed a bug with the YYYY-MM format not resetting the day correctly.
- (Derick)
-- Fixed a bug in the DateTime->modify() methods, it would not use the advanced
- relative time strings. (Derick)
-- Fixed extraction of zip files or directories when the entry name is a
- relative path. (Pierre)
-- Fixed read or write errors for large zip archives. (Pierre)
-- Fixed security issues detailed in CVE-2008-2665 and CVE-2008-2666.
- (Christian Hoffmann)
-- Fixed simplexml asXML() not to lose encoding when dumping entire
- document to file. (Ilia)
-- Fixed a crash inside PDO when trying instantiate PDORow manually.
- (Felipe)
-- Fixed build failure of ext/mysqli with libmysql 6.0 - missing
- rplfunctions. (Andrey)
-- Fixed a regression when using strip_tags() and < is within an
- attribute.(Scott)
-- Fixed a crash on invalid method in ReflectionParameter constructor.
- (Christian Seiler)
-- Reverted fix for bug #44197 due to behaviour change in minor version.
- (Felipe)
+- Fixed building of pdo_sqlite without sqlite3. (Scott)
-- Fixed bug #46732 (mktime.year description is wrong). (Derick)
-- Fixed bug #46696 (cURL fails in upload files with specified content-type).
- (Ilia)
-- Fixed bug #46673 (stream_lock call with wrong parameter). (Arnaud)
-- Fixed bug #46649 (Setting array element with that same array produces
- inconsistent results). (Arnaud)
-- Fixed bug #46626 (mb_convert_case does not handle apostrophe correctly).
- (Ilia)
-- Fixed bug #46543 (ibase_trans() memory leaks when using wrong parameters).
+- Fixed bug #47165 (Possible memory corruption when passing return value by
+ reference). (Dmitry)
+- Fixed bug #47145 + #47159 (Always free failed SQLite3 statements). (Scott)
+- Fixed bug #47141 (Unable to fetch error messages from SQLite3
+ when the database can't be opened). (Scott)
+- Fixed bug #47087 (Second parameter of mssql_fetch_array()). (Felipe)
+- Fixed bug #47050 (mysqli_poll() modifies improper variables). (Johannes)
+- Fixed bug #47045 (SplObjectStorage instances compared with ==). (Etienne)
+- 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 #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 #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 #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 #46268 (DateTime::modify() does not reset relative time values).
+ (Derick)
+- Fixed bug #46044 (Mysqli - wrong error message). (Johannes)
+- 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 #45820 (Allow empty keys in ArrayObject). (Etienne)
+- Fixed bug #45791 (json_decode() doesn't convert 0e0 to a double). (Scott)
+
+04 Dec 2008, PHP 5.3.0 Alpha 3
+- Upgraded bundled PCRE to version 7.8. (Nuno)
+- Upgraded bundled sqlite to version 3.6.6.2. (Scott, Ilia)
+
+- Moved ext/msql to PECL. (Derick, Lukas)
+
+- Removed ext/mhash, the BC layer is now entirely within ext/hash. (Scott)
+
+- 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 fileinfo to no longer send errors to stderr. (Scott)
+
+- Added support for namespaces with brackets. (Greg)
+- 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)
+
+- Implemented FR #46595 (Use cc as the default compiler). (David Soria Parra)
+- Implemented FR #46513 (Missing compiler flags for suncc). (David Soria Parra)
+
+- Deprecated define_syslog_variables(). (Kalle)
+- Deprecated ereg extension. (Felipe)
+
+- 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)
+- Synced changes from libmagic 4.26 to bundled libmagic. (Scott)
+- Fixed check in recode extension to allow builing of recode and mysql
+ extensions when using a recent libmysql. (Johannes)
+
+- 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 #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 #46421 (SplFileInfo not correctly handling /). (Etienne)
+- Fixed bug #46409 (__invoke method called outside of object context when using
+ array_map). (Dmitry)
+- Fixed bug #46331 - (Segfault when using internal fileinfo magic file on big
+ endian systems). (Scott)
+- Fixed bug #46285 (lastInsertId() returns "0" when a deferenced PDOStatement is
+ executed). (Johannes)
+- 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 #46521 (Curl ZTS OpenSSL, error in config.m4 fragment).
- (jd at cpanel dot net)
-- Fixed bug #46496 (wddx_serialize treats input as ISO-8859-1). (Mark Karpeles)
-- Fixed bug #46427 (SoapClient() stumbles over its "stream_context" parameter).
- (Dmitry, Herman Radtke)
-- Fixed bug #46426 (offset parameter of stream_get_contents() does not
- workfor "0"). (Felipe)
-- Fixed bug #46406 (Unregistering nodeclass throws E_FATAL). (Rob)
-- Fixed bug #46389 (NetWare needs small patch for _timezone).
- (patch by guenter@php.net)
-- Fixed bug #46388 (stream_notification_callback inside of object destroys
- object variables). (Felipe)
-- Fixed bug #46381 (wrong $this passed to internal methods causes segfault).
- (Tony)
-- Fixed bug #46379 (Infinite loop when parsing '#' in one line file). (Arnaud)
-- Fixed bug #46366 (bad cwd with / as pathinfo). (Dmitry)
-- Fixed bug #46360 (TCP_NODELAY constant for socket_{get,set}_option).
- (bugs at trick dot vanstaveren dot us)
-- Fixed bug #46343 (IPv6 address filter accepts invalid address). (Ilia)
-- Fixed bug #46335 (DOMText::splitText doesn't handle multibyte characters).
- (Rob)
-- Fixed bug #46323 (compilation of simplexml for NetWare breaks).
- (Patch by guenter [at] php [dot] net)
-- Fixed bug #46319 (PHP sets default Content-Type header for HTTP 304
- response code, in cgi sapi). (Ilia)
-- Fixed bug #46313 (Magic quotes broke $_FILES). (Arnaud)
-- Fixed bug #46308 (Invalid write when changing property from inside getter).
+- Fixed bug #46205 (Closure - Memory leaks when ReflectionException is thrown).
(Dmitry)
-- Fixed bug #46292 (PDO::setFetchMode() shouldn't requires the 2nd arg when
- using FETCH_CLASSTYPE). (Felipe)
-- Fixed bug #46274, #46249 (pdo_pgsql always fill in NULL for empty BLOB and
- segfaults when returned by SELECT). (Felipe)
-- Fixed bug #46271 (local_cert option is not resolved to full path). (Ilia)
-- Fixed bug #46247 (ibase_set_event_handler() is allowing to pass callback
- without event). (Felipe)
-- Fixed bug #46246 (difference between call_user_func(array($this, $method))
- and $this->$method()). (Dmitry)
-- Fixed bug #46222 (ArrayObject EG(uninitialized_var_ptr) overwrite).
+- Fixed bug #46194 (SIGSEGV when requested file is not found). (Greg)
+- Fixed bug #46192 (ArrayObject with objects as storage serialization).
(Etienne)
-- Fixed bug #46215 (json_encode mutates its parameter and has some
- class-specific state). (Felipe)
-- Fixed bug #46206 (pg_query_params/pg_execute convert passed values to
- strings). (Ilia)
-- Fixed bug #46191 (BC break: DOMDocument saveXML() doesn't accept null).
- (Rob)
-- Fixed bug #46164 (stream_filter_remove() closes the stream). (Arnaud)
-- Fixed bug #46157 (PDOStatement::fetchObject prototype error). (Felipe)
-- Fixed bug #46147 (after stream seek, appending stream filter reads
- incorrect data). (Greg)
-- Fixed bug #46139 (PDOStatement->setFetchMode() forgets FETCH_PROPS_LATE).
- (chsc at peytz dot dk, Felipe)
+- 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 #46110 (XMLWriter - openmemory() and openuri() leak memory on
- multiple calls). (Ilia)
-- Fixed bug #46088 (RegexIterator::accept - segfault). (Felipe)
-- Fixed bug #46082 (stream_set_blocking() can cause a crash in some
- circumstances). (Felipe)
-- Fixed bug #46064 (Exception when creating ReflectionProperty object
- on dynamicly created property). (Felipe)
-- Fixed bug #46059 (Compile failure under IRIX 6.5.30 building posix.c).
- (Arnaud)
-- Fixed bug #46053 (SplFileObject::seek - Endless loop). (Arnaud)
-- Fixed bug #46051 (SplFileInfo::openFile - memory overlap). (Arnaud)
-- Fixed bug #46047 (SimpleXML converts empty nodes into object with
- nested array). (Rob)
-- Fixed bug #46031 (Segfault in AppendIterator::next). (Arnaud)
-- Fixed bug #46029 (Segfault in DOMText when using with Reflection). (Rob)
-- Fixed bug #46026 (bzip2.decompress/zlib.inflate filter tries to decompress
- after end of stream). (Keisial at gmail dot com, Greg)
-- Fixed bug #46024 (stream_select() doesn't return the correct number).
- (Arnaud)
-- Fixed bug #46010 (warnings incorrectly generated for iv in ecb mode).
- (Felipe)
-- Fixed bug #46003 (isset on nonexisting node return unexpected results). (Rob)
-- Fixed bug #45956 (parse_ini_file() does not return false with syntax errors
- in parsed file). (Jani)
-- Fixed bug #45901 (wddx_serialize_value crash with SimpleXMLElement object).
- (Rob)
-- Fixed bug #45862 (get_class_vars is inconsistent with 'protected' and
- 'private' variables). (ilewis at uk dot ibm dot com, Felipe)
-- Fixed bug #45860 (header() function fails to correctly replace all Status
- lines). (Dmitry)
-- Fixed bug #45805 (Crash on throwing exception from error handler). (Dmitry)
-- Fixed bug #45765 (ReflectionObject with default parameters of self::xxx cause
- an error). (Felipe)
-- Fixed bug #45751 (Using auto_prepend_file crashes (out of scope stack address
- use)). (basant dot kukreja at sun dot com)
-- Fixed bug #45722 (mb_check_encoding() crashes). (Moriyoshi)
-- Fixed bug #45705 (rfc822_parse_adrlist() modifies passed address parameter).
- (Jani)
-- Fixed bug #45691 (Some per-dir or runtime settings may leak into other
- requests). (Moriyoshi)
-- Fixed bug #45581 (htmlspecialchars() double encoding &#x hex items). (Arnaud)
-- Fixed bug #45580 (levenshtein() crashes with invalid argument). (Ilia)
-- Fixed bug #45575 (Segfault with invalid non-string as event handler callback).
- (Christian Seiler)
-- Fixed bug #45568 (ISAPI doesn't properly clear auth_digest in header).
- (Patch by: navara at emclient dot com)
-- Fixed bug #45556 (Return value from callback isn't freed). (Felipe)
-- Fixed bug #45555 (Segfault with invalid non-string as
- register_introspection_callback). (Christian Seiler)
-- Fixed bug #45553 (Using XPath to return values for attributes with a
- namespace does not work). (Rob)
-- Fixed bug #45529 (new DateTimeZone() and date_create()->getTimezone() behave
- different). (Derick)
-- Fixed bug #45522 (FCGI_GET_VALUES request does not return supplied values).
- (Arnaud)
-- Fixed bug #45486 (mb_send_mail(); header 'Content-Type: text/plain; charset='
- parsing incorrect). (Felipe)
-- Fixed bug #45485 (strip_tags and <?XML tag). (Felipe)
-- Fixed bug #45460 (imap patch for fromlength fix in imap_headerinfo doesn't
- accept lengths of 1024). (Felipe, andrew at lifescale dot com)
-- Fixed bug #45449 (filesize() regression using ftp wrapper).
- (crrodriguez at suse dot de)
-- Fixed bug #45423 (fastcgi parent process doesn't invoke php_module_shutdown
- before shutdown) (basant dot kukreja at sun dot com)
-- Fixed bug #45406 (session.serialize_handler declared by shared extension fails).
- (Kalle, oleg dot grenrus at dynamoid dot com)
-- Fixed bug #45405 (snmp extension memory leak).
- (Federico Cuello, Rodrigo Campos)
-- Fixed bug #45392 (ob_start()/ob_end_clean() and memory_limit). (Arnaud)
-- Fixed bug #45382 (timeout bug in stream_socket_enable_crypto). (Ilia)
-- Fixed bug #45373 (php crash on query with errors in params). (Felipe)
-- Fixed bug #45352 (Segmentation fault because of tick function on second
- request). (Dmitry)
-- Fixed bug #45312 (Segmentation fault on second request for array functions).
+- Fixed bug #46115 (Memory leak when calling a method using Reflection).
(Dmitry)
-- Fixed bug #45303 (Opening php:// wrapper in append mode results in a warning).
- (Arnaud)
-- Fixed bug #45251 (double free or corruption with setAttributeNode()). (Rob)
-- Fixed bug #45226 and #18916 (xmlrpc_set_type() segfaults and wrong behavior
- with valid ISO8601 date string). (Jeff Lawsons)
-- Fixed bug #45220 (curl_read callback returns -1 when needs to return
- size_t (unsigned)). (Felipe)
-- Fixed bug #45181 (chdir() should clear relative entries in stat cache).
- (Arnaud)
-- Fixed bug #45178 (memory corruption on assignment result of "new" by
- reference). (Dmitry)
-- Fixed bug #45166 (substr() overflow changes). (Felipe)
-- Fixed bug #45151 (Crash with URI/file..php (filename contains 2 dots)).
- (Fixes CVE-2008-3660) (Dmitry)
-- Fixed bug #45139 (ReflectionProperty returns incorrect declaring class).
- (Felipe)
-- Fixed bug #45124 ($_FILES['upload']['size'] sometimes return zero and some
- times the filesize). (Arnaud)
-- Fixed bug #45028 (CRC32 output endianness is different between crc32() and
- hash()). (Tony)
-- Fixed bug #45004 (pg_insert() does not accept 4 digit timezone format).
+- 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 #44991 (Compile Failure With freetds0.82).
- (jklowden at freetds dot org, matthias at dsx dot at)
-- Fixed bug #44938 (gettext functions crash with overly long domain).
- (Christian Schneider, Ilia)
-- Fixed bug #44925 (preg_grep() modifies input array). (Nuno)
-- Fixed bug #44900 (OpenSSL extension fails to link with OpenSSL 0.9.6).
- (jd at cpanel dot net, Pierre)
-- Fixed bug #44891 Memory leak using registerPHPFunctions and XSLT Variable
- as function parameter. (Rob)
-- Fixed bug #44882 (SOAP extension object decoding bug). (Dmitry)
-- Fixed bug #44830 (Very minor issue with backslash in heredoc). (Matt)
-- Fixed bug #44818 (php://memory writeable when opened read only). (Arnaud)
-- Fixed bug #44811 (Improve error message when creating a new SoapClient
- that contains invalid data). (Markus Fischer, David C)
-- Fixed bug #44798 (Memory leak assigning value to attribute). (Ilia)
-- Fixed bug #44716 (Progress notifications incorrect). (Hannes)
-- Fixed bug #44712 (stream_context_set_params segfaults on invalid arguments).
- (Hannes)
-- Fixed bug #44617 (wrong HTML entity output when substitute_character=entity).
- (Moriyoshi)
-- Fixed bug #44607 (stream_get_line unable to correctly identify the "ending"
- in the stream content). (Arnaud)
-- Fixed bug #44425 (Extending PDO/MySQL class with a __call() function doesn't
- work). (Johannes)
-- Fixed bug #44327 (PDORow::queryString property & numeric offsets / Crash).
+- Fixed bug #46086 (Segfault when accessing fileinfo class properties).
+ (Scott)
+- Fixed bug #46071 (finfo_open() segfaults when using wrong file name on BSD).
(Felipe)
-- Fixed bug #44251, #41125 (PDO + quote() + prepare() can result in segfault).
- (tsteiner at nerdclub dot net)
-- Fixed bug #44246 (closedir() accepts a file resource opened by fopen()).
- (Dmitry, Tony)
-- Fixed bug #44182 (extract($a, EXTR_REFS) can fail to split copy-on-write
- references). (robin_fernandes at uk dot ibm dot com)
-- Fixed bug #44181 (extract($a, EXTR_OVERWRITE|EXTR_REFS) can fail to create
- references to $a). (robin_fernandes at uk dot ibm dot com)
-- Fixed bug #44127 (UNIX abstract namespace socket connect does not work).
- (Jani)
-- Fixed bug #43993 (mb_substr_count() behaves differently to substr_count()
- with overlapping needles). (Moriyoshi)
-- Fixed Bug #43958 (class name added into the error message). (Dmitry)
-- Fixed bug #43941 (json_encode silently cuts non-UTF8 strings). (Stas)
-- Fixed bug #43925 (Incorrect argument counter in prepared statements with
- pgsql). (Felipe)
-- Fixed bug #43731 (socket_getpeername: cannot use on stdin with inetd).
- (Arnaud)
-- Fixed bug #43723 (SOAP not sent properly from client for <choice>). (Dmitry)
-- Fixed bug #43668 (Added odbc.default_cursortype to control the ODBCcursor
- model). (Patrick)
-- Fixed bug #43666 (Fixed code to use ODBC 3.52 datatypes for 64bit
- systems). (Patrick)
-- Fixed bug #43540 (rfc1867 handler newlength problem). (Arnaud)
-- Fixed bug #43452 (strings containing a weekday, or a number plus weekday
- behaved incorrect of the current day-of-week was the same as the one in the
- phrase). (Derick)
-- Fixed bug #43353 (wrong detection of 'data' wrapper causes notice).
- (gk at gknw dot de, Arnaud)
-- Fixed bug #43053 (Regression: some numbers shown in scientific notation).
- (int-e at gmx dot de)
-- Fixed bug #43045 (SOAP encoding violation on "INF" for type double/float).
- (Dmitry)
-- Fixed bug #42862 (IMAP toolkit crash: rfc822.c legacy routine buffer
- overflow). (Fixes CVE-2008-2829) (Dmitry)
-- Fixed bug #42855 (dns_get_record() doesn't return all text from TXT record).
- (a dot u dot savchuk at gmail dot com)
-- Fixed bug #42737 (preg_split('//u') triggers a E_NOTICE with newlines).
- (Nuno)
-- Fixed bug #42718 (FILTER_UNSAFE_RAW not applied when configured as default
- filter). (Arnaud)
-- Fixed bug #42604 ("make test" fails with --with-config-file-scan-dir=path).
- (Jani)
-- Fixed bug #42473 (ob_start php://output and headers). (Arnaud)
-- Fixed bug #42318 (problem with nm on AIX, not finding object files).
+- Fixed bug #46060 (Phar::addEmptyDir() breaks) (Greg)
+- 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 #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 #45392 (ob_start()/ob_end_clean() and memory_limit). (Ilia)
+- Fixed bug #45382 (timeout bug in stream_socket_enable_crypto).
+ (vnegrier at optilian dot com, Ilia)
+- Fixed bug #44575 (parse_ini_file comment # line problems). (Arnaud)
+- Fixed bug #44135 (PDO MySQL does not support CLIENT_FOUND_ROWS). (Johannes,
+ chx1975 at gmail dot com)
+- Fixed bug #44153 (pdo->errorCode() returns NULL when there are no errors).
+ (David C.)
+- Fixed bug #44154 (pdo->errorInfo() always have three elements in the
+ returned array). (David C.)
+- Fixed bug #43069 (SoapClient causes 505 HTTP Version not supported error
+ message). (Dmitry)
+- Fixed bug #41534 (SoapClient over HTTPS fails to reestablish connection).
(Dmitry)
-- Fixed bug #42294 (Unified solution for round() based on C99 round). (Ilia)
-- Fixed bug #42078 (pg_meta_data mix tables metadata from different schemas).
- (Felipe)
-- Fixed bug #41348 (OCI8: allow compilation with Oracle 8.1). (Chris Jones)
-- Fixed bug #41033 (enable signing with DSA keys.
- (gordyf at google dot com, Pierre)
-- Fixed bug #37100 (data is returned truncated with BINARY CURSOR). (Tony)
-- Fixed bug #30312 (crash in sybase_unbuffered_query() function). (Timm)
-- Fixed bug #24679 (pg_* functions doesn't work using schema). (Felipe)
-- Fixed bug #14962 (PECL) (::extractTo 2nd argument is not really optional)
- (Mark van Der Velden)
-- Fixed bug #14032 (Mail() always returns false but mail is sent). (Mikko)
-
-
-01 May 2008, PHP 5.2.6
-- Fixed two possible crashes inside posix extension (Tony)
-- Fixed incorrect heredoc handling when label is used within the block.
- (Matt)
-- Fixed possible stack buffer overflow in FastCGI SAPI. (Andrei Nigmatulin)
-- Fixed sending of uninitialized paddings which may contain some information. (Andrei Nigmatulin)
-- Fixed a bug in formatting timestamps when DST is active in the default timezone (Derick)
-- Properly address incomplete multibyte chars inside escapeshellcmd() (Ilia, Stefan Esser)
-- Fix integer overflow in printf(). (Stas, Maksymilian Aciemowicz)
-- Fixed security issue detailed in CVE-2008-0599. (Rasmus)
-- Fixed potential memleak in stream filter parameter for zlib filter. (Greg)
-- Added Reflection API metadata for the methods of the DOM classes. (Sebastian)
-- Fixed weird behavior in CGI parameter parsing. (Dmitry, Hannes Magnusson)
-- Fixed a safe_mode bypass in cURL identified by Maksymilian Arciemowicz.
- (Ilia)
-- Fixed a bug with PDO::FETCH_COLUMN|PDO::FETCH_GROUP mode when a column # by
- which to group by data is specified. (Ilia)
-- Fixed segfault in filter extension when using callbacks. (Arnar Mar Sig,
- Felipe)
-- Fixed faulty fix for bug #40189 (endless loop in zlib.inflate stream filter). (Greg)
-- Upgraded PCRE to version 7.6 (Nuno)
+
+02 Sep 2008, PHP 5.3.0 Alpha 2
+- 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 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)
+
+- 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)
+
+- Improved Windows support and portability for stat(), touch(), filemtime(),
+ filesize() and related functions. (Pierre)
+
+- Fixed a bug causing miscalculations with the "last <weekday> of <n> month"
+ relative time string. (Derick)
+
+- Fixed bug #46110 (XMLWriter - openmemory() and openuri() leak memory on
+ multiple calls). (Ilia)
+- Fixed bug #46032 (PharData::__construct() wrong memory read). (Greg)
+- Fixed bug #45826 (custom ArrayObject serialization). (Etienne)
+- Fixed bug #45798 (sqlite3 doesn't notice if variable was bound). (Felipe)
+- Fixed bug #45786 (FastCGI process exited unexpectedly). (Dmitry)
+- Fixed bug #45763 (mysqli::multi_query does not work with mysqlnd). (Johannes)
+- 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 #45636 (fileinfo ext duplicate strndup). (Derick)
+- Fixed bug #45545 (DateInterval has 4 char limitation for ISO durations).
+ (Derick)
+- Fixed bug #45447 (Filesystem time functions on Vista and server 2008).
+ (Pierre)
+- Fixed bug #45384 (parse_ini_file will result in parse error with no trailing
+ newline). (Arnaud)
+- Fixed bug #45044 (relative paths not resolved correctly). (Dmitry)
+- Fixed bug #44842 (parse_ini_file keys that start/end with underscore).
+ (Arnaud)
+- Fixed bug #44100 (Inconsistent handling of static array declarations with
+ duplicate keys). (Dmitry)
+- Fixed bug #43817 (opendir() fails on Windows directories with parent
+ directory unaccessible). (Dmitry)
+- Fixed bug #43008 (php://filter uris ignore url encoded filternames and can't
+ handle slashes). (Arnaud)
+- Fixed bug #35980 (touch() works on files but not on directories). (Pierre)
+
+
+01 Aug 2008, PHP 5.3.0 Alpha 1
+- Upgraded bundled PCRE to version 7.7. (Nuno)
+- Upgraded bundled PDO sqlite to version 3.5.9. (Scott)
+
+- Moved extensions to PECL (Pierre):
+ . ext/dbase
+ . ext/fbsql
+ . ext/fdf
+ . ext/ncurses
+ . ext/ming
+ . 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)
+- Deprecated ticks support. (Felipe)
+
+- 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)
+
+- 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 and cleaned CGI code:
+ . FastCGI is now always enabled and can not 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 "ignore_errors" option to http fopen wrapper. (David Zulke, Sara)
+ . 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 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 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 #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.
+
+- 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 XMLShema'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.
+
+- Added new extensions:
+ . 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 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 inet_pton() and inet_ntop() also for Windows platforms. (Kalle)
+- Added mcrypt_create_iv() also for Windows platforms. (Pierre)
+
+- 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 PECL bug #12794 (PDOStatement->nextRowset() doesn't work). (Johannes)
+- Fixed PECL bug #12401 (Add support for ATTR_FETCH_TABLE_NAMES). (Johannes)
+
+- Fixed bug #45622 (isset($arrayObject->p) misbehaves with ArrayObject::
+ ARRAY_AS_PROPS set). (robin_fernandes at uk dot ibm dot com, Arnaud)
+- Fixed bug #45614 (ArrayIterator::current(), ::key() can show 1st private
+ prop of wrapped object). (robin_fernandes at uk dot ibm dot com, Arnaud)
+- Fixed bug #45571 (ReflectionClass::export() shows superclasses' private
+ static methods). (robin_fernandes at uk dot ibm dot com)
+- Fixed bug #45540 (stream_context_create creates bad http request). (Arnaud)
+- Fixed bug #45430 (windows implementation of crypt is not thread safe).
+ (Pierre)
+- Fixed bug #45345 (SPLFileInfo::getPathInfo() returning dir info instead of
+ file info). (Etienne)
+- Fixed bug #45179 (--with-mysql-sock fails to compile & work). (Andrey)
+- Fixed bug #45038 (Crash when using DateTimeZone object returned by
+ Date::getTimezone). (Joe Orton, Derick)
+- Fixed bug #45030 (Destination image alpha channel noise when using
+ imagecopyresampled). (Pierre)
+- Fixed bug #44769 (declaring private magic methods should throw error).
+ (Felipe)
+- Fixed bug #44913 (Segfault when using return in combination with nested loops
+ and continue 2). (Dmitry)
+- Fixed bug #44899 (__isset usage changes behavior of empty()). (Etienne)
+- Fixed bug #44897 (failed to prepare statement). (Andrey)
+- Fixed bug #44849 (imagecolorclosesthwb() is not available on Windows).
+ (Kalle)
+- Fixed bug #44805 (rename() function is not portable to Windows). (Pierre)
+- Fixed bug #44779 (filter returns NULL in CLI when it shouldn't). (Arnaud)
- Fixed bug #44742 (timezone_offset_get() causes segmentation faults). (Derick)
-- Fixed bug #44720 (Prevent crash within session_register()). (Scott)
-- Fixed bug #44703 (htmlspecialchars() does not detect bad character set argument). (Andy Wharmby)
-- Fixed bug #44673 (With CGI argv/argc starts from arguments, not from script) (Dmitry)
-- Fixed bug #44667 (proc_open() does not handle pipes with the mode 'wb' correctly). (Jani)
-- Fixed bug #44663 (Crash in imap_mail_compose if "body" parameter invalid). (Ilia)
-- Fixed bug #44650 (escaepshellscmd() does not check arg count). (Ilia)
-- Fixed bug #44613 (Crash inside imap_headerinfo()). (Ilia, jmessa)
-- Fixed bug #44603 (Order issues with Content-Type/Length headers on POST). (Ilia)
-- Fixed bug #44594 (imap_open() does not validate # of retries parameter). (Ilia)
-- Fixed bug #44591 (imagegif's filename parameter). (Felipe)
-- Fixed bug #44557 (Crash in imap_setacl when supplied integer as username) (Thomas Jarosch)
-- Fixed bug #44487 (call_user_method_array issues a warning when throwing an exception). (David Soria Parra)
-- Fixed bug #44478 (Inconsistent behaviour when assigning new nodes). (Rob, Felipe)
-- Fixed bug #44445 (email validator does not handle domains starting/ending with a -). (Ilia)
-- Fixed bug #44440 (st_blocks undefined under BeOS). (Felipe)
-- Fixed bug #44394 (Last two bytes missing from output). (Felipe)
-- Fixed bug #44388 (Crash inside exif_read_data() on invalid images) (Ilia)
-- Fixed bug #44373 (PDO_OCI extension compile failed). (Felipe)
-- Fixed bug #44333 (SEGFAULT when using mysql_pconnect() with client_flags). (Felipe)
-- Fixed bug #44306 (Better detection of MIPS processors on Windows). (Ilia)
-- Fixed bug #44242 (metaphone('CMXFXM') crashes PHP). (Felipe)
-- Fixed bug #44233 (MSG_PEEK undefined under BeOS R5). (jonathonfreeman at gmail dot com, Ilia)
-- Fixed bug #44216 (strftime segfaults on large negative value). (Derick)
-- Fixed bug #44209 (strtotime() doesn't support 64 bit timestamps on 64 bit platforms). (Derick)
-- Fixed bug #44206 (OCI8 selecting ref cursors leads to ORA-1000 maximum open cursors reached). (Oracle Corp.)
-- Fixed bug #44200 (A crash in PDO when no bound targets exists and yet bound parameters are present). (Ilia)
-- Fixed bug #44197 (socket array keys lost on socket_select). (Felipe)
-- Fixed bug #44191 (preg_grep messes up array index). (Felipe)
-- Fixed bug #44189 (PDO setAttribute() does not properly validate values for native numeric options). (Ilia)
-- Fixed bug #44184 (Double free of loop-variable on exception). (Dmitry)
-- Fixed bug #44171 (Invalid FETCH_COLUMN index does not raise an error). (Ilia)
-- Fixed bug #44166 (Parameter handling flaw in PDO::getAvailableDrivers()). (Ilia)
-- Fixed bug #44159 (Crash: $pdo->setAttribute(PDO::STATEMENT_ATTR_CLASS, NULL)). (Felipe)
-- Fixed bug #44152 (Possible crash with syslog logging on ZTS builds). (Ilia)
-- Fixed bug #44141 (private parent constructor callable through static function). (Dmitry)
-- Fixed bug #44113 (OCI8 new collection creation can fail with OCI-22303). (Oracle Corp.)
-- Fixed bug #44069 (Huge memory usage with concatenation using . instead of .=). (Dmitry)
-- Fixed bug #44046 (crash inside array_slice() function with an invalid by-ref offset). (Ilia)
-- Fixed bug #44028 (crash inside stream_socket_enable_crypto() when enabling encryption without crypto type). (Ilia)
-- Fixed bug #44018 (RecursiveDirectoryIterator options inconsistancy). (Marcus)
-- Fixed bug #44008 (OCI8 incorrect usage of OCI-Lob->close crashes PHP). (Oracle Corp.)
-- Fixed bug #43998 (Two error messages returned for incorrect encoding for mb_strto[upper|lower]). (Rui)
-- Fixed bug #43994 (mb_ereg 'successfully' matching incorrect). (Rui)
-- Fixed bug #43954 (Memory leak when sending the same HTTP status code multiple times). (Scott)
-- Fixed bug #43927 (koi8r is missing from html_entity_decode()). (andy at demos dot su, Tony)
-- Fixed bug #43912 (Interbase column names are truncated to 31 characters). (Ilia)
-- Fixed bug #43875 (Two error messages returned for $new and $flag argument in mysql_connect()). (Hannes)
-- Fixed bug #43863 (str_word_count() breaks on cyrillic "ya" in locale cp1251). (phprus at gmail dot com, Tony)
-- Fixed bug #43841 (mb_strrpos offset is byte count for negative values). (Rui)
-- Fixed bug #43840 (mb_strpos bounds check is byte count rather than a character count). (Rui)
+- Fixed bug #44660 (Indexed and reference assignment to propery of non-object
+ don't trigger warning). (Dmitry)
+- Fixed bug #44648 (Attribute names not checked for wellformedness). (Rob)
+- Fixed bug #44414 (Incomplete reporting about abstract methods). (Dmitry)
+- Fixed bug #44390 (mysqli_bind_param/bind_result and Object member variables).
+ (Andrey)
+- Fixed bug #44352 (mysqli_connect_error() false negative for host errors).
+ (Andrey)
+- Fixed bug #44336 (Improve pcre UTF-8 string matching performance).
+ (frode at coretrek dot com, Nuno)
+- Fixed bug #44301 (Segfault when an exception is thrown on persistent
+ connections). (Martin Jansen)
+- Fixed bug #44257 (timelib_tz_lookup_table must use float for gmtoffset).
+ (Derick, iuri dot fiedoruk at hp dot com).
+- Fixed bug #44214 (Crash using preg_replace_callback() and global variable).
+ (Nuno, Scott)
+- Fixed bug #44034 (FILE_IGNORE_NEW_LINES in file() does not work as expected
+ when lines end in \r\n). (Ilia)
+- Fixed bug #43960 (strtotime() returns timestamp in the future when given a
+ bogus string). (Derick)
+- Fixed bug #43832 (mysqli_get_charset() doesn't expose charset comment).
+ (Andrey)
- Fixed bug #43808 (date_create never fails (even when it should)). (Derick)
-- Fixed bug #43793 (zlib filter is unable to auto-detect gzip/zlib file headers). (Greg)
-- Fixed bug #43703 (Signature compatibility check broken). (Dmitry)
-- Fixed bug #43677 (Inconsistent behaviour of include_path set with php_value). (manuel at mausz dot at)
-- Fixed bug #43663 (Extending PDO class with a __call() function doesn't work). (David Soria Parra)
-- Fixed bug #43647 (Make FindFile use PATH_SEPARATOR instead of ";"). (Ilia)
-- Fixed bug #43635 (mysql extension ingores INI settings on NULL values passed to mysql_connect()). (Ilia)
-- Fixed bug #43620 (Workaround for a bug inside libcurl 7.16.2 that can result in a crash). (Ilia)
-- Fixed bug #43614 (incorrect processing of numerical string keys of array in arbitrary serialized data). (Dmitriy Buldakov, Felipe)
-- Fixed bug #43606 (define missing depencies of the exif extension). (crrodriguez at suse dot de)
-- Fixed bug #43589 (a possible infinite loop in bz2_filter.c). (Greg)
-- Fixed bug #43580 (removed bogus declaration of a non-existent php_is_url() function). (Ilia)
-- Fixed bug #43559 (array_merge_recursive() doesn't behave as expected with duplicate NULL values). (Felipe, Tony)
-- Fixed bug #43533 (escapeshellarg('') returns null). (Ilia)
-- Fixed bug #43527 (DateTime created from a timestamp reports environment timezone). (Derick)
-- Fixed bug #43522 (stream_get_line() eats additional characters). (Felipe, Ilia, Tony)
-- Fixed bug #43507 (SOAPFault HTTP Status 500 - would like to be able to set the HTTP Status). (Dmitry)
-- Fixed bug #43505 (Assign by reference bug). (Dmitry)
-- Fixed bug #43498 (file_exists() on a proftpd server got SIZE not allowed in ASCII mode). (Ilia, crrodriguez at suse dot de)
-- Fixed bug #43497 (OCI8 XML/getClobVal aka temporary LOBs leak UGA memory). (Chris)
-- Fixed bug #43495 (array_merge_recursive() crashes with recursive arrays). (Ilia)
-- Fixed bug #43493 (pdo_pgsql does not send username on connect when password is not available). (Ilia)
-- Fixed bug #43491 (Under certain conditions, file_exists() never returns). (Dmitry)
-- Fixed bug #43483 (get_class_methods() does not list all visible methods). (Dmitry)
-- Fixed bug #43482 (array_pad() does not warn on very small pad numbers). (Ilia)
-- Fixed bug #43457 (Prepared statement with incorrect parms doesn't throw exception with pdo_pgsql driver). (Ilia)
-- Fixed bug #43450 (Memory leak on some functions with implicit object __toString() call). (David C.)
-- Fixed bug #43386 (array_globals not reset to 0 properly on init). (Ilia)
-- Fixed bug #43377 (PHP crashes with invalid argument for DateTimeZone). (Ilia)
-- Fixed bug #43373 (pcntl_fork() should not raise E_ERROR on error). (Ilia)
-- Fixed bug #43364 (recursive xincludes don't remove internal xml nodes properly). (Rob, patch from ddb@bitxtender.de)
-- Fixed bug #43301 (mb_ereg*_replace() crashes when replacement string is invalid PHP expression and 'e' option is used). (Jani)
-- Fixed bug #43295 (crash because of uninitialized SG(sapi_headers).mimetype). (Dmitry)
-- Fixed bug #43293 (Multiple segfaults in getopt()). (Hannes)
-- Fixed bug #43279 (pg_send_query_params() converts all elements in 'params' to strings). (Ilia)
-- Fixed bug #43276 (Incomplete fix for bug #42739, mkdir() under safe_mode). (Ilia)
-- Fixed bug #43248 (backward compatibility break in realpath()). (Dmitry)
-- Fixed bug #43221 (SimpleXML adding default namespace in addAttribute). (Rob)
-- Fixed bug #43216 (stream_is_local() returns false on "file://"). (Dmitry)
-- Fixed bug #43201 (Crash on using uninitialized vals and __get/__set). (Dmitry)
-- Fixed bug #43182 (file_put_contents() LOCK_EX does not work properly on file truncation). (Ilia)
-- Fixed bug #43175 (__destruct() throwing an exception with __call() causes segfault). (Dmitry)
-- Fixed bug #43128 (Very long class name causes segfault). (Dmitry)
-- Fixed bug #43105 (PHP seems to fail to close open files). (Hannes)
-- Fixed bug #43092 (curl_copy_handle() crashes with > 32 chars long URL). (Jani)
-- Fixed bug #43003 (Invalid timezone reported for DateTime objects constructed using a timestamp). (Derick)
-- Fixed bug #42978 (mismatch between number of bound params and values causes a crash in pdo_pgsql). (Ilia)
-- Fixed bug #42945 (preg_split() swallows part of the string). (Nuno)
-- Fixed bug #42937 (__call() method not invoked when methods are called on parent from child class). (Dmitry)
-- Fixed bug #42841 (REF CURSOR and oci_new_cursor() crash PHP). (Chris)
-- Fixed bug #42838 (Wrong results in array_diff_uassoc) (Felipe)
-- Fixed bug #42779 (Incorrect forcing from HTTP/1.0 request to HTTP/1.1 response). (Ilia)
+- Fixed bug #43527 (DateTime created from a timestamp reports environment
+ timezone). (Derick)
+- Fixed bug #43452 (strings containing a weekday, or a number plus weekday
+ misbehaved if the current day-of-week was same as the one in the phrase).
+ (Derick)
+- Fixed bug #43426 (crash on nested call_user_func() calls). (Dmitry)
+- Fixed bug #43323 (Wrong count abstract methods). (Felipe, Dmitry)
+- Fixed bug #43261 (Use ^ as the escape with escapeshellcmd() on Windows).
+ (Scott)
+- Fixed bug #43075 (Support 2007-11-01T24:00:00+00:00). (Derick)
+- Fixed bug #43003 (Invalid timezone reported for DateTime objects constructed
+ using a timestamp). (Derick)
+- Fixed bug #43143 (Warning about empty IV with MCRYPT_MODE_ECB). (Derick)
+- Fixed bug #43136 (possible crash on script execution timeout.
+ The EG(function_state_ptr) is completely removed,
+ EG(current_execute_data)->function_state must be used instead). (Dmitry)
+- Fixed bug #42952 (soap cache file is created with insecure permissions).
+ (Dmitry)
+- Fixed bug #42868 (Floats cast to integer produce unpredictable results).
+ (Zoe Slattery)
+- Fixed bug #42848 (Status: header incorrect under FastCGI). (Dmitry)
+- Fixed bug #42773 (WSDL error causes HTTP 500 Response). (Dmitry)
- Fixed bug #42736 (xmlrpc_server_call_method() crashes). (Tony)
-- Fixed bug #42692 (Procedure 'int1' not present with doc/lit SoapServer). (Dmitry)
+- Fixed bug #42663 (gzinflate() try to allocate all memory with truncated
+ data). (Arnaud)
+- Fixed bug #42657 (ini_get() returns incorrect value when default is NULL).
+ (Jani, Scott)
+- Fixed bug #42637 (SoapFault : Only http and https are allowed). (Bill Moran)
- Fixed bug #42548 (mysqli PROCEDURE calls can't return result sets). (Hartmut)
-- Fixed bug #42505 (new sendmail default breaks on Netware platform) (Guenter Knauf)
-- Fixed bug #42369 (Implicit conversion to string leaks memory). (David C., Rob).
-- Fixed bug #42272 (var_export() incorrectly escapes char(0)). (Derick)
-- Fixed bug #42261 (Incorrect lengths for date and boolean data types). (Ilia)
-- Fixed bug #42190 (Constructing DateTime with TimeZone Indicator invalidates DateTimeZone). (Derick)
-- Fixed bug #42177 (Warning "array_merge_recursive(): recursion detected" comes again...). (Felipe)
-- Fixed bug #41941 (oci8 extension not lib64 savvy). (Chris)
-- Fixed bug #41828 (Failing to call RecursiveIteratorIterator::__construct() causes a sefault). (Etienne)
+- Fixed bug #42509 (gmp leaks memory when gmp_init() not used). (Stas)
+- Fixed bug #42499 (PDO_MYSQL: multi-statement execution via PDO::exec() makes
+ connection unusable). (Johannes)
+- Fixed bug #42443 (PDO SQLite driver binds integers and booleans as strings).
+ (Scott)
+- Fixed bug #42284 (duplicate of #39700). (Lars W)
+- Fixed bug #42203 (Clear SQLite result sets before closing database). (Scott)
+- Fixed bug #42190 (Constructing DateTime with TimeZone Indicator invalidates
+ DateTimeZone). (Derick)
+- Fixed bug #42069 (parse_ini_file() allows using some non-alpha numeric
+ characters). (Jani)
+- Fixed bug #41997 (pdo_mysql: stored procedure call returning single rowset
+ blocks future queries). (Johannes)
+- Fixed bug #41996 (Problem accessing Oracle ROWID). (Martin Jansen)
- Fixed bug #41599 (setTime() fails after modify() is used). (Derick)
-- Fixed bug #41562 (SimpleXML memory issue). (Rob)
-- Fixed bug #40013 (php_uname() does not return nodename on Netware (Guenter Knauf)
+- Fixed bug #41522 (PDO firebird driver returns null if it fails to connect).
+ (Lars W)
+- Fixed bug #41135 (PDO SQLite driver binds blobs as strings,
+ use sqlite3_bind_blob() to stop errors with null bytes). (Scott)
+- Fixed bug #39822 (new PDO() doesn't work with firebird). (Lars W)
+- Fixed bug #39700 (NUMERIC error when result precision are 7,8 or 12-14 ).
+ (Lars W)
+- Fixed bug #39457 (Multiple invoked OO connections never close). (Andrey)
+- Fixed bug #39397 (invalid statement handle in Unknown on line 0). (Lars W)
+- Fixed bug #39346 (Unsetting a static variable inside a destructor causes
+ segfault later on). (Dmitry)
+- Fixed bug #39127 (Old-style constructor fallbacks produce strange results).
+ (Tony)
+- Fixed bug #39056 (Interbase NUMERIC data type error). (Lars W)
+- Fixed bug #39018 (Error control operator '@' fails to suppress "Uninitialized
+ string offset"). (Felipe)
- Fixed bug #38468 (Unexpected creation of cycle). (Dmitry)
-- Fixed bug #32979 (OpenSSL stream->fd casts broken in 64-bit build) (stotty at tvnet dot hu)
-
-08 Nov 2007, PHP 5.2.5
-- Upgraded PCRE to version 7.3 (Nuno)
-- Added optional parameter $provide_object to debug_backtrace(). (Sebastian)
-- Added alpha support for imagefilter() IMG_FILTER_COLORIZE. (Pierre)
-- Added ability to control memory consumption between request using
- ZEND_MM_COMPACT environment variable. (Dmitry)
-
-- Improved speed of array_intersect_key(), array_intersect_assoc(),
- array_uintersect_assoc(), array_diff_key(), array_diff_assoc() and
- array_udiff_assoc(). (Dmitry)
-
-- Fixed move_uploaded_file() to always set file permissions of resulting file
- according to UMASK. (Andrew Sitnikov)
-- Fixed possible crash in ext/soap because of uninitialized value. (Zdash Urf)
-- Fixed regression in glob() when enforcing safe_mode/open_basedir checks on
- paths containing '*'. (Ilia)
-- Fixed "mail.force_extra_parameters" php.ini directive not to be modifiable
- in .htaccess due to the security implications - reported by SecurityReason.
- (Stas)
-- Fixed PDO crash when driver returns empty LOB stream. (Stas)
-- Fixed dl() to only accept filenames - reported by Laurent Gaffie. (Stas)
-- Fixed dl() to limit argument size to MAXPATHLEN (CVE-2007-4887).
- (Christian Hoffmann)
-- Fixed iconv_*() functions to limit argument sizes as workaround to libc
- bug (CVE-2007-4783, CVE-2007-4840 by Laurent Gaffie).
- (Christian Hoffmann, Stas)
-- Fixed missing brackets leading to build warning and error in the log.
- Win32 code. (Andrey)
-- Fixed leaks with multiple connects on one mysqli object. (Andrey)
-- Fixed endianness detection on MacOS when building universal binary.
- (Uwe Schindler, Christian Speich, Tony)
-- Fixed possible triggering of buffer overflows inside glibc
- implementations of the fnmatch(), setlocale() and glob() functions.
- Reported by Laurent Gaffie. (Ilia)
-- Fixed imagerectangle regression with 1x1 rectangle (libgd #106). (Pierre)
-- Fixed htmlentities/htmlspecialchars not to accept partial multibyte
- sequences. (Stas)
-
-- Fixed bug #43196 (array_intersect_assoc() crashes with non-array input).
+- Fixed bug #37964 (Reflection shows private methods of parent class).
+ (Felipe, Marcus)
+- Fixed bug #37911 (preg_replace_callback() ignores named groups). (Nuno)
+- Fixed bug #37076 (SimpleXML ignores .=). (Felipe, Marcus)
+- Fixed bug #36128 (Interbase PDO - timestamp columns return NULL). (Lars W)
+- Fixed bug #35386 (firebird: first row is null). (Lars W)
+- Fixed bug #35163 (Array elements can lose references). (Dmitry)
+- Fixed bug #32330 (session_destroy, "Failed to initialize storage module",
+ custom session handler). (Gwynne)
+- Fixed bug #32143 (ibase_query() causing IBserver 7 crash with NULL param as
+ link-id). (Lars W)
+- Fixed bug #30907 (ibase_query() crashes (same bug as #32143). (Lars W)
+- Fixed bug #30690 (Resource handle from ibase_execute becomes invalid after
+ return). (Lars W)
+- Fixed bug #29044 (compact() does not have infinite recursion protection).
+ (Tony)
+- Fixed bug #27372 (parse error loading browscap.ini at apache startup).
(Jani)
-- Fixed bug #43139 (PDO ignores ATTR_DEFAULT_FETCH_MODE in some cases with
- fetchAll()). (Ilia)
-- Fixed bug #43137 (rmdir() and rename() do not clear statcache). (Jani)
-- Fixed bug #43130 (Bound parameters cannot have - in their name). (Ilia)
-- Fixed bug #43099 (XMLWriter::endElement() does not check # of params).
- (Ilia)
-- Fixed bug #43020 (Warning message is missing with shuffle() and more
- than one argument). (Scott)
-- Fixed bug #42976 (Crash when constructor for newInstance() or
- newInstanceArgs() fails) (Ilia)
-- Fixed bug #42943 (ext/mssql: Move *timeout initialization from RINIT
- to connect time). (Ilia)
-- Fixed bug #42917 (PDO::FETCH_KEY_PAIR doesn't work with setFetchMode).
- (Ilia)
-- Fixed bug #42890 (Constant "LIST" defined by mysqlclient and c-client).
- (Andrey)
-- Fixed bug #42869 (automatic session id insertion adds sessions id to
- non-local forms). (Ilia)
-- Fixed bug #42818 ($foo = clone(array()); leaks memory). (Dmitry)
-- Fixed bug #42817 (clone() on a non-object does not result in a fatal
- error). (Ilia)
-- Fixed bug #42785 (json_encode() formats doubles according to locale rather
- then following standard syntax). (Ilia)
-- Fixed bug #42783 (pg_insert() does not accept an empty list for
- insertion). (Ilia)
-- Fixed bug #42773 (WSDL error causes HTTP 500 Response). (Dmitry)
-- Fixed bug #42772 (Storing $this in a static var fails while handling a cast
- to string). (Dmitry)
-- Fixed bug #42767 (highlight_string() truncates trailing comment). (Ilia)
-- Fixed bug #42739 (mkdir() doesn't like a trailing slash when safe_mode is
- enabled). (Ilia)
-- Fixed bug #42703 (Exception raised in an iterator::current() causes segfault
- in FilterIterator) (Marcus)
-- Fixed bug #42699 (PHP_SELF duplicates path). (Dmitry)
-- Fixed bug #42654 (RecursiveIteratorIterator modifies only part of leaves)
- (Marcus)
-- Fixed bug #42643 (CLI segfaults if using ATTR_PERSISTENT). (Ilia)
-- Fixed bug #42637 (SoapFault : Only http and https are allowed). (Bill Moran)
-- Fixed bug #42629 (Dynamically loaded PHP extensions need symbols exported
- on MacOSX). (jdolecek at NetBSD dot org)
-- Fixed bug #42627 (bz2 extension fails to build with -fno-common).
- (dolecek at netbsd dot org)
-- Fixed Bug #42596 (session.save_path MODE option does not work). (Ilia)
-- Fixed bug #42590 (Make the engine recognize \v and \f escape sequences).
- (Ilia)
-- Fixed bug #42587 (behavior change regarding symlinked .php files). (Dmitry)
-- Fixed bug #42579 (apache_reset_timeout() does not exist). (Jani)
-- Fixed bug #42549 (ext/mysql failed to compile with libmysql 3.23). (Scott)
-- Fixed bug #42523 (PHP_SELF duplicates path). (Dmitry)
-- Fixed bug #42512 (ip2long('255.255.255.255') should return 4294967295 on
- 64-bit PHP). (Derick)
-- Fixed bug #42506 (php_pgsql_convert() timezone parse bug) (nonunnet at
- gmail dot com, Ilia)
-- Fixed bug #42496 (OCI8 cursor is not closed when using 2 clobs in a select
- query). (Oracle Corp.)
-- Fixed bug #42462 (Segmentation when trying to set an attribute in a
- DOMElement). (Rob)
-- Fixed bug #42453 (CGI SAPI does not shut down cleanly with -i/-m/-v cmdline
- options). (Dmitry)
-- Fixed bug #42452 (PDO classes do not expose Reflection API information).
- (Hannes)
-- Fixed bug #42468 (Write lock on file_get_contents fails when using a
- compression stream). (Ilia)
-- Fixed bug #42488 (SoapServer reports an encoding error and the error itself
- breaks). (Dmitry)
-- Fixed bug #42378 (mysqli_stmt_bind_result memory exhaustion). (Andrey)
-- Fixed bug #42359 (xsd:list type not parsed). (Dmitry)
-- Fixed bug #42326 (SoapServer crash). (Dmitry)
-- Fixed bug #42214 (SoapServer sends clients internal PHP errors). (Dmitry)
-- Fixed bug #42189 (xmlrpc_set_type() crashes php on invalid datetime
- values). (Ilia)
-- Fixed bug #42139 (XMLReader option constants are broken using XML()). (Rob)
-- Fixed bug #42086 (SoapServer return Procedure '' not present for WSIBasic
- compliant wsdl). (Dmitry)
-- Fixed bug #41822 (Relative includes broken when getcwd() fails). (Ab5602,
- Jani)
-- Fixed bug #41561 (Values set with php_admin_* in httpd.conf can be overwritten
- with ini_set()). (Stas, Jani)
-- Fixed bug #39651 (proc_open() append mode doesn't work on windows). (Nuno)
30 Aug 2007, PHP 5.2.4
- Removed --enable-versioning configure option. (Jani)
@@ -746,7 +817,7 @@ PHP NEWS
- Fixed PECL bug #11216 (crash in ZipArchive::addEmptyDir when a directory
already exists). (Pierre)
-- Fixed bug #42848 (Status: header incorrect under FastCGI). (Dmitry)
+- Fixed bug #43926 (isInstance() isn't equivalent to instanceof operator). (Marcus)
- Fixed bug #42368 (Incorrect error message displayed by pg_escape_string).
(Ilia)
- Fixed bug #42365 (glob() crashes and/or accepts way too many flags).
@@ -2550,7 +2621,7 @@ PHP NEWS
- Added missing safe_mode/open_basedir checks for file uploads. (Ilia)
- Added PDO_MYSQL_ATTR_USE_BUFFERED_QUERY parameter for pdo_mysql. (Ilia)
- Added date_timezone_set() function to set the timezone that the date
- functions will use. (Derick)
+ function will use. (Derick)
- Added pg_fetch_all_columns() function to fetch all values of a column from a
result cursor. (Ilia)
- Added support for LOCK_EX flag for file_put_contents(). (Ilia)
@@ -2627,7 +2698,7 @@ PHP NEWS
. stream_filter_remove() (Sara)
. time_sleep_until() (Ilia)
- Added DomDocument::$recover property for parsing not well-formed XML
- Documents. (Christian)
+ Documents. (Christian)
- Added Cursor support for MySQL 5.0.x in mysqli (Georg)
- Added proxy support to ftp wrapper via http. (Sara)
- Added MDTM support to ftp_url_stat. (Sara)
@@ -3362,7 +3433,7 @@ PHP NEWS
- Fixed bug #31684 (dio_tcsetattr(): misconfigured termios settings).
(elod at itfais dot com)
- Fixed bug #31683 (changes to $name in __get($name) override future
- parameters). (Dmitry)
+ parameters) (Dmitry)
- Fixed bug #31699 (unserialize() float problem on non-English locales). (Ilia)
- Fixed bug #31562 (__autoload() problem with static variables). (Marcus)
- Fixed bug #31651 (ReflectionClass::getDefaultProperties segfaults with arrays).
@@ -3427,7 +3498,7 @@ PHP NEWS
- Fixed bug #30430 (odbc_next_result() doesn't bind values and that results
in segfault). (pdan-php at esync dot org, Tony)
- Fixed bug #30266 (Invalid opcode 137/1/8). (Marcus)
-- Fixed bug #30120 (imagettftext() and imagettfbbox() accept too many
+- Fixed bug #30120 imagettftext() and imagettfbbox() accept too many
parameters). (Jani)
- Fixed bug #30106 (SOAP cannot not parse 'ref' element. Causes Uncaught
SoapFault exception). (Dmitry)