PEAR_PackageUpdate and PHP_CompatInfo roadmaps
| From: | Laurent Laville | Date: | Sun, 01 Jun 2008 08:45:24 +0000 |
| Subject: | PEAR_PackageUpdate and PHP_CompatInfo roadmaps | ||
| Groups: | php.pear.dev | ||
| Request: | Send a blank email to pear-dev+get-50205@lists.php.net to get a copy of this message | ||
Hi all,
To keep you aware of my work in progress about PEAR_PackageUpdate (PPU) and PHP_CompatInfo (PCI) !
PPU
---
As I've begun to fully rewrite PCI API (1.8.0), as I'll explains in a minute, I've no such time to complete to add new features of PPU 1.1.0
So, for PPU I'll then removed previoulsy features added in revison 1.32 (on PEAR CVS) and release a version 1.0.1 with only minor bug fixed, as explained in my post [1]
PPU 1.1.0 is always on my TODO list. But will be plublish later when PCI 1.8.0 will be really stable.
Now the next subject: PCI API 1.8.0
-----------------------------------
* A brief introduction of why I've decided to rewrite API (and no there will be no break Backward Compatibility, so be quiet).
By a request of Stephan Wentz (almost 2 month ago), who need a custom render of PCI output, I've tried to introduce a such feature with --output-level switch. But I see the limitation of such implementation.
BTW, if you know current API (1.7.0) you've probably noticed that there are no separate layout as in MVC pattern.
* A summary of new API:
API 1.8.0 will be M(odel) V(iew) C(ontroller) with still a Backward Compatibility. How is it possible ?
PHP/
CompatInfo/
Renderer/
Null.php
a renderer that consumes all output (no display). Usefull in batch mode.
Array.php
using PHP::var_export and PEAR::Var_Dump (with its own renderer)
Csv.php
Xml.php
using PEAR::XML_Util and PEAR::XML_Beautifier (with a least a bug)
Html.php
using PEAR::HTML_Table
Text.php
using PEAR::Console_Table
Renderer.php ==> View
Parser.php ==> Model
CompatInfo.php ==> Controller
The Controller, to keep BC, will still have alias of functions
parseFile(), parseString(), parseDir(), parseFolder(), parseArray()
But logic will be now in the Model (Parser.php), with a unified interface and only one method parseData() that will auto detect data source.
Progress of work :
Controller: 95%
Parser: 80% Renderer Array (100%), Null (100%), Csv(0%) , Xml (95%), Html(0%), Text(0%)I plan (hope) to release the version 1.8.0b2 in 2 days About bug found in XML_Beautifier (its an old one; detected in year 2005 [2]) So if you use benefit of XML_Beautifier with my Xml renderer and see the XML prolog/declaration be removed, DO NOT add a new bug report on PCI : it's Bug #5450 ! See you in 2 days with a new release, and I hope some comments ! Regards Laurent Laville [1] http://news.php.net/php.pear.dev/50105 [2] http://pear.php.net/bugs/bug.php?id=5450