44 liens privés
Tout est dans le titre
Node a désormais un testrunner intégré - l'auteur en a donc profité pour se débarrasser de quelques dépendances superflues comme Mocha, Chai et nyc. Attention, il insiste sur le fait que ces dépendances peuvent être utiles à d'autres
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Une astuce top : utiliser le "type de formulaire Symfony" comme DTO (au lieu d'utiliser un DTO externe comme "réceptacle des données de formulaire"). Bonus : ça permet aussi d'utiliser le type de formulaire comme paramètre d'entrée d'une commande
Au lieu de lancer XDEBUG_SESSION=1 XDEBUG_MODE=debug XDEBUG_ACTIVATED=1 php bin/console my:command --an-option --an argument
on lance bin/console my:command --an-option --an argument -x
Une explication de ce que sont les "merge commits" - voir la commande git show --remerge-diff
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Dans ce 2e article (sur 3), l'auteur donne une astuce pour préparer le navigateur aux animations : utiliser la règle CSS will-change
Tout est dans le titre
Canonical a décidé qu'OpenSSH utilisera le socket systemd... donc le port d'écoute ne sera plus configuré dans /etc/ssh/sshd_config
L'auteur propose l'utilisation d'un Listener pour éteindre un worker selon le type d'exception levée.
Tout est dans le titre - ça peut être pratique quand on a plusieurs instances de la même interface à injecter. L'exemple choisi ici est celui du cache : cache via le système de fichiers, cache via Redis, etc.
L'auteur démontre un effet de bord potentiel du mode "mémoire partagée" de Swoole / RoadRunner / FrankenPHP... et comment le corriger
Tout est dans le titre
Ça permet de prendre le "bon" élément
<button data-something="truc">
<span>A label</span>
<svg />
</button>
utilisez
document.querySelector('button').addEventListener(evt => { console.log(evt.currentTarget.getAttribute('data-something')); });
plutôt que
document.querySelector('button').addEventListener(evt => { console.log(evt.target.getAttribute('data-something')); });
si je clique sur le span, ça permet bien de récupérer le data-something du bouton