The number of changes are fairly small, which is always good when nearing the final release, but there were 2 important fixes that need attention. One is fix for a memory corruption in the new memory manager, something that could've caused random, hard to reproduce crashes. The second was a fix in the session extension's shutdown order, which caused problems when native objects (objects created by other PHP extensions) were stored inside $_SESSION.
Please try this release and give you feedback via qa mailing list or via this blog, either way we'd like to hear how this release works with your code.
this is fantastic!!! on my server php had bad memory leaks for over half a year! i had to set PHP_FCGI_MAX_REQUESTS to 250-300. it was eating over 1gb more after half an hour after it was started (at up to 300 php-pages/sec)... i always installed the newest stable.
going from 5.1.6 to this 5.2.0RC3 fixed it! the memory-usage-graph is completly flat =) THANK YOU GUYS!
--without-pear compiles and installs just fine, but with PEAR the upper configure produces the following errors while make install, immediately after "Installing PEAR environment:".
configure: warning: You will need re2c 0.9.11 or later if you want to regenerate PHP parsers.
configure: warning: lemon versions supported for regeneration of libsqlite parsers: 1.0 (found: none).
/tmp/php-5.2.0RC3/ext/openssl/openssl.c: In function `php_openssl_x509_from_zval':
/tmp/php-5.2.0RC3/ext/openssl/openssl.c:833: warning: passing arg 1 of `PEM_ASN1_read_bio' from incompat
ible pointer type
/tmp/php-5.2.0RC3/ext/ldap/ldap.c: In function `zif_ldap_connect':
/tmp/php-5.2.0RC3/ext/ldap/ldap.c:422: warning: assignment makes pointer from integer without a cast
/tmp/php-5.2.0RC3/ext/ldap/ldap.c: In function `zif_ldap_get_entries':
/tmp/php-5.2.0RC3/ext/ldap/ldap.c:1070: warning: assignment makes pointer from integer without a cast
/tmp/php-5.2.0RC3/ext/ldap/ldap.c: In function `zif_ldap_get_attributes':
/tmp/php-5.2.0RC3/ext/ldap/ldap.c:1202: warning: assignment makes pointer from integer without a cast
/tmp/php-5.2.0RC3/ext/ldap/ldap.c: In function `zif_ldap_get_values':
/tmp/php-5.2.0RC3/ext/ldap/ldap.c:1253: warning: assignment makes pointer from integer without a cast
/tmp/php-5.2.0RC3/ext/xmlrpc/xmlrpc-epi-php.c: In function `zif_xmlrpc_encode_request':
/tmp/php-5.2.0RC3/ext/xmlrpc/xmlrpc-epi-php.c:692: warning: passing arg 1 of `_efree' discards qualifiers from pointer target type
/usr/local/applications/lamp/httpd/build/instdso.sh SH_LIBTOOL='/usr/local/applications/lamp/httpd/build/libtool' libphp5.la /usr/local/applications/lamp/httpd/modules
libtool: install: warning: remember to run `libtool --finish /tmp/php-5.2.0RC3/libs'
chmod 755 /usr/local/applications/lamp/httpd/modules/libphp5.so
[activating module `php5' in /usr/local/applications/lamp/httpd/conf/httpd.conf]
/tmp/php-5.2.0RC3/sapi/cli/php: error while loading shared libraries: /tmp/php-5.2.0RC3/sapi/cli/php: undefined symbol: xmlParserInputBufferCreateFilenameDefault
make: *** [install-pear-installer] Error 127
make: *** [install-pear] Error 2
The the wrong libs/headers sit in a common directory such as /usr/include or /usr/local/include it may be difficult if not impossible to prevent PHP from using them. In those cased the recommended solution is to remove the old libraries/headers.