by Alan Knowles <alan_k at php.net> translated by Arnaud Limbourg <arnaud.limbourg at cegetel.fr>
Une nouvelle semaine chargée vient de s'écouler. Cette dernière
semaine a vu sortir 2 packages en version stable ainsi que 5 autres en version
bêta. Divers sujets ont été abordés : un analyseur
syntaxique (parser) SQL, de constructeurs et la gestion des erreurs, les
standards, PEAR dans la distribution Linux PLD. De nombreuses contributions
ont été faites et trois nouveaux packages ont été
proposés pour intégration dans PEAR.
Nouvelles sorties
Stable
PHPUnit est un framework (ndt: je ne connais pas de traduction
adéquate) permettant d'effectuer des tests de régression, Net_SMTP
fournit une interface simple au protocole SMTP (transfert de courrier électronique),
bêta
Net_Dime qui supporte le standard du même
nom (Direct Internet Message Encapsulation), SOAP pour le support du protocole
et packages SOAP, DBA qui fournit une interface aux base de données
de type DBM (procure une émulation à base de fichiers), PEAR_Frontend_Web
: une interface web pour l'installateur PEAR et DB_DataObjects composé
d'un constructeur SQL et d'une couche de modélisation de données.
Trafic de la liste de diffusion PEAR-DEV
DB::Sybase - Gestion des erreurs pour la couche d'abstraction de Base de Base de Données
Anotonio Carlos Venancio Junior s'est porté volontaire pour compléter les messages d'erreur du driver Sybase.
DBA - Le wrapper et analyseur syntaxique de SQL
Brent Cook finalise
l'interface aux bases de type Berkley qui inclue de nombreux outils permettant
de simuler le comportement d'une base de type SQL à partir de fichiers
plats. L'un des composants est un analyseur syntaxique SQL qui pourrait être
utilisé dans d'autres cas ... (ce module se nommait DB_DBA auparavant)
Constructeurs SQL et nouvelles fonctionnalités dans PEAR::DB
Plusieurs questions à propos de constructeurs SQL ou l'ajout de nouvelles
fonctionnalités tel getMany, similaire à la couche d'abstraction
de base de données de Python, ont été discutées.
Il à été noté que PEAR::DB dispose d'une méthode
autoExecute permettant de construire une requête à partir de
tableaux. Une autre alternative étant le module DB_DataObject pouvant
être utilisé pour traiter la construction de requêtes
SQL. Des inquiétudes sur la taille du noyau de PEAR::DB ont été
soulevées avec l'ajout de nouvelles méthodes comme getMany,
une classe 'PEAR::DB étendue' pourrait être créée.
Le Zend Engine 2 et les Erreurs
Quelques points concernant le passage
à PHP 5 et le Zend Engine 2 ont été abordés :
le nouveau mécanisme de gestion d'erreur "try and catch" et le mot
clé réservé delete. Stig (ndt: le "papa" de PEAR) à
testé le Zend Engine 2 et a pu conclure que la méthode raiseError
pouvait être considérablement simplifié. Sebastian Bergmann
s'est penché sur l'ajout de assertSame() au module PHP_Unit_Assert
qui supporte la comparaison d'objets sous le Zend Engine 2 uniquement. A
propos du mot clé réservé delete il à été
noté que les packages DBA et DB_DataObject utilisent des méthodes
nommées ainsi ce qui ne fonctionne pas sous le Zend Engine 2. Brent
a renommé les méthodes delete de DBA en remove pendant qu'Alan
a commencé une discussion avec Andi (ndt: Gutmans, le End de Zend)
afin de permettre l'utilisation de delete comme nom de méthode dans
une classe. Il a reçu une réponse favorable, en attente d'une
décision finale lors du retour de vacances d'Andi.
Mes remerciements aux nombreux contributeurs pour la notification de bugs et l'envoi de rustines
Dan Allen, James Flemmer, Paul Cooper, Marco Wittwer, Yavor Shahpsov
Weekly News - Publication et traductions
Alexander Merz traduit
le weekly news en allemand, si vous êtes intéressé pour
passer une heure par semaine pour traduire et/ou interpréter ce qui
se passe dans la communauté PEAR dans une autre langue merci d'envoyer
un message sur la liste de diffusion pear-dev. Le planning prévu est
la finalisation du weekly news le vendredi, dans l'idéal les traductions
doivent être prêtes le lundi ou mardi suivant... - des annonces
seront postées le lundi, toutes les suggestions pour savoir où
poster ces annonces sont les bienvenues.
La Distribution Linux PLD inclue PEAR
La Distribution Linux PLD (www.pld.org.pl)
va distribuer les packages de PEAR sous forme de RPM. Stig à indiqué
que le gestionnaire des packages PEAR à été conçu
pour pouvoir être intégré dans d'autres gestionnaires
de packages. PHP sera ainsi distribué avec 3 packages de base, les
packages restant devant être installé grâce à l'installateur
PEAR.
>
Chemins absolus contre chemins relatifs
Lukas Smith à suggéré
l'utilisation de la fonction dirname(__FILE__) . '/filename.php' plutôt
que l'actuelle forme 'package/filename.php' dans les require et include.
Seulement un +1 (ndt: le système de vote, +1 signifie que la personne
est pour et -1 contre, la comptabilisation des +1 et -1 permet de connaître
l'acceptation d'une proposition) à pu être enregistré.
Cependant, Lukas à plus tard noté que l'installateur PEAR serait
perdu dans la résolution automatique des dépendances. Il à
été noté que de nombreuses personnes n'utilisent pas
toujours les packages PEAR situés dans le répertoire d'installation
de PEAR, mais parfois dans des sous-répertoires de leurs applications
et modifie l'include_path en utilisant ini_set().
Licences et encodage
Brent Cook à posté un article
intéressant concernant son choix de la licence LGPL au lieu de la
PHP pour le package DBA. Si vous cherchez quelle licence choisir pour votre
package, c'est une analyse à lire
(ndt: en anglais). Dans une discussion similaire une personne à demandé
si PEAR pouvait être distribué en format 'encodé' (ex:
grâce au Zend Encoder) ou équivalent. Les licences actuelles
l'autorisent, à la condition que ce soient les versions non-modifiées
de PEAR qui soient distribuées.
Les couches de transports XML_RPC et SOAP
James Flemmer à
fournit une rustine pour XML_RPC afin d'autoriser les plugins pour la couche
de transport - permettant ainsi l'utilisation de http, https, unix socket
et carrier pidgeon... Shane Caraveo à proposé de coordonner
les efforts sur le module SOAP afin de pouvoir partager les couches de transport.
Standardiser la fermeture des connexions.
Alexander Merz à
suggéré de standardiser les noms des méthodes de connexion
et déconnexion afin d'éviter le mélange existant de
quit,close,open etc. - cette proposition à reçue un +1 (ndt:
comme expliqué plus haut sur le système de vote, elle à
été approuvée)
Propositions de Packages:
Authentification et Gestion des permissions
Markus wolff a proposé de pearifié (ndt: mettre aux standards de PEAR) ses classes de gestion des utilisateurs et des permissions
afin de les ajouter à PEAR, il est intéressé par le
feedback que d'autres utilisateurs peuvent lui fournir.
Template_Flexy - Une autre classe de Templates
Alan (l'auteur de cette weekly news), à proposé l'addition de sa classe Template_Flexy
dans PEAR. Il à reçu au moins un +1. Cette présente
une API très simple, mixée avec une classe dont l'accent porte
sur la rapidité d'une solution de templates, basé sur la classe
simpletemplate de Wolfram.
PECL - smbc - Un module C pour un accès client à Samba
Jelmer Vernooij à annoncé la disponibilité de son module
C permettant à PHP d'effectuer des appels utilisant la librairie cliente
Samba (Windows Networking) (ndt: je n'arrive pas à traduire Windows
Networking)
Développement
Ont été actif sur le cvs DBA, Net_Dime, SOAP,
DB, PEAR, PECL::soap, Mail_Mime, HTML_QuickForm, File_Password, Date,
MDB, XML_CSSML, PHP_Unit, Net_SMTP, PEAR_Frontend_Web,
Documentation
La documentation DB_DataObject à été ajoutée au manuel