todo:php60

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
todo:php60 [2009/03/12 17:16] – add lemon scottmactodo:php60 [2017/09/22 13:28] (current) – external edit 127.0.0.1
Line 5: Line 5:
 ===== Timetable ===== ===== Timetable =====
   * NEWS: [[http://cvs.php.net/viewvc.cgi/php-src/NEWS?view=markup&pathrev=HEAD|6.0]]   * NEWS: [[http://cvs.php.net/viewvc.cgi/php-src/NEWS?view=markup&pathrev=HEAD|6.0]]
-===== Todo items =====+===== To-do items =====
 several items taken from here http://derickrethans.nl/files/meeting-notes.html several items taken from here http://derickrethans.nl/files/meeting-notes.html
  
-  unicode (this section has not been updated in a while and so its probably better to look at the [[http://cvs.php.net/viewvc.cgi/php-src/unicode-todo.txt?view=markup| todo]] and [[http://cvs.php.net/viewvc.cgi/php-src/unicode-progress.txt?view=markup| progress]] overviews in cvs, and the [[http://www.php.net/~scoates/unicode/|progress tool]]) +=== Migration === 
-    - remove old parameter parsing API and replace with one that supports unicode related functionality +  figure out and document the migration path 
-    - add support for a flag for extension if they should be loadable when unicode is set to off +  - develop a set of migration scripts when possible to ease the 5.x -> 6 transition 
-    - add unicode to pdo (wez) +  
-    - implement "filename_encoding" setting and return binary string when functions such as readdir() encounter a filename that can not exist in the encoding that is set +=== Unicode === 
-    - implement caching of the last 3 opened collators +This section has not been updated in a while and so its probably better to look at the [[http://cvs.php.net/viewvc.cgi/php-src/unicode-todo.txt?view=markup| todo]] and [[http://cvs.php.net/viewvc.cgi/php-src/unicode-progress.txt?view=markup| progress]] overviews in cvs, and the [[http://www.php.net/~scoates/unicode/|progress tool]]) 
-    - == should be the same as strcmp, and not using collation. strcoll() does. + 
-    - use locale based functions where they make sense, and pick a conservative default. Examples are strtoupper/strtolower, stristr etc.. +  - add unicode to PDO. [[PDOUnicode|PDO Unicode notes]] 
-    - provide an additional error mode for character set conversion failures that throw exceptions on failures. +  - implement caching of the last 3 opened collators 
-    - In run-tests.php output something at the end of c's main() to capture SEGVs during php shutdown in runt-tests.php, probably change run-tests.php to catch SEGV (marcus) +  - == should be the same as strcmp, and not using collation. strcoll() does. 
-    - deprecate ext/ctype in 6.0 and move to pecl in 6.1 in preference of unicode replacement functions (andrei) +  - use locale based functions where they make sense, and pick a conservative default. Examples are strtoupper/strtolower, stristr etc.. 
-    - JIT fetch & (de-)encode of auto-globals (pierre)+  - provide an additional error mode for character set conversion failures that throw exceptions on failures. 
 +  - In run-tests.php output something at the end of c's main() to capture SEGVs during php shutdown in run-tests.php, probably change run-tests.php to catch SEGV (marcus) 
 +  - deprecate ext/ctype in 6.0 and move to pecl in 6.1 in preference of unicode replacement functions. Note: the unicode replacements functions need to be merged to 5.x(without actual unicode support) for forward compatibility (andrei) 
 +  <del>JIT fetch & (de-)encode of auto-globals based on [[http://marc.info/?l=php-internals&m=117145486824260&w=2|this patch]]. Need to account for extensions wanting to access request data during RINIT. [[http://marc.info/?l=php-internals&m=116613042405124&w=2|Some]] [[http://marc.info/?l=php-internals&m=116957894007497&w=2|more]] references.</del> **DONE** (Andrei)
   - cleanups   - cleanups
-    - Get rid of the BC crap in ext/date (derick) +    - <del>remove UG(unicode) checks/references, Unicode is always "on"</del> **DONE** (Felipe, Steph) 
-    - Try to find a way to see how case sensitive identifiers could be gradually be implemented, but do not "fix" it for PHP6. +  - Get rid of the BC crap in ext/date (derick) 
-  - PECL +  - Try to find a way to see how case sensitive identifiers could be gradually be implemented, but do not "fix" it for PHP6. 
-    - decide on moving DB extensions out of the core later. + 
-    - move other extensions to PECL on a case by case basis +=== PECL === 
-    - regexp (anthony) +  - ext/dba should be handled in the same way as PDO through drivers maintained in PECL. but all the handlers stay in the distribution. 
-    - ext/dba should be handled in the same way as PDO through drivers maintained in PECL. but all the handlers stay in the distribution. +  - ext/soap 
-    - move mime_magic from the core to PECL +    - ext/soap will be turned on by default 
-    - ext/soap +    - implement some of the security extensions to ext/soap (rob) 
-      - ext/soap will be turned on by default +    - watch axis2 based implementation development 
-      - implement some of the security extensions to ext/soap (rob) +    - make use of the HTTP streams layer (dmitry) 
-      - watch axis2 based implementation development +  - add ext/bitset to core once CS violations are fixed (Scott) - Violations fixed, just needs to be merged. 
-      - make use of the HTTP streams layer (dmitry) +   
-    - add ext/bitset to core once CS violations are fixed (Scott) +=== Engine === 
-  Engine additions +  - add foreach( $a as $k => list($a, $b)) {} syntax (andrei) 
-    - add a new 64bit integer that is always 64bits regardless of platform with the cast name for this new type is (int64) and internally we use IS_INT64 and RETURN_INT64 etc.. +  - speed up @-operator and ask andi for approval (ilia, marcus) 
-    - add foreach( $a as $k => list($a, $b)) {} syntax (andrei) +  - add ability to allocate persistent zvals in PHP. 
-    - speed up @-operator and ask andi for approval (ilia, marcus) + 
-    - add ability to allocate persistent zvals in PHP. +=== OO changes === 
-  OO changes +  - [[http://www.zend.com/zend/week/week248.php#Heading3 | Property overloading RFC]] aka abstract/virtual properties and get/set handlers (derick) 
-    - [[http://www.zend.com/zend/week/week248.php#Heading3 | Property overloading RFC]] aka abstract/virtual properties and get/set handlers (derick) +  - object casting to primitive types BC mess (derick) 
-    - object casting to primitive types BC mess (derick) +  - add internal flag only to force calling of the parent constructor 
-    - add internal flag only to force calling of the parent constructor +  - add support for type-hinted return values. 
-    - add support for type-hinted return values. +  - implements the ReflectionClass cache in struct zend_class_entry*. (marcus) 
-    - implements the ReflectionClass cache in struct zend_class_entry*. (marcus) +  - class operator cleanup (static=static, non-static=non-static and no more ZEND_ACC_ALLOW_STATIC) (marcus)
-    - class operator cleanup (static=static, non-static=non-static and no more ZEND_ACC_ALLOW_STATIC) (marcus)+
   - Closures   - Closures
     - $this support in closures & object scoping, see [[http://wiki.php.net/rfc/closures/object-extension|object extension proposal]]     - $this support in closures & object scoping, see [[http://wiki.php.net/rfc/closures/object-extension|object extension proposal]]
     - Decide on how reflection will interact with $this / object scoping of closures and possibly object extension     - Decide on how reflection will interact with $this / object scoping of closures and possibly object extension
-  Other Additions/Changes +   
-    - allow opened files to be deleted on windows [[http://www.zend.com/zend/week/week248.php#Heading7|Streams]] (wez) +=== Other Additions/Changes === 
-    - APC +  - allow opened files to be deleted on windows [[http://www.zend.com/zend/week/week248.php#Heading7|Streams]] (wez) 
-      - include APC in the core distributions (turned off by default) and switch to mmap as default shared memory storage. +  - APC 
-      - ability to move autoloaded main classes in apc's class lookup preventing the overhead of doing the inheritance process all the time. (marcus) +    - include APC in the core distributions (turned off by default) and switch to mmap as default shared memory storage. 
-   - include the protection against HTTP Response Splitting attacks (header() shouldn't accept multiple headers in one call) from hardended php +    - ability to move autoloaded main classes in apc's class lookup preventing the overhead of doing the inheritance process all the time. (marcus) 
-   - add sand boxing if we have a rock solid implementation (sara) +  - include the protection against HTTP Response Splitting attacks (header() shouldn't accept multiple headers in one call) from hardended php 
-   - prepare a patch that disallows mixing different open/close tags. (jani) +  - add sand boxing if we have a rock solid implementation (sara) 
-   - look at creating a solid plan to rewrite build system and when there is a volunteer to implement it. +  - prepare a patch that disallows mixing different open/close tags. (jani) 
-   - GIF Write support and animated GIF (pierre) +  - look at creating a solid plan to rewrite build system and when there is a volunteer to implement it. 
-   - Full synchronisation with Boutell's GD (to and from php) (pierre) +  - GIF Write support and animated GIF (pierre) 
-   - Output Control +  - Full synchronisation with Boutell's GD (to and from php) (pierre) 
-     - revisit existing output handlers (mike) +  - Output Control 
-   - Rewrite parser to use lemon instead of bison (Scott, Etienne) +    - revisit existing output handlers (mike) 
-   - [[http://bugs.php.net/bug.php?id=27792 | add support for files >2GB]] once native 64bit integers are implemented (wez)+  - Rewrite parser to use lemon instead of bison (Scott, Etienne) 
 +  - [[http://bugs.php.net/bug.php?id=27792 | add support for files >2GB]] once native 64bit integers are implemented (pierre,wez) 
 +  - Update the php.ini files to reflect the various changes 
 + 
 + 
 +===== Needs revisiting or clarification ===== 
 + 
 +  - implement "filename_encoding" setting and return binary string when functions such as readdir() encounter a filename that can not exist in the encoding that is set 
 +  - decide on moving DB extensions out of the core later. 
 +  - move other extensions to PECL on a case by case basis 
 +  - regexp (anthony) 
 +  - make determination on the default string type (binary/unicode). Requires extensive testing of existing code to determine migration pains.
  
 ===== Under discussion ===== ===== Under discussion =====
-  - cleanups 
-    - safe_mode/open_basedir 
-      - unbundle safe_mode_exec_dir from safe_mode and keep it (rasmus) (take a look at [[http://tony2001.phpclub.net/dev/tmp/bugs_29840_31618.diff |this patch]] too) 
-      - new ini option: open_basedir_for_include which would allow using include/require(_once) on an expanded set of directories (sara) 
-    - [[http://marc.info/?l=php-dev&m=117640641605813&w=2 |kill "<%" but keep "<?"]] (anthony) 
-  - PECL 
-    - fileinfo 
-      - <del>move the Fileinfo extension to the core, and enable it by default.</del> **DONE in 5.3** 
-      - Fileinfo extension should be updated to only load its database once on MINIT. 
-  - Engine additions 
-    - [[http://marc.info/?l=php-dev&m=117639301119852&w=2 |add ZEND_ACC_READONLY]] (marcus) 
-  - Allow usage of C99 constructs in core/extensions 
  
 +=== Cleanups ===
 +  - safe_mode/open_basedir
 +    - unbundle safe_mode_exec_dir from safe_mode and keep it (rasmus) (take a look at [[http://tony2001.phpclub.net/dev/tmp/bugs_29840_31618.diff |this patch]] too)
 +    - new ini option: open_basedir_for_include which would allow using include/require(_once) on an expanded set of directories (sara)
 +  - [[http://marc.info/?l=php-dev&m=117640641605813&w=2 |kill "<%" but keep "<?"]] (anthony)
 +=== PECL ===
 +  - fileinfo
 +    - Fileinfo extension should be updated to only load its database once on MINIT.
 +=== Engine  ===
 +  - add a new 64bit integer that is always 64bits regardless of platform or have a single bigint type in userland that uses 64-bit ints and unbounded ints internally (Pierre, David (Dsp))
 +  - [[http://marc.info/?l=php-dev&m=117639301119852&w=2 |add ZEND_ACC_READONLY]] (marcus)
 +  - Allow usage of C99 constructs in core/extensions
  
todo/php60.1236878192.txt.gz · Last modified: 2017/09/22 13:28 (external edit)