===== Release Managers ===== Johannes Schlüter, Lukas Kahwe Smith ===== Timetable ===== - July 24th - feature freeze **COMPLETED** - July 31st - alpha1 **COMPLETED** - September 2nd - alpha2 (freeze on August 29th, final packaging on September 1st) **COMPLETED** - December 4th - alpha3 (freeze on December 2nd, final packaging on December 3rd) **COMPLETED** - January 29th - beta1 (freeze on January 26th, final packaging on January 28th) **COMPLETED** - March 24th - RC1 (bug fixing until the 19th, with RM ok commits until 20nd, until 23rd build fixes only) **COMPLETED** - June 7th - RC2 (bug fixing until end of the 4th, after that only build fixes and README changes) **COMPLETED** - June 11th - RC3 **COMPLETED** - June 18th - RC4 **COMPLETED** - June 30th - stable **COMPLETED** ===== Todo items ===== Please keep the [[doc:scratchpad:upgrade:53|upgrade documentation]] always current. ==== Alpha1 ==== - MFH namespaces **Done** - [[php-internals@121527668606247|some concerns]] (will not be addressed for now) - MFH _ _callStatic **Done** - MFH Object handler get_debug_info **Done** - remove zend.ze1_compatibility mode and throw E_CORE_ERROR when set **DONE** (dmitry) - Add open_filename debug info to streams. **Done** - New error message generation for parameter parsing API. **Done** - Symlink the intl extension from PECL, but leave it disabled by default as is the case with all extensions dependent on external libs **DONE** - Apply the Late Static Binding Patch **Done** - [[php-internals@121551722501075|issues with parent forwarding]] -> make parent::/self:: forwarding (etienne/dmitry) **DONE** - Implement Sqlite3 support via the ext/sqlite extension (ext/sqlite isn't possible, ext/sqlite3 from pecl is.) (Scott) **DONE** - will require minor changes to PDO_SQLite to share the sqlite library **DONE** - Introduce mysqlnd library into core and use it as a backend for PDO and mysql/mysqli extensions (possibly enabling them by default) (Andrey) **DONE** - Patch PDO_MYSQL to optionally support mysqlnd library in addition to the MySQL client library, fix assorted PDO_MYSQL bugs, extend PDO test suite (Johannes, Ulf) **DONE** - Split off deprecation from E_STRICT into E_DEPRECATED **Done** (Lars, Felipe, Marcus) - PCRE extension will not be allowed to be disabled **Done** (Marcus) - The new php.ini files parser/scanner + CGI/FastCGI "htaccess" style ini [[http://pecl.php.net/~jani/patches/new_ini_parser_scanner.patch| file support]] **Done** - SPL improvements: - Make DirectoryIterator implement SeekableIterator. (Etienne) ** Done** - Implement MultipleIterator in C. (Arnaud, Marcus) **DONE** - [[php-internals@121552508821243|Implement RecursiveTreeIterator in C.]] (Marcus/Arnaud) **Done** - [[http://marc.theaimsgroup.com/?l=php-dev&m=117111703809304&w=2 | OpenID enabling patch for OpenSSL and PHP 5]] (wez) **Done** - merge the zend_arg_info const'ify patch (Dmitry, Nuno) **Done** - merge Matt's ZEND_SIGNED_MULTIPLY_LONG() [[http://marc.theaimsgroup.com/?l=php-dev&m=116304760630103&w=2 | optimization patch]] (matt/dmitry) **DONE** - Merge the [http://mega.ist.utl.pt/~ncpl/php_gcc4_visibility.txt GCC 4 -fvisibility patch] (Dmitry, Nuno) **Done** - Implement David's Circular Garbage collection patch. **Done** - Link phar extension from PECL into core (possibly enabling it by default) **Done** - Replace flex scripts with re2c ones in Zend. This will fix the memleak issues of the lexer, make the lexer threadsafe and reentrant and allows to use emalloc on temp blocks automatically ([[http://blog.somabo.de/2008/02/php-on-re2c.html|read more here]]). (Marcus, Nuno, Scott) **Done** - [[php-internals@121474666513126|ZE multi byte support]] ([[php-internals@121507232806908|partly fixed?]]) **DONE** - [[bugid@45372|hash# check in new re2c parser breaks code]] **DONE** - drop ext/hash in favor of an extended ext/mhash with an ext/hash wrapper (Scott) **Done** - Move extensions to PECL (Pierre) - ncurses ***Done*** - fdf ***Done*** - sybase ***Done*** - remove [[http://marc.info/?l=php-internals&m=121390431523970&w=2|E_DEPRECATED on is_a()]] **Done** - [[bugid@45408|upgrade PCRE]] (Nuno) **Done** - Update Ming (sync with ming cvs, may be done in the phase between feature freeze and alpha1) (Frank) **DONE** - [[php-dev@117197591621444|add fileinfo extension]] to core (Derick) **DONE** - [[php-internals@121492812630984|add support for import by OID into ext/pgsql]] (Hartmut) **DONE** - [[rfc:closures|closures]] (Christian/Dmitry) **Done** - drop _ _toString() from closures (Johannes/Dmitry) **DONE** - deprecate ticks (Felipe) **Done** - add array_replace[_recursive] ([[http://www.realplain.com/php/array_replace_5_3.diff|diff]], [[http://www.realplain.com/php/array_replace.phpt |phpt]]) (matt/johannes) **DONE** - [[php-internals@121382088925963|unix path separators in spl]] (Steph/Greg/Marcus) **DONE** ==== Alpha2 ==== - Windows binary releases and snaps: stabilize, review, fix and make it maintainable **DONE** - make mysqlnd the default mysql lib **DONE** - remove pdo_oci8 (only keep pdo_oci) **DONE** - fix libsqlite bundeling and related extensions **DONE** - move ext/ming to PECL (Pierre) **DONE** - Bundle unix man pages for functions, methods and class references (Hannes, Rudy) **DROPPED** (will be made available as a PEAR installable package) - [[php-internals@121358495509113|shutdown order issues]] (Greg/Dmitry) **DONE** - Remove GD1 and Freetype1 support (Scott) **DONE** - [[php-internals@121626110032715|fix modification of virtual directories in phar]] (Greg/Dmitry) **DONE** - [[php-internals@121507100804623|some performance concerns over non-code files in phar]] (Greg/Dmitry) **DONE** - solve issues with [[php-internals@121680196429835|ext/soap and errors in the ctor]] (Dmitry) **DONE** - apply patches to ODBC for [[bugid@43666]], [[bugid@43668]], [[bugid@43669]] (Patrick) **DONE** - drop ereg usage (browser cap, etc.) (Nuno) **DONE** - [[php-internals@121683203120583|exception handling, two new functions and a modified one plus a structure change]] (Marcus) **DONE** - [[php-internals@121683203120583|change the error mode to prevent wrong error handling mode for inner call in some cases]] (Marcus) **DONE** - MFH lightspeed SAPI (Georg) **DONE** - add some tests for fileinfo (Felix/Derick) **DONE** - fork fileinfo lib code to make it more compatible with php (Derick/Ilia/Mikko/Pierre) **DONE** - Add BC function 'mime_content_type()' into fileinfo extension to allow removing ext/mime_magic completely (Derick) **DONE** - move frontbase extension to PECL (Pierre) **DONE** - move dbase extension to PECL (Pierre) **DONE** - [[php-internals@121803696901447|solve include path issue]] (Dmitry) **DONE** - [[php-internals@121776917000892|add the const qualifier in several function parameters in Zend/*]] (Felipe) **DONE** ==== Alpha3 ==== - Cleanup code to use the new zend_parse_parameters API (Alexey, Felipe, Olivier, David) **DONE** - Add all missing arg infos to make Reflection more informative (Felipe) **DONE** - commit [[rfc/rounding|rounding RFC]] (Christian S.) **DONE** - finish namespace syntax (Greg, Stas) **DONE** - deprecate define_syslog_variables() (Kalle) **DONE** ==== Beta1 ==== - add pecl/enchant as a replacement for ext/pspell (Pierre) **Done** - [[http://ilia.ws/archives/149-mail-logging-for-PHP.html|mail() logging]] (ilia) **Done** - add spl_object_id() or improve spl_object_hash() to ensure there is a way to uniquely identify an object during a given request (Lars/Guilherme) **Done** - [[bugid@46844|First line of included files not output if they begin with #]] **Done** - [[bugid@46304|Defining namespaced constant using define() defines CASE SENSITIVE namespace]] **Done** ==== RC1 ==== - [[rfc:newinis|reorganize the bundled php.ini files to production/development recommendations]] **DONE** - [[bugid@46048|SimpleXML top-level @attributes not part of iterator]] **DONE** - [[bugid@46897|ob_flush() should fail to flush unerasable buffers]] **DONE** - [[bugid@46817|tokenizer misses last single-line comment]] **DONE** - [[bugid@46984|Strict-Warning when overwriting methods with changed parameters]] **DONE** - [[bugid@42641|ob_start(): inconsistent behaviour with undefined callbacks]] **WONT FIX (?)** - [[bugid@47206|Unintended API change in XSLTProcessor]] **DONE** - [[bugid@45432|PDO: persistent connection leak]] **DONE** - [[bugid@47302|Problem with downloading pear]] **DONE** - re-enable phar for big endian systems **DONE** - review closures and especially reflection changes **DONE** - [[php-internals@123309118216429|PHP_5_3 missed merge from PHP_5_2 for write_func callback]] **DONE** ==== RC2 ==== - memory leak in the scanner when a new state stack is created **DONE** - Add E_DEPRECATED patch for deprecated ini settings on startup (Kalle) **DONE** - fix BC problem with BUILD_ID in Zend Engine (api_check API no longer allows to load extensions with arbitrary API) **DONE** - verify PEAR bundle upgrade to the current latest version of 1.8.0 (Johannes/Helgi) - fix issues with rounding and parsing of floats/integers (Matt/Dmitry) ==== RC3 ==== - [[bugid@44859|is_readable() returns incorrect result with NTFS ACL permissions]] (Pierre) **CRITICAL** - Add tests for ext/ODBC (Felipe) ==== RC4 ==== - very important for APC, about caching (stat cache or other) on win/fcgi (Pierre) - add missing windows libs (except for firebird/interbase) (Pierre) - [[bugid@43817|opendir() fails on Windows directories with parent directory unaccessible]] (Pierre) ==== stable ==== - [[http://bugs.php.net/search.php?status=Open&phpver=5.3&cmd=display|fix open PHP 5.3 bugs]] - finish [[http://wiki.php.net/doc/scratchpad/upgrade/53|UPGRADING README]] file (Kalle/Hannes/Philip) - write migration guide for the manual (Kalle/Hannes/Philip) - Fix the NEWS file, as it skips from 5.2.4 to 5.3.0 (Johannes) - Add E_DEPRECATED if session.bug_compat_42/warn is On (already removed in HEAD) (Kalle) - update short_open_tag descriptions in php.ini-* as per [[http://marc.info/?l=php-internals&m=123973241406412&w=2|this]] (Philip) ==== After the first stable release ==== - add firebird/interbase to windows builds - make all extensions use php implementation of getenv (Pierre) - Improve the build script to ease the parsing of the output and QA - Fix static build of extension on windows when static is the default and --enable-snapshot-build is used (Pierre) ==== Additional Links ==== - [[php-internals@122684228317217|quick polls for 5.3]] - [[php-internals@121502894019535|towards a 5.3 release]] - [[php-internals@117829127516320|RFC - Starting 5.3]] - [[http://news.php.net/php.internals/32330 | Vote results]], PhP53VoteResult - Current ML Discussion: [[php-internals@120482355801042|5.3 Release Planning]] - NEWS: [[http://cvs.php.net/viewvc.cgi/php-src/NEWS?view=markup&pathrev=PHP_5_3|5.3]]