summaryrefslogtreecommitdiff
path: root/TODO-PHP5
diff options
context:
space:
mode:
Diffstat (limited to 'TODO-PHP5')
-rw-r--r--TODO-PHP5211
1 files changed, 0 insertions, 211 deletions
diff --git a/TODO-PHP5 b/TODO-PHP5
deleted file mode 100644
index 85b8481378..0000000000
--- a/TODO-PHP5
+++ /dev/null
@@ -1,211 +0,0 @@
-Component: Zend Engine 2
-
- Important stuff to finish: PPP members/PPP methods,
- support of overloaded extensions, possibly differentiate
- between class and namespace as discussed with Stig in
- Germany.
-Responsibility: Zeev, Andi, Stas
-Time frame: Couple of months for first part and extensions will be
- ongoing while PHP is being fixed.
- Things to leave for later versions: Native aggregation
- support, accessing static members via object and not class.
-
-
-Component: Aggregation
-Responsibility: Andi, Stig?
-Time frame: ?
-
-
-Component: Introspection
-
- get_function_definition(<is_callable> [field]) =>
- array(
- file => filename
- line_start =>
- line_end =>
- parameters => array( name, byref, default )
- static_variables => array( name, value/default )
- scope => 'namespace' | 'class' | null
- namespace => classname | namespacename | 'main'
- protection => protection_flags
- phpdoc => pre-scanned-phpdoc-string
- type => 'internal' | 'user'
- )
-
- get_class_definition(<class> [field]) =>
- array(
- type => 'internal' | 'user'
- file => filename
- line_start =>
- line_end =>
- name => pretty-name
- parent => classname | namespace | null
- flags => bitfield (ABSTRACT)
- methods => array( array( name, phpdoc ) )
- default_properties => array( array( name, value, phpdoc ) )
- private_properties => array( array( name, value, phpdoc ) )
- protected_properties => array( array( name, value, phpdoc ) )
- public_properties => array( array( name, value, phpdoc ) )
- static_members => array( array( name, value, phpdoc ) )
- constants => array( array( name, value, phpdoc ) )
- classes => array( array( name, phpdoc ) )
- phpdoc => pre-scanned-phpdoc-string
- )
-
- get_constant_definition(<constant> [field]) =>
- array(
- file => filename
- line_start =>
- line_end =>
- name =>
- value =>
- phpdoc =>
- )
-
- get_global_variable_defintion(<name> [field]) =>
- array(
- file =>
- line_start =>
- line_end =>
- name =>
- phpdoc =>
- )
-
- We tried to take into account the implementation of each piece of
- information, and there are some that are problematic, especially those
- regarding constants and global variables (where do we store the extra
- information?)
-
- With "pre-scanned-phpdoc-string" we mean converting:
-
- /**
- * Blah blah blah
- * @param foo ...
- */
-
- to:
-
- Blah blah blah
- @param foo
-
- The rest of the phpdoc handling should be left to an extension.
-Responsibility: Stig, Andrei, Harald
-Time frame: ?
-
-
-Component: Redesign of API Versioning
-Responsibility: ?
-Time frame: 1 month
-
-
-Component: Thread Safety
- Identify the extensions that are not thread safe by design
- or due to dependant libraries and identify them as such.
- If possible try to resolve thread safety issue via code
- improvements (if php code or patches will be accepted by
- library maintainers). For situations where thread safety
- cannot easily be acheived a flag in the extension API is
- set so PHP can identify non-thread safe extensions. These
- extensions will not be loaded in a ZTS compiled binary
- (unless it is cli/cgi).
-
-Responsibility: ?
-Time frame: ?
-
-
-Component: SAPI
- Environment variables defined in the CGI spec need to be
- verified in each SAPI module that they conform to the CGI
- spec correctly. If they do not, the SAPI module needs to
- fix the variable prior to script execution. Having this
- conformity will aid in having PHP scripts run correctly
- under different sapi modules.
-
-Responsibility: Shane Caraveo & each sapi module owner
-Timeframe: ? (but shouldn't be much effort, most modules are probably ok)
-
-
-Component: Input Filtering
- - Implement a SAPI input filter hook that will get called
- just before registering a variable in the
- treat_data/post_handler hooks. (done)
- - Make sure this is also done in mbstring (done)
- - Provide access functions, or perhaps a new
- $_RAW_GET/POST/Cookie set of superglobals to get at the
- unfiltered data
- - Provide a .ini directive which allows people to set their
- input filter to one of the built-in strip_tags,
- htmlspecialchars or whatever other internal function might
- be useful here.
- - (The main benefit of this is to make it easier for people
- to solve the XSS problem once and for all without having
- to go through every line of their code and adding input
- validation/filtering everywhere)
-Responsibility: Rasmus
-Timeframe: Yesterday
-
-
-Component: RPC Abstraction Layer
- Porting java, com, dotnet, xmlrpc, corba, soap and python, srm
- (are there more ?) to work with the new oo api and preferably
- by using ext/rpc.
-Responsibility: Harald
-Time frame: 2 months (but i have to wait for a few engine features first)
-
-
-Component: OO Extensions
- Each OO extension has to be revised and rewritten to fit into
- the new OO model. We should decide which extensions are a must
- to have for the release and which can be ported by the maintainer
- later as a separate pecl release.
- A list of extensions to be extended that have to be investigated:
- * browscap
- * aggregate
- * all *sql extensions (*_fetch_object)
- * domxml (seems like christian is rewriting it anyways)
- * ming
-Responsibility: Harald (, extension maintainers)
-
-
-Component: Abstract Data Types (ADT)
-Responsibility: Sterling, Harald
-Time frame: ?
-
-
-Component: MySQL Extension
- Complete rewrite, leveraging the new MySQL 4 / MySQL 5
- features.
-Responsibility: Georg Richter, Zak Greant
-Timeframe: ?
-
-
-Component: XML
- - Rewrite DOMXML and incorporate all (or most of) W3C-DOM2.
- - Use the new ZE2 features (Exceptions, setter/getter).
- - Add SAX(2), XML Schema.
- - XSLT, HTML, XPath, XPointer, DTD Validation will still be
- supported, have to find a meaningful API for it.
- - Break BC, warn users now.
- - Look at the libxml2 patch by lukas schröder and see if we can prevent
- memory leaks with it (anyway, getting rid of mem-leaks and intelligent
- memory management is on top prio...)
- - In the longer term, domxml (or another name, as with todays features
- domxml is a little bit misleading) shall be the main xml-class, which
- covers most of what's needed for decent XML support in PHP ;)
- But there is certainly place for others like Sablotron etc.
-Responsibility: Christian Stocker
-Timeframe: ?
-
-
-Component: Test Suite
- Extending the test suite with atleast a test for every
- function in an extension that doesn't require external
- resources. Also developing an automated test thing which
- cvs ups's, compiles and tests the build on a daily base on
- as much platforms/extensions as possible.
-
- The test suite will also be extended to support threaded
- testing and testing for differing sapi modules (via http
- calls or other methods).
-Reponsibility: Derick (, extension maintainers)
-Time frame: 3 months