par  Pierre-Alain Joye (pajoye@pearfr.org)

La liste fût très animée cette semaine, signe d'un retour à un rythme soutenu des mises à jours, ajouts et autres corrections sur pear. Les sujets étaient très variés, du désormais classique 'convention de nommage' et 'coding standard' en passant par le système de traduction automatique ou peardoc. A signaler le travail accompli cette semaine par Sebastian Bergmann et Kristian Köhntopp sur XML_Transfomer qui nous vaut aujourd'hui la sortie d'une nouvelle version stable.  Cette semaine a vu pas moins de quatres versions stables, ce qui est en soit une excellente nouvelle, ainsi qu'une version Beta.


Nouvelles sorties

Stable

Beta


PEAR-DEV headlines

PEAR web et gestionnaire de packages

L'équipe du site de pear travaille actuellement d'arrache-pied pour régler les derniers détails ou problèmes liés au site et à la gestion des packages. Afin de les aider à nous fournir un outils le plus stable et pratique possible, ils ont besoins de retours d'expériences de la part des utilisateurs. Si vous utilisez le site de pear ou le gestionnaire de packages, nous vous recommandons de leur faire part de vos éventuelles remarques ou problèmes aux moyens des listes de diffusions peardev ou peargeneral ou via le système de gestion des bugs. Nous vous remercions d'avance de vos contributions.

Pour rappel, la version Beta du site est visible en activant le cookie 'devme', voici le lien le permettant : http://pear.php.net/?devme

MDB - descriptions, retours et contributions

Durant cette semaine, j'ai remarqué que les fonctionnalitées du package sont peu ou mal connues, c'est pourquoi j'ai demandé à son auteur (Lukas Smith) de rédiger un descriptif des différences entre PEAR::DB et PEAR::MDB :

** Différences entre PEAR DB et PEAR MDB
Ce deux packages fournissent une API très similaire pour toutes les SDBDs (ainsi les utilisateurs de PEAR DB seront en terrain connu). Cependant, PEAR MDB va plus beaucoup plus loin que PEAR DB en terme d'abstraction de SGDBs. A côté de l'émulation des séquences, il fournit aussi des abstractions des types de données (par exemple, toutes les bases de données ne stockent pas les timestamp de la même façon) aussi bien que la création, modifications ou suppressions d'indexes, de tables et de bases de données. Un atout majeur est le système indépendant des SGBDs de gestion du schèma de la base. Celà signifie que vous n'avez pas à créer et maintenir des schèmas pour chaque SGDD que vous voulez supporter. Le manager MDB peut modifier une base si le schèma correspondant a été modifié. PEAR MDB bénéficie de l'expérience qui a été acquise durant le dévelopement de PEAR DB et est, actuellement, aussi rapide que PEAR DB.

** Remarques
Actuellement, PEAR MDB ne supporte pas autant de gestionnaires que PEAR DB, ceci provenant du simple fait que PEAR MDB est plus récent et, il  ne doit pas être considéré comme étant aussi stable que ce dernier. Cette situation peut être résolue par l'ajout de nouveaux drivers. Toute aide sera grandement apprécié. Vous pouvez consulter le fichier Readme.txt pour de plus amples informations.

Je me permets de revenir sur les remarques, Lukas manque cruellement de retours d'expériences, ceci étant un point essentiel afin d'arriver rapidement à un outils stable et performant.
Lukas est à la recherche de personnes voulant contribuer à MDB par la création de nouveaux drivers, actuellement les besoins prioritaires sont SqlServer et Oracle, vous pouvez contacter Lukas Smith via la liste de diffusion peardev ou depuis la page de MDB.

Documentation PEAR, version japonaise

Yasuo Ohgaki a démarré cette semaine la traduction de la documentaion PEAR en japonais. Nous ne pouvons que saluer cette initiative.

Pear Weekly News relayé par la newsletter de nexen.net

Merci à Damien Seguy de relayer la Pear Weekly News sur la newsletter de Nexen.net, je profite que vous pouvez diffuser ces nouvelles dans vos listes ou sites respectifs, pour toutes questions, vous pouvez nous contacter sur la mailing-liste peardev.

PEAR-DEV traffic

PEAR Licence FAQ disponible

La liste des licences conseillées est disponible, vous pouvez actuellement la consulter dans la FAQ PEAR.

PHP source code beautifier

Jens Bierkandt  a proposé d'ajouter son module de mise en forme de sources à PEAR. Qui n'a jamais 'perdu' des heures à reformater un code illible ? Ce module pourrait être la solution, en voici les principales fonctionnalités :
Il devrait être disponible rapidement sur le cvs de pear.

Inline::C en php ?

George Schlossnagle a proposé de fournir la possibilité d'ajouter la fonctionnalité bien connu du monde perl Inline::C, sans nécessairement réinventer la roue. Le but étant de pouvoir l'utiliser de cette manière :
<?pseudocode
$function_def = <<<EOF
php_function(times){
    int i,j;
    return if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, &i,&j) = FAILURE)
RETURN_LONG(i*j);
}
EOF
Inline_C($function_def);
times(2,2);
?>
Inline_C prendrait  le block de code C, y ajoute les informations nécessaires pour  en faire un module, après compilation le binaire serait mise en cache et chargé via dl().

Georges est donc à la recherche d'informations sur des fonctionnalités similaires existantes, si vous connaissez une extension fournissant ce genre de fonctionnalités, vous pouvez le contacter via peardev. Le message original publié sur peardev.

Standarts de noms et recommendations

Mika Tuupola proposât d'ajouter quelques recommendations quand à l'utilisation de noms de méthode constructeurs et factory (la discussion).

I18N et système de traduction

Wojciech Zieliñski a rappelé sa proposition de package de traduction automatique, ce qui a soulevé la nécessité de disposer de ce type de modules. Actuellement Wolgang  Kriesing travaille déjà sur ce type de modules via le package I18N disponible actuellement uniquement sur le cvs de PEAR. Si les traductions automatiques ou l'internalisation font partis de vos problèmatiques ou si vous désirez les aider, vous pouvez les contacter via peardev.
James E. Flemer proposât un module d'interface web permettant à des traducteurs de créer/maintenir des catalogues gettext (annonce).

Bugs and Fixes

Merci à ces personnes pour avoir signalé des bugs et/ou fournit des patches: Nigel Armstrong, Adam Morton, Rob, Richard Heyes.

Nouveau package ou propositions

DB_Grid

Yavor Shahpasov a proposé son module de binding dynamiques entre une base de données et un tableau, html ou texte. A noter qu'il y a déjà eu des discussions sur le besoin d'un module GRID dans pear, cette fois sera peut-être la bonne :-).

File_Repository

Mike McCallister a proposé son module de gestion de fichiers, prenant toute son importance sur de gros volumes de fichiers. En effet, nous avons constaté que les performances des systèmes de fichiers traditionnels tombent rapidement dès que la quantité de fichiers se trouvant dans le même dossier est importante. Ce module se propose donc comme une alternative viable et très utile. Les fonctionnalités sont très intéressantes, vous pouvez les consulter en détails dans le message d'annonce.

Spread API

George Schlossnagle signalat son intention d'ajouter son interface spread pour php à PEAR. Spread est un système haute performance d'échange de messages résistant aux erreurs, que ce soit en réseaux internes ou externes, plus d'informations sur le site de spread. L'interface php peut être téléchargée depuis http://www.omniti.com/~george/php_spread/php_spread-1.1.tar.gz.

Audio extension

Tony Leake nous propose d'ajouter  son extension Audio a PECL. Celle-ci permet à PHP d'être utilisé pour des applications d'enregistrements audio avancés comme du multi piste par exemple. Plus d'informations sont disponibles sur le site de l'auteur, http://www.webwise-data.co.uk/php_audio/php_audio_extension.html.


Dévelopement

Actifs cette semaine sur le CVS:  Log, LiveUser, Python, XML_Transformer, HTTP_Request, Documentation japonaise, DB_DataObject, DBA, HTML_QuickForm, Net_Ping, Tree, Net_DNS, Net_Whois, Crypt_RC4, HTTP_WebDav, MDB, peardoc/FAQ, Mail_Queue.

Nouvelle documentation et mises à jour

Les changements sont maintenant visibles sur pear.php.net.