Aller au contenu | Aller au menu | Aller à la recherche

Projets

L'avancement dans les projets auquels je participe ou que je dirige

Fil des billets - Fil des commentaires

lundi, mai 11 2009

Xulfr.org indisponible

Cher développeurs XUL, depuis hier soir le serveur de xulfr.org est mort. Paix à son âme. Nous allons le remplacer le plus tôt possible, mais le site ne sera pas revenu avant 2-3 jours je pense. Je vous tiens au courant...

Mise à jour: le site est de nouveau operationnel depuis Mercredi dans la journée :-)

vendredi, avril 3 2009

Jelix 1.0.8 et 1.1.2

Les développements sur le framework continuent, et les corrections de bugs aussi. Voici donc deux versions correctives pour les branches 1.0 et 1.1. Plus de détails dans la news.

vendredi, février 20 2009

Fuel dans XulRunner

Avec le projet sur lequel je travaille, je refais du XUL à plein temps avec XulRunner 1.9.1. En effet, ces dernières années, je faisais plus des hacks dans Gecko en C ou des composants XPCom C que du XUL. Et du coup, je suis passé à coté de nouveautés :-).

Comme l'évolution de l'API Fuel.

Cette API, qui contient des fonctions intéressantes pour toute application XUL, n'était au départ disponible que dans Firefox (durant le développement de la version 3.0), et non dans le toolkit XUL. Et en fait, je viens de m'apercevoir que les fonctionnalités non spécifiques au navigateur sont maintenant dans les sources du toolkit (depuis la version stable de Gecko 1.9.0), donc disponible pour toute application XulRunner.

Sous certaines conditions cependant.

En effet, il faut se faire un composant XPCOM javascript, avec un IDL propre qui hérite de extIApplication (voir l'exemple dans Firefox), et inclure les sources de extApplication.js via une instruction de preprocessing #include. Pour ceux qui génèrent leur application avec les sources de Mozilla et qui utilisent le système de build de Mozilla. Pour les autres, il n'y a pas d'autres choix que de recopier le fichier extApplication.js dans leur chrome et l'inclure programmatiquement.

Cependant, grâce au fait que vous ayez à faire un objet XPCOM javascript, ayant son propre IDL, cela vous permet d'ajouter vos propres méthodes et propriétés sur l'objet Application qui sera exposé dans vos scripts javascripts de vos fenêtres XUL.

lundi, février 16 2009

Jelix 1.1

La version 1.1 de Jelix est sortie !

Merci à tout les contributeurs, que ce soit au niveau du code qu'au niveau de la rédaction du manuel :-)

mercredi, février 11 2009

En vrac

La flemme de faire un billet pour chaque chose à dire, donc voici en vrac quelques news, en particulier sur mes projets...

Lire la suite...

vendredi, janvier 30 2009

Jelix motorise la première plateforme de blog française

D'après Médiamétrie/Nielsen, la plateforme de blog Over-Blog est devenu la première plateforme de blog français en décembre, passant devant Skyrock (anciennement skyblog). Source: over-blog.

Over-blog a fait le choix il y a 2 ans et demi d'utiliser le framework jelix, Cette nouvelle me ravit donc :-)

lundi, janvier 5 2009

Nouveautés de Jelix 1.1RC2

La semaine dernière, j'ai publié une seconde version candidate pour Jelix 1.1. Pas mal de bugs corrigés et de petites améliorations mineures par ci par là. Mais je n'ai pas résisté à inclure un cadeau de noël, un nouveau module que j'ai écris en quelques dizaines de minutes : master_admin. Qui est accompagné d'une nouvelle commande initadmin.

Avec ce couple, vous pouvez réaliser une application d'admin from scratch en 5 minutes. Démonstration.

Lire la suite...

mercredi, décembre 10 2008

Regression sur les templates sqlite, et l'importance des tests unitaires

En voulant utiliser les templates XUL avec sqlite dans BlueGriffon, Daniel a découvert un bug il y a quelques jours. Un méchant bug d'ailleurs, puisque les templates avec sqlite ne fonctionnaient quasiment plus ( je n'ai pas vérifié si ça l'est dans la dernière beta de Firefox ou si c'est juste dans le trunk).

C'est une régression qui est survenue suite à une "amélioration" dans le moteur principal de template, il y a... presque 2 mois !

Deux mois pendant lesquels les templates avec sqlite ne fonctionnaient plus. Et savez-vous pourquoi tant de temps ? Parce qu'il n'y avait pas de tests unitaires ! Donc aucun moyen de détecter automatiquement la régression.

Et à qui la faute ? En grande partie à moi : je n'avais pas développé de vrai tests unitaires lorsque j'avais implémenté le support de sqlite dans les templates XUL. Deux petites excuses tout de même :

  1. À l'époque, le framework de tests unitaires ne permettait pas de faire des tests dans le context chrome
  2. j'attendais en fait que Neil Deakin finisse son mini framework de tests sur les templates, pour y ajouter mes tests.

Mais bon, quand il eut terminé, ma tâche fut tombée dans l'oubli, noyé que je suis dans ma todo list.

Cependant, Neil m'a dévancé pour corriger le bug. Moi j'ai ajouté mes tests. Tout devrait être intégré dans le trunk dans les jours qui viennent, le temps que les reviews se fassent. Ouf.

mardi, décembre 9 2008

Testez Jelix 1.1RC1 !

Ouf, ça y est, la version 1.1RC1 est disponible. C'est le moment pour vous de venir essayer cette nouvelle version, afin de comparer Jelix avec d'autres frameworks, mais aussi de nous aider à débusquer les derniers petits bugs. À propos de stabilité, plusieurs développeurs utilisaient des versions de développement de Jelix 1.1 dans leurs projets et en production, et les tests unitaires nous permettent de vérifier qu'il n'y a pas de regressions, vous ne devriez donc pas rencontrer de problème sérieux. Mais rien n'est parfait en ce bas monde, donc on a besoin de plus d'yeux, et plus de tests manuels pour renforcer la robustesse du framework avant la sortie finale de Jelix 1.1.

Conçernant la documentation, on y travaille dur, et nous avons encore beaucoup de travaille sur la version anglaise du manuel de Jelix 1.1, mais la version française est quasi complète. Si vous voulez nous aider à traduire, n'hésitez pas, c'est un wiki. Nous allons aussi travailler à un nouveau tutoriel. De plus, je développe actuellement un nouvel outil pour générer automatiquement la documentation sur l'API (marre de phpdoc). Bref, nous avons beaucoup de travail sur le projet, tout aide est donc la bienvenue ! :-)

N'hésitez donc pas à venir sur notre channel IRC (irc.freenode.net, #jelix) ou le forum pour poser vos questions.

Aujourd'hui je ne serais par contre pas disponible, je serais au Forum PHP 2008 :-)

jeudi, décembre 4 2008

Petits plaisirs avec CSS3

Pour la sortie de la version 1.1 de Jelix, je suis en train de faire quelques retouches sur le design du site web jelix.org. Je suis loin d'être un as du web design, de maitriser Gimp ou autre comme un pro, alors j'essaye de m'amuser avec les dernières propriétés CSS implémentées dans Firefox 3.1 qui arrive.

Lire la suite...

dimanche, novembre 23 2008

La documentation de Jelix en anglais

Enfin ! La version anglaise du manuel de Jelix 1.0 est terminée. Un gros merci à Bibo pour l'énorme coup de main. Il y a certainement encore des coquilles, des phrases mal tournées (mon anglais n'est pas infaillible...) mais ça s'améliorera avec le temps. Toute aide est d'ailleurs la bienvenue : c'est un wiki ;-)

Comme la version française, le manuel est disponible en PDF. Et comme la version française, il y a deux version du PDF : la première générée à chaque sortie d'une nouvelle version mineure de Jelix 1.0, et une autre générée toutes les nuits, directement à partir du contenu du wiki.

On a aussi travaillé sur le manuel de Jelix 1.1. L'édition française est presque complète, tandis que la rédaction de l'édition anglaise vient tout juste de débuter.

À propos de Jelix 1.1, il reste encore un ticket avant la publication de la première "Release Candidate". C'est donc pour très très bientôt ;-)

Prochainement aussi : Jelix 1.0.7 et jTpl standalone 1.0. J'ai pas mal amélioré cette version standalone du moteur de template de Jelix, avec une configuration plus simple et surtout plus souple, et bien sûr les quelques nouvelles fonctionnalités que l'on a dans jtpl de Jelix 1.1 ;-)

mardi, septembre 30 2008

BlueGriffon™

This is now official, the successor to Nvu is BlueGriffon™.

Daniel has already done a lot of work on it, but we are not ready yet to release a first public version. However, you can take a look at our svn repository for the source code.

Of course, I will work on this project :

  • I will develop some patches on Gecko to improve the editor. I began with a big revamp of the serializer, so XHTML will be much better serialized
  • I will work on the web front-end : software update, web tools, etc..

lundi, septembre 29 2008

Jelix 1.1 beta est dispo

Ce week-end, j'ai sorti une beta de Jelix 1.1. Plein de nouveautés au programme, surtout dans le système de formulaire jForms, qui gagne en souplesse, et en fonctionnalités :

  • de nouveaux contrôles : captcha, champ caché, groupe, choix avancé, éditeur html...
  • modification dynamique du formulaire : ajout/suppression et activation/désactivation de contrôles
  • possibilité de connaître les valeurs modifiées
  • intégration de jQuery
  • générateurs sous formes de plugins, vous permettant de choisir plus facilement le format de sortie, ou la manière dont sont générés les champs du formulaire

Il y a également :

  • une nouvelle version du système de droit, jAcl2, plus facile à utiliser et à configurer. Un module est fournie pour gérer les droits.
  • le support SOAP
  • la nouvelle réponse htmlfragment pour les réponses ajax html
  • le nouveau moteur d'url basic_significant
  • des nouveaux plugins pour le moteur de template
  • les nouvelles classes utilitaires jIniModifier, jHttp, jMessage, jDuration (pour jDateTime)...

La doc en français est presque complète, et est dispo en téléchargement en pdf comme d'habitude.

La venu de cette beta vient un peu tard, c'est pourquoi je pense qu'il n'y aura pas de beta2 et qu'on passera directement à une RC, Les plus gros trucs prévus pour la beta2 seront probablement repoussés à une version 1.2. Mais vu le rythme du développement, vu que le trunk, utilisé par de nombreuses personnes, est particulièrement stable dans le temps, je pense que l'on va se permettre d'avoir un cycle de sortie plus court. (max 6 mois par exemple, on verra).

jeudi, juillet 24 2008

Sortie de Jelix 1.0.5, futur de la 1.1 et projet de bug tracker

On essaie d'être le plus régulier possible dans la sortie des versions de maintenance, donc voici Jelix 1.0.5 qui corrige des bugs mineurs. La version 1.0.6 sortira dans deux mois. Si il y a de nouveaux bugs bien sûr :-)

Après un calme assez plat dans les développements de la version 1.1, à cause de la préparation des RMLL, et d'autres occupations qui ont accaparé mon temps, l'activité a repris ces derniers jours, avec encore des nouveautés dans jForms, comme la possibilité de grouper des contrôles, une API plus complète sur les contrôles, et un nouveau contrôle <choice> pour avoir une liste de choix contenant des contrôles, comme dans un bug tracker :

  <choice ref="task">
     <label>Task status</label>
     <item value="new">
         <label>New</label>
     </item>
     <item value="assigned">
         <label>Assigned</label>
         <input ref="assignee" required="true">
             <label>assignee name</label>
         </input>
     </item>
     <item value="closed">
         <label>Closed</label>
         <menulist ref="task-done">
             <label>Status</label>
             <item value="done">Done</item>
             <item value="cancelled">Cancelled</item>
             <item value="later">Later</item>
         </menulist>
     </item>
  </choice>

J'ai encore quelques améliorations à faire, pour rendre jForms plus maléable (rajouter des champs de saisie à la volée par exemple), et après ça, probablement qu'une version beta sortira.

Au passage, si j'ai développé cette balise <choice> avec cet exemple d'utilisation pour un bug tracker, ce n'est pas par hasard. Souvenez vous de mon coup de gueule sur Trac, et des résultats de mes recherches d'un nouveau bug tracker, qui sont finalement restées vaines. Au bout du compte, j'avais décidé à l'époque d'en créer un nouveau, je me suis lancé donc dans ce développement.

Cela m'a permis d'utiliser pleinement Jelix, et de découvrir sa force (2 heures seulement pour faire la gestion complete des reports comme dans trac !), mais aussi certaines faiblesses. D'où la création d'un nouveau système de gestion de droits, jAcl2, avec son module d'admin, mais aussi des améliorations dans jForms, dont celles que je viens d'évoquer. Et tout ça est dans le trunk de jelix maintenant. Ces développements ont bien sûr ralenti ceux de mon projet de bug tracker, mais maintenant que je vais presque avoir tout ce qu'il faut, je vais pouvoir me relancer à fond dans ce projet.

Alors bien sûr, je sais que c'est un peu la mode en ce moment de faire un bug tracker en PHP (à cause entre autre je pense du concours sur developpez.com). Mais je me suis lancé dans ce projet bien avant cette mode ;-). Pour le moment, il n'est pas vraiment utilisable, mais ça va le devenir :-) Enjoy !.

vendredi, juin 20 2008

Un nouveau depôt pour jelix

Le projet Jelix était initialement hébergé sur la plateforme developer.berlios.de. Mais petit à petit, à cause d'une qualité moyenne de l'hébergement, et parce que Nicolas me prête un peu de sa dedibox, j'ai migré certaines choses de berlios vers le serveur jelix.org. Ça d'abord été le site principal (berlios trop chargé), puis abandon du bugtracker (trop simpliste) après installation d'un trac sur http://developer.jelix.org.

Je gardais toutefois le dépôt subversion sur berlios, par flemme de migrer d'abord, mais ensuite parce que ça animait les stats d'activité du projet, donnant alors en principe une certaine visibilité au projet. Mais les problèmes récurrents d'accès aux dépôts subversions ces dernières semaines m'ont fait prendre la décision de migrer, d'autant plus que ces stats n'ont finalement rien apporté en 2 ans.

Bref donc, à coup de svndump et svn load, le dépôt est maintenant sur svn.jelix.org. On a donc maintenant un accès plus rapide, et plus fiable normalement :-).

Les fichiers en téléchargement et les mailing lists restent par contre sur berlios pour le moment.

Je vais aussi certainement ouvrir en partie le dépôt subversion des fichiers des sites *.jelix.org[1] , en espérant avoir quelques contributeurs qui m'aideront à les faire évoluer. Il y a de plus en plus de chose à faire dessus (notamment l'intégration d'un site de "snippets" codé avec Jelix qui ouvrira dans les prochaines semaines), mais mon temps disponible, lui, ne s'allonge pas. Si au passage il y a des volontaires...

Notes

[1] j'ai du nettoyage à faire d'abord dans ce dépôt, comme cacher les fichiers sensibles, mettre à jour les cartouches de licence sur les trucs "fait maison" etc

mardi, juin 3 2008

Jelix 1.0.4 et un article sur Linux+ DVD

On continue avec les sorties régulières de versions de maintenance de Jelix 1.0. Hier donc c'était la sortie de Jelix 1.0.4 qui corrige quelques bugs mineurs. Nous continuons à suivre une politique stricte sur les versions :

  • Les versions mineures en 1.0.x ne corrigent que des bugs, et n'apporte que des "micro" améliorations, pour éviter d'avoir des regressions ou des nouveaux bugs. La stabilité avant tout.
  • Les versions intermédiaires en 1.x apporteront des nouveautés, voir quelques APIs cassées mais seulement sur des composants "périphériques" : on ne modifie pas l'API du coeur du framework (contrôleurs, vues etc...) tout au plus peut-on se permettre de rajouter des méthodes et propriétés ou nouveaux objets dans le coeur. Avec bien sûr son lot de nouveaux composants et d'évolutions sur les composants existants.
  • Les version majeures : on se permettra de tout casser si il le faut. Je pense qu'une version 2.0 sera envisagée pour la sortie de PHP 6, profitant des évolutions de ce dernier (et sera donc incompatible avec PHP5). Mais il n'y a rien d'arreté pour le moment, Jelix fonctionne bien comme il est :-).

La sortie de cette version 1.0.4 coïncide avec la sortie de l'article de Bastien (contributeur au projet) dans le numéro spécial de Linux+ DVD : "Développer efficacement avec Jelix".

vendredi, mai 16 2008

Avancées sur la documentation de Jelix

La documentation sur un outil de développement comme un framework est souvent un problème. D'une part parce que, bien souvent, le développeur n'aime pas écrire de la doc, mais aussi parce que soit la rédaction de la documentation n'est pas aisée, soit elle n'est pas disponible dans un format autonome et imprimable.

Lire la suite...

lundi, avril 7 2008

Jelix 1.0.3 et cie

Hier j'ai sorti la version 1.0.3 de Jelix, avec son lot de petits bugs corrigés, mais aussi quelques améliorations, dont l'apparition d'une page de démarrage lorsque l'on crée une application (voir le mini tutoriel mis à jour pour l'occasion). Cette page n'affiche pas qu'un message de bienvenu, mais fait aussi un diagnostic de la configuration et de l'installation (comme la configuration de PHP), et préviens donc si il y a des choses qui risquent de gêner le bon fonctionnement de Jelix.

À part ça, ça avance un peu dans la future version 1.1. Les principales nouveautés que j'ai ajouté dernièrement, ce sont :

  • les évolutions dans jForms, qui permettent je pense de commencer à montrer le potentiel de ce système de formulaire, dont :
    • le support de la balise <htmleditor>. Une simple balise, et vous avez un éditeur HTML wysiwyg dans votre formulaire. Actuellement, j'ai fait le choix que ce soit Wymeditor le moteur de cet éditeur, mais si vous en voulez un autre, il n'y a pas de souci. Quelques lignes dans le fichier de configuration de jelix et tout votre site utilise fckeditor ou tinymce ou ce que vous voulez. Voir la documentation sur la balise htmleditor. Bien sûr, coté serveur, jForms nettoie le HTML de manière à éviter les problèmes de sécurité comme XSS et cie.
    • le support de la balise <captcha>. Là encore, pour avoir un captcha de type "test de turing" (les captchas de type image viendront plus tard), il suffit juste d'ajouter cette balise et jForms s'occupe du reste (choix de la question, génération du champs de saisie, vérification coté serveur de la réponse etc).
  • jAcl2, un nouveau système de gestion de droits, qui s'inspire de jAcl, mais en plus simple.

Le développement de Jelix 1.1 ne va pas aussi vite que je le voudrais (en tout cas, en ce qui me concerne, car il y a pleins de nouveautés qui vont débarquer grâce aux contributeurs ;-) ). En effet, je bosse aussi sur des petits projets annexes comme le module jcommunity qui apporte tout ce qu'il faut sur un site pour que les gens puissent s'inscrire, s'identifier, avec gestion des mots de passe perdu, gestion de leur profils etc. Et puis je travaille aussi sur un autre projet perso (basé sur jelix bien sûr) mais je vous en dirais plus plus tard ;-).

jeudi, mars 20 2008

Peer-review et avancées dans Jelix

Quelques nouvelles de Jelix. Ce n'est pas parce que j'en parle moins en ce moment sur mon blog, que ça n'avance pas :-)

Lire la suite...

mercredi, mars 5 2008

Un exemple simple d'utilisation de jForms

J'ai écrit[1] un petit tutoriel qui montre un exemple simple sur l'utilisation de jForms, le système de formulaire de Jelix. J'ai repris le même exemple de formulaire que dans ce récent post sur un exemple simple d'utilisation de Zend_Form

Notes

[1] relu par des contributeurs, merci à eux

- page 2 de 9 -