Depuis le temps que je suis le projet WebKit, je me suis dit que ce serait intéressant d'en faire un résumé, à la manière de Laurent Jouanneau pour Mozilla. C'est donc le premier billet de la série que j'espère longue et intéressante.
Changements de la semaine
Tout ce qui est mentionné ci-dessous doit normalement fonctionner dans la dernière nightly disponible (35531).
Amélioration du parser CSS (35403)
Toujours une bonne chose d'améliorer le respect des standards. Au menu :
- Si la dernière accolade d'un fichier est oubliée, la règle sera tout de même considérée comme bonne;
- Une règle finissant par "!important fail" ne sera plus considérée comme juste;
- Si une règle @import n'est précédée que de règles @ invalides, elle sera valide;
- Un bloc @media ne sera pas entièrement rejeté s'il y a une erreur avant l'accolade de fermeture;
- D'autres améliorations mineures.
Support des blocs pour les variables (35414)
Le CSS WG travaille (entre autre) sur des variables en CSS. Pour supporter cet effort et permettre de choisir la meilleure syntaxe, des tentatives sont faites dans WebKit.
Cette semaine, ce sont donc le support de blocs en tant que variables. Voyez l'exemple fourni par un test pour mieux comprendre.
Ce sont bien évidemment des tests et ne représente en rien la syntaxe finale. Il y a d'ailleurs d'autres expérimentations en cours, sur l'utilisation du mot-clef var.
Support de console.group (35421)
Commençons d'abord par expliquer que l'inspecteur web (l'équivalent de Firebug en gros) est en cours de refonte. Il n'a quasiment rien à voir avec celui de Safari 3.1. Essayez-le, vous verrez.
L'un des chantiers est de supporter la même Console API que Firebug pour simplifier la vie des développeurs.
Cette semaine, la nouveauté est donc le support de console.group et console.groupEnd. Il est à noter que ce travail a été réalisé par Keishi Hattori, l'un des étudiants participant au GSoC de WebKit.
Support de XMLHttpRequestUpload (35435)
Encore une spécification en chantier et une implémentation de test. Visiblement l'implémentation a plus de détails que la dernière spécification que j'ai pu trouver.
L'idée ? Ajouter des événements permettant de mieux connaître l'état de la requête XHR. Cela permet par exemple de faire des formulaires d'upload avec une barre de progression.
L'exemple joint montre les nouveaux événements et propriétés disponibles.
Possibilité de désactiver des propriétés CSS (35514)
Encore la refonte/amélioration de l'inspecteur. Une fonctionnalité bien utile pour analyser le design de sa page, faire des expérimentations, etc.
Nouvelles de la semaine
Ariya Hidayat s'est amusé à rajouter un aperçu en direct du contenu des onglets dans Arora (un navigateur basé sur QtWebKit).
Voilà pour cette semaine. Évidemment, ce n'est qu'une sélection que j'ai faite. Si vous avez remarqué d'autres changements intéressants, n'hésitez pas à les mentionner. Idem si je me suis trompé dans une explication.