Database extensions
Look at the valgrind messages and fix the issues.
Failed tests: fix or adjust for expected behavior.
Set up a testing environment for testing applications/frameworks:
Wordpress, Drupal, Wikimedia
ez, ZF
Put up a wiki page to log the issues with running apps under PHP 6 (
Unicode Issues)
Outline “expected to fail” issues
Functions requiring binary data (hash, crypt, urlencode):
binary strings are accepted normally
if a Unicode string is passed, it is converted to UTF-8 and E_STRICT is issued
Leave short tags alone - never talk about it again.
Consider making identifiers case-sensitive (one more time).
Reasons:
Migration path:
5.4 - E_STRICT errors on case sensitive names (like constants)
6.1 actually do case-sensitive identifiers, which have to be in precomposed/normalized (NFC form)
Clean up constness issues in the core.
Traits - real patch against HEAD before any decisions are made.
Make sure Phar is synced with head - (Greg)
Type hinted return values, scalar type hints - need working patches. These will not do auto-conversion for now, we may consider it later.
Proposal how to implement the closure stuff with classes - for 5.4 (??)
function call chaining (f()() if f() returns function), and array dereferencing (f()[0]) - (Stas)
Increase the evangelism for ext/filter - documentation, blogs, site, etc. People need to use it.
Reserve namespaces “PHP” - prevent malicious use and preserve for future use. PECL extensions should not use PHP namespace.
C#-style properties with getters/setters. Allow per-property __getFoo, __setFoo magic functions that would be invoked regardless of whether the property exists or not. Then add a bit of syntax to allow easier generation of these, such as:
<?php
class Foo {
public $bar
getter { return $this->bar; }
setter { $this->bar = strtolower($value); }
;
}
Lazy loading of functions/methods. (Shire)
Take another look at PDO 2. Quoting Wez, “it might be about time to see if the vendors are willing to play with us again, and where the original plan was to have all the major vendors on board, we may well be looking at cutting out the less flexible vendors from the baseline PHP distribution”.
Modify parser to allow including one .ini file from another. (Shire)
Static classes were discussed, but no real use case was presented. If someone has a real use case + patch, we can consider again.
Introduce the concept of “strict” classes that do not allow creation of dynamic properties on the fly. Need a patch and a volunteer. (Derick)
Read-only variables (zvals). Could be used to save memory for DB results since we wouldn't need to copy DB result buffer into Zend-managed memory. (Shire?)
Remove “final” modifiers from the Exception properties—they are very limiting.
Streams interfaces (?? FIIK) (Sara)