Plaisanterie : non cadre référent de test JavaScript
Facebook avait créé Jest en 2011, dans le cadre de la réécriture de sa fonctionnalité de chat en JavaScript. Il l’avait mis en Open source trois ans plus tard, sous licence MIT. En 2016, un ancien de la maison reprenait la main, avec une équipe dédiée au projet. En 2018 s’y greffait une entité destinée à aider les employés d’autres entreprises à apporter leurs cotisations.
Il y a quelques semaines, J’ai rejoint la fondation OpenJS. Laquelle héberge déjà, entre autres, AMP, Electron, jQuery et Node.js. Le cadre comptaient alors, selon les chiffres officiels, 17 millions de téléchargements par semaine. Airbnb, Amazon, Spotify, Stripe et Twitter font partie de ses utilisateurs. À leur disposition, un large catalogue d’extensions, allant des plug-in pour IDE aux outils de débogage et de rapports.
Flipper : un débogueur Android, iOS et JS
Sur le volet débogage, Meta a dans son escarcelle la plate-forme Flipper. Plate-forme, au sens où cette application Electron repose sur un système de brancher. Notamment pour l’accès aux bases de données, les notifications de crash, la détection des failles mémoire, l’analyse réseau et le développement en bac à sable.
Facebook utilisait auparavant Stetho, une passerelle de débogage Android fondée sur les DevTools Chrome. Avec Flipper (ex-Sonar), publié sous licence MIT en 2018 2018, Flipper, il a élargi sa cible aux apps iOS, React Native et JavaScript.
Docusaurus : des sites web pour l’Open source
Ce générateur de sites web sous licence MIT utilise le langage MDX. Il produit du HTML statique dans lequel on peut embarquer des composants React. Orienté vers les projets Open source, il propulse notamment le site vitrine de Flipper. Ou encore celui de Redwood (cadre Jamstack).
La v2 de Docusaurus est encore en bêta même si elle a atteint la parité fonctionnelle avec la v1. Elle inclut notamment une gestion des versions, la traduction passant par Crowdin et Algolia pour la recherche.
Zstandard : compresseur vite et bien ?
Cet algorithme de compression de type LZ fait l’objet d’une spécification IETF (RFC 8878). Son implémentation de référence, en C, est sous double licence (BSD et GPLv2). Il existe de nombreux portages, dans les principaux langages et dans divers logiciels (7-zip et WinRAR, cURL, Django, wget…).
L’une des particularités de Zstandard est d’utiliser un dictionnaire évolutif (mode « entraînement ») pour optimiser la compression des petits fichiers. Le tableau ci-dessous donne une idée de ses performances. Les données recherchées d’un référence lzbench sur un système Ubuntu 20.04 (noyau 5.11.0.41-generic) doté d’un i7-9700K.
Fresco : le pendentif Android de TIP
Publiée en 2015 (licence MIT), la bibliothèque Fresco s’intègre dans les applications Android. Comme TIP que Twitter utilise sur Android, elle gère le rendu des images, à l’appui de plusieurs niveaux de cache. Au menu, entre autres : prise en charge des vignettes EXIF, des URI multiples, du jpeg progression, de la rotation et du redimensionnement après traitement. Le support des GIF animés et du format WebP est optionnel, sous la forme de modules complémentaires.
Illustration principale © Meta