Pensée cursive

Extrait du code de Dotclear, juin 2021
Extrait du code de Dotclear, avec la police Zapfino

Toujours à la recherche du déclic qui justifierait l’appellation 2.19 de la prochaine version de Dotclear, car même si j’ai pas mal revu de choses, côté qualité de code — en particulier en mettant en œuvre un système d’analyse de code avec PHPStan — il n’y a rien qui soit suffisamment révolutionnaire pour ça…

Alors changement de paradigme.

On dira qu’à partir de maintenant on ne révolutionnera pas cette application, sans s’empêcher toutefois d’améliorer autant que possible son code et si possible le moderniser pour tenir compte de l’âge de certaines technos utilisées et des nouvelles qui intègrent petit à petit nos navigateurs et serveurs respectifs. Exemple représentatif : on utilisera dorénavant le localStorage du navigateur plutôt qu’un cookie pour gérer la fonctionnalité « Se souvenir de moi » des formulaires de commentaire.

J’ai eu un temps l’idée de me passer de jQuery, mais en fait cette bibliothèque a bien vieilli, est relativement robuste, et fait le job requis ; par contre les différents satellites (aka les plugins jQuery) sont repris, modernisés, voire jetés à la poubelle. Exemple représentatif : exit le vieux code qui gérait (mal) l’affichage de la robustesse d’un mot de passe et remplacement par quelque chose de plus intégré qui n’impose pas, côté PHP, de prévoir quelque chose de plus qu’une simple classe CSS sur le ou les champs en question.

Côté Clearbricks j’ai ajouté un clone (forms::…) à la classe (form::…) qui gère les éléments de formulaire, avec des méthodes plus simples à utiliser — un seul argument avec un tableau contenant les seules options voulues —, et que je mettrais en place dans le code de Dotclear au fur et à mesure. L’ancienne classe restant utilisable[1].

Etc, etc

Au passage, et ça par contre justifie en soi le passage à la 2.19, certaines fonctions et méthodes marquées obsolètes depuis pas mal de temps ont été supprimées ; la 2.19 risque, peut-être, de casser temporairement des choses, si vous utilisez des plugins ou des thèmes (comportant du code PHP) pas tenus à jour.

Exit aussi PHP 5, on passe à PHP 7.3, version quasiment obsolète d’ailleurs — mais il y a toujours quelques années de retard entre la fin du support d’une version et son abandon sur nos serveurs, donc … — et compatibilité assurée avec PHP 8.

J’ai aussi pensé un temps à intégrer dans la version à venir le plugin formatting-markdown, qui comme son nom l’indique permet d’ajouter le support de cette syntaxe dans l’éditeur historique de Dotclear. Cependant j’ai rejeté l’idée puisque ce plugin dépend d’un dépôt externe et que je préfère éviter ce genre de contrainte dans la distribution officielle de Dotclear. Il est possible que je change d’avis d’ici la prochaine release, on verra bien…

Si vous jetez un œil à la liste des tickets ouverts pour la 2.19, vous verrez qu’il n’en reste pas beaucoup, ce qui milite pour une sortie cet été, possiblement du côté du 13 août, pour le 18e anniversaire de Dotclear.

Reste toutefois un énorme problème, cette prochaine version 2.19 n’a toujours pas de nom !

Note

[1] Note à moi-même : mettre à jour la doc Doxygen pour en tenir compte.

Ajouter un commentaire

Les champs suivis d'un * sont obligatoires

Les commentaires peuvent être formatés en utilisant la syntaxe Markdown Extra.

Ajouter un rétrolien

URL de rétrolien : https://open-time.net/trackback/15003

Haut de page