janvier 2010

Archives

Entries list

jeudi 14 janvier 2010

Tester Firefox avec un profil kleenex

Il est possible de tester (sous Linux) Firefox avec un profil temporaire sans avoir à en créer un depuis le gestionnaire de profils puis avoir à faire du nettoyage. C'est intéressant par exemple si on veut rapidement tester une régression et qu'on veut être sûr que ce n'est pas lié à un problème de profil, ou bien si on a un profil très personnalisé (genre plein de modifications dans about:config) et qu'on ne veut pas les réinitialiser juste pour un test.

Pour cela, il faut lancer Firefox en ligne de commande et utiliser le paramètre -Profile qui pointe vers un dossier vide existant situé où vous voulez sur le disque.

ex:

firefox -Profile /home/pascal/temp/profile

Voici un exemple de fichier bash qui vous permettra de lancer un firefox de développement avec un profil temporaire :

#!/bin/bash
# chemin du profil temporaire
target=${HOME}'/tempmoz/'
# chemin de Firefox
fx=${HOME}'/applis/Firefox-Trunk/firefox'
echo "== Lancement de Firefox dans un profil temporaire =="
mkdir $target
$fx -Profile $target --no-remote
echo "Effacement du profil temporaire à la fermeture de Firefox"
rm -rf $target
echo "Profil temporaire effacé"

L'option --no-remote vous permettra d'ouvrir ce Firefox en parallèle d'un autre Firefox déjà ouvert, votre Firefox dans une version stable avec votre profil habituel par exemple.

samedi 9 janvier 2010

Retour sur mes bugs en cours + mes 2 nouveaux bugs de début janvier

Juste avant la nouvelle année,  je bloguais sur les bugs que j'avais rapportés en décembre concernant Firefox et j'apportais quelques réflexion sur la participation des utilisateurs Linux aux projets libres qu'ils utilisent et sur le bêta-test en général (Bêta-test Firefox: mes bugs de décembre).

Quel est donc le statut de ces bugs aujourd'hui ?

  • [résolu] Bug 532721 - CSS Gradient backgrounds are not repainted when DOM is changed
  • [résolu] Bug 531289 - Firefox doesn't obey system dpi settings anymore
  • [résolu] Bug 536631 - Firefox no longer detects rss feed
  • [résolu] Bug 536843 - Flash plugin has display problems on Firefox Linux Trunk and 3.6 builds, regression
  • [en attente] Bug 534767 - New Drag and Drop JS API does not work with Jetpack installed

Les quatre bugs Linux ont été résolus et n'affecteront donc ni Firefox 3.6 ni le futur 3.7. Le dernier bug n'affecte pas le navigateur directement mais est très probablement un bug Jetpack (qui en est en version 0.7), ça ne bloque donc pas une sortie logicielle.

Je suis heureux d'avoir pu contribuer à la qualité de la version Linux de Firefox juste par ce simple bêta-test de décembre, la rapidité de réponse des développeurs a été très impressionnante, un grand merci à eux !

La bonne nouvelle c'est que je n'ai pas trouvé d'autres régressions, j'ai tout de même rapporté deux autres petits bugs mineurs, l'un est un bug d'interface Gnome et l'autre un léger bug de rendu:

  • Bug 538319 -  white line around search and url fields that disappears if you hover the field with the mouse
  • Bug 538383 -  -moz-box-shadow does not follow rounded borders correctly defined by -moz-border-radius

Autre bonne nouvelle, des gens ont commenté sur mon billet précédent pour rapporter leurs propres problèmes et j'ai pu inciter l'un deux à ouvrir son premier bug ! (  Bug 536996 -  nsISound is broken (Linux)  ) Ce bug est activement travaillé et a déjà 37 commentaires. Un grand merci également donc à Moktoipas pour avoir pris la peine de rapporter son bug et d'y adjoindre un testcase.

Quelle conclusion tirer de tout cela ? :

  • Si on veut que la qualité de Firefox sous Linux soit bonne, il faut rapporter les bugs dès qu'on les voit ! Je suis  surpris que plusieurs personnes m'aient dit après coup qu'ils avaient aussi constaté le bug avec Flash ainsi que celui des gradients mais qu'ils n'avaient pas vu l'intérêt de signaler la régression. "C'est tellement gros que ça sera rapporté" pour citer un ami dont je tairai le nom :) Le problème c'est que si tout le monde pense que le voisin rapportera le bug pour lui, en fin de compte personne ne rapporte rien. C'est particulièrement important sous Linux, nous sommes déjà à la base peu nombreux mais en plus nous ne sommes qu'une poignée à utiliser des versions en développement, il faut absolument que l'on soit réactifs sur les régressions !
  • Nous nous trouvons dans une situation paradoxale.  Le nombre de bêta-testeurs sous Windows devient absolument gigantesque (en époque de Release Candidate on approche du million de bêta-testeurs sous Windows) et en plus ces gens sont enthousiastes et ravis que nous les invitions à participer à du logiciel libre (ce qui est une excellente nouvelle pour le libre à mon avis). Parallèlement à cela, nous avons beaucoup de mal à avoir des bêta testeurs sous Linux en grande partie parce que nos canaux de communication habituels sont remplacés par ceux de la distro lors de l'empaquetage. On a incité nos utilisateurs à bêta tester sur la page de démarrage, les notes de version, nos pages de mise à jour ont des sondages trimestriels... Hors les distros lors de la personnalisation de Firefox remplacent les liens vers ces pages par des pages de promo de la distro. Il nous faut donc réfléchir à de nouveaux canaux de communication vers le monde Linux puisque ceux que nous avions intégrés dans Firefox sont supprimés pour les versions empaquetées. La création du planète Mozilla francophone et mes billets maintenant syndiqués sur planet-libre.org sont ma petite contribution à cet effort. J'ai d'autres idées à ce sujet mais je vais les laisser mûrir avant d'en parler :)

dimanche 3 janvier 2010

Nouveau thème pour mon blog

Un nouveau thème pour mon blog, entièrement fait main, dans les tons sombres pour changer et beaucoup moins encombré que les thèmes précédents que j'utilisais, en plus, il s'affiche même correctement dans IE6 sans que j'ai rien eu à faire !

samedi 2 janvier 2010

CSS Gradients dans Webkit et Gecko

Je me suis pas mal amusé ces derniers temps avec les nouvelles possibilité des CSS (angles arrondis, ombres de boîtes et de texte, dégradés de couleur) pour voir ce qu'il était possible de faire avec ces nouveaux outils. L'intérêt de ces règles CSS c'est qu'elles permettent très souvent d'améliorer facilement un site web existant à peu de frais sans pour autant casser le site pour des navigateurs plus anciens (et par anciens navigateurs, j'inclus Firefox 3, Opera 10, Safari 3, les versions de Chrome vieilles de plus de 6 mois... ;) )

Ces règles sont parmi les règles CSS les plus intéressantes car le dégradé est un effet courant sur le web et les faire par css permettra de remplacer de coûteuses requêtes http pour des images. Sur la page des labs du projet Kompozer, j'ai combiné plusieurs de ces effets pour voir ce qu'on pourrait faire, notez par exemple le titre KompoZer Labs qui ne contient aucune image mais est une combinaison de dégradé, arrondis et d'ombrages sur une balise <h1>.

Pour ceux qui n'auraient pas un navigateur très récent, voici une capture d'écran montrant cette page dans les dernières versions de Firefox Trunk et Chromium sous Linux :

On peut noter que Chromium bien que supportant les dégradés CSS depuis plus longtemps que Mozilla a des bugs de rendus assez importants avec un très fort effet d'escalier dans le dégradé d'arrière-plan et beaucoup de mal avec les dégradés progressifs sur le h1, ça donne vraiment l'impression que le dégradé est calculé sur 256 couleurs seulement. Ça m'a un peu surpris car il me semblait que Webkit malgré un support imparfait des dégradés ferait mieux que gecko puisqu'ils avaient implémenté le draft CSS bien avant nous (ce qui explique leur syntaxe CSS assez compliquée pour le moment, elle a été simplifiée depuis et c'est ce que nous utilisons). En plus Paul me disait qu'il était sûr que sous Windows il n'y avait pas d'effet d'escalier sous Webkit,  j'ai donc lancé Virtualbox pour vérifier et voici la capture d'écran avec Safari 4, Chrome 3 et Firefox 3.6b5 :

Là on peut voir en fait que Webkit sait bien gérer les dégradés mais que c'est dans le fork Chrome de leur moteur de rendu qu'il y a un problème puisque Safari a un rendu correct. On notera aussi sur la capture de Chromium sous Ubuntu plus haut que le support des bords arrondis avec ombrage qui les suit devient enfin correct (il y a deux mois c'était pété de chez pété). Le rendu des polices avec ombrage diffère aussi entre Safari et Chrome, la version Safari est strictement identique à celle de Gecko alors que Chrome a un rendu trop léger à mon avis, on voit à peine les passages en gras.

À surveiller donc dans les mois à venir, ça pose la question du support correct des technologies dans les navigateurs, je me demande aussi comment se font les arbitrages dans le projet Webkit qui est maintenant bicéphale, le gros du développement du moteur de rendu étant assuré par Apple alors que Google a le gros des utilisateurs Webkit avec Chrome.

My 2009 yearly report


I am not great at blogging in English and communicating about my work so I thought that publishing my yearly report would compensate that ;)

All in all, it has been a busy year, nobody in the localization drivers team and among our localization teams had time to get bored, lots of product releases, lots of pages, lots of travel and events too. I am listing below what I have been directly leading and/or participating in, not some other projects where I was just giving a minor help (usually to my colleagues Stas and Delphine).

Products:

  • 2 major releases: Firefox 3.5 and Thunderbird 3 (with a new multilingual Mozilla Messaging website)
  • 26 other releases (maintenance, beta and RC releases)

Mozilla Europe website(s):

  • 3 new locales: Serbian, Bulgarian, Swedish, our geographic coverage of Europe is now almost complete
  • New content for 3.5 release, minor releases and many side projects
  • major cleanups of content and code for easier maintenance (especially maintenance releases) and more features (html5 support, per locale menu navigation, visits now with referrer hints for better locale detection...)
  • Site now sharing same metrics application as other mozilla sites
  • More per country news items than previous years (events, new community sites, community meetings...)
  • 46 blog posts written by our European community on blogs.mozilla-europe.org
  • Our events management web application was used for 10 European events (I created it back in summer 2008)

Mozilla.com website

  • We now have a localized landing page for our 74 locales on top of up to date in-product pages
  • Geolocation page for all locales
  • 3.0 and 3.5 major updates offered for all locales
  • Localized beta download pages to incitate beta-testing of non-English versions of Firefox
  • Better code for our localized pages (better right-to-left, language switching, simpler templates...)
  • Whatsnew/Firstun pages now warn the user in his language if his Flash plugin is outdated  (for better security and stability)
  • Lots of content, css, graphics updates all along the year, everywhere
  • Firefox 3.6 in-product pages (firstrun, whatsnew, major update) localization underway, pluginscheck page localization almost technically ready for localization
  • Fennec pages being localized for 1.0 final

Marketing Sites made multilingual

Mozilla Education:

  • Gave a lecture at the Madrid university about opensource, the mozilla project and community management.
  • MMTC Madrid one week sprint in July, gave Mozilla classes with Paul Rouget and Vivien Nicolas to 30 students (evaluation TBD)
  • Organized CoMeTe project at Evry university, France,  in October with Fabien Cazenave and Laurent Jouanneau as teachers

Community work

  • Found new localizers for a dozain locales, helped some creating blogs, community sites and local events
  • Many community meetings, IRC or IRL
  • Participated in Firefox 3.5 party in Madrid
  • I am since May on twitter, communicating about my work and Mozilla in Europe
  • Organized a theming contest in collaboration with the Dotclear project for our community blog, won by Marie Alhomme
  • Created with Julia a Mozilla Planet for French Speakers
  • Lots of Web l10n QA with Delphine plus some personal QA work on 3.6 looking for Linux specific Firefox bugs
  • Went to 21 events (7 of them internal Mozilla events) like Fosdem, MozCamps Chile + Prague, Ubuntu parties, Solutions Linux, W3C event, Firefox 5 year anniversary, Firefox 3.5 party Madrid, JDLL, Geneva Community meetup... Lots of time abroad and travelling.
  • Blogging in French about the Mozilla project and its place in the FLOSS ecosystem, current focus on Mozilla QA and how to get involved in the project.

Other

  • Some documentation work (mostly on QA of localized pages)
  • Many updates to the webdashboard
  • Helped Delphine setting up Womoz website and general advices on community building
  • Several press interviews for Spain as well as conferences given about the Mozilla project
  • Started this week with Stas and Patrick the localization work needed for the Browser Choice Screen in Windows for Europe
  • Lots of technical self teaching while building projects, I even did my first Jetpack extension this week, Yay!
  • A new expresso machine :)

Happy new year 2010 to all mozillians and FOSS lovers in the world :)