# Yarn 3 

par Valentin Fayard 

Cette nouvelle version majeure s’apparente plus à une version 2.5

Profitons en pour rappeler que Yarn 2 est autant éloigné de Yarn 1 que de npm ou un autre gestionnaire de paquet node. Notamment, de par la nouvelle stratégie d’installation des dépendances Node nommée Plug’n’Play qui génère un seul fichier .pnp.js au lieu du dossier node_modules habituel, les dépendances sont physiquement stockées dans le cache Yarn.

Avantages annoncés de la stratégie : 

  • Yarn n’a besoin de générer qu’un seul fichier texte (au lieu de potentiellement des dizaines de milliers) lors de l’installation (donc moins d’opération disque lors des installations).
  • Les installations sont plus stables et fiables en raison des opérations sur le système de fichiers réduites.
  • Optimisation parfaite de l’arbre de dépendance (alias hissage parfait) et instanciations de packages prévisibles.
  • Le fichier .pnp.js généré peut être versionné pour parvenir à la philosophie Zero-Installs  (plus besoin de lancer de yarn install) 
  • Démarrage plus rapide de l’application : la résolution de Node n’a pas à parcourir toute la hiérarchie du système de fichiers

Dans cette version 3, nous sommes sur une continuité dans cette philosophie avec tout de même :

  • Le fichier .pnp.js est désormais un fichier .pnp.cjs
  • Migration facilitée pour les projets utilisant Yarn 1
  • Des changement de rupture
  • Amélioration des performances notamment pour les gros projetsSi vous êtes sous Yarn 2 vous pouvez donc faire la mise à jour facilement. Pour les gens encore sous Yarn 1, il va falloir tester.

Vous trouverez une explication de tout ça ici et l’annonce par .

# Doctolib – Journal de bord du 12 juillet 2021 

par Pierre-Yves Dirand

Comme souvent, la médiatisation d’un site / service en ligne entraîne dans les minutes qui suivent, et potentiellement pendant plusieurs heures, une forte augmentation de sa fréquentation.
Ces montées de charge soudaines peuvent représenter de véritables défis techniques.
La soirée du 12 juillet dernier, date de l’allocution présidentielle sur les nouvelles mesures liées à la vaccination, a mis à rude épreuve l’infrastructure et les équipes de Doctolib.
Occupant le poste de Principal Engineer, Nicolas Martignole en a rédigé le journal de bord, retraçant les événements d’une soirée mouvementée durant laquelle la cohésion, l’entraide et le sang-froid se sont révélés indispensables.

# React – Conseils pour la séparation des composants  

par Guillaume Poittevin

Quand on conçoit une application React, il arrive souvent qu’on se pose la question de savoir si l’on doit séparer un composant en sous composants.

João Forja nous présente sa méthode, quelques conseils issus de «Designing Software for Ease of Extension and Contraction» écrit en 1979 par David Parnas, c’est à retrouver ici.

Kent C. Dodds avait écrit un article sur ce sujet en 2019, que vous pouvez retrouver ici.