Erreur webpack / encore chunk.sortModules()

J’utilise encore pour mes projets symfony et j’ai rencontré l’erreur ci-dessous :

node_modules\@symfony\webpack-encore\node_modules\extract-text-webpack-plugin\dist\index.js:188
 chunk.sortModules();
 ^

TypeError: chunk.sortModules is not a function

Il faut ajouter webpack en dépendence du projet

npm install --save webpack

Mettre à jour nodejs et npm (ubuntu)

Pour mettre à jour nodejs et npm, il faut commencer par vider le cache

sudo npm cache clean -f

Puis installer n pour gérer les versions

sudo npm install -g n

Ensuite via n, il faut récupérer la version voulue

sudo n stable

Enfin, il faut modifier les liens vers les commandes pour utiliser ces versions

ln -sf /usr/local/n/versions/node/9.4.0/bin/node /usr/bin/nodejs
ln -sf /usr/local/n/versions/node/9.4.0/bin/npm /usr/bin/npm

Fake webcam dans le navigateur

Si vous avez besoin de simuler une webcam dans un navigateur, il existe deux solutions :

Pour firefox, il faut modifier la configuration avec « about:config » puis modifier le paramétre

profile.setPreference('media.navigator.streams.fake', true);

Pour chrome, c’est différent, il faut le lancer en ligne de commande et ajouter l’option

chromium-browser --use-fake-device-for-media-stream

Symfony installer phpunit pour réaliser ces tests unitaires

Pour ajouter phpunit sur un projet symfony, il faut utiliser la commande composer suivante :



composer require --dev phpunit/phpunit ^6.5

Il faudra ensuite coder les tests dans le répertoire Tests du projet, généralement on essaie de garder la même arborescence que les autres fichiers, c’est à dire qu’on retrouvera un dossier Controller dans le dossier test et par exemple un fichier DefaultControllerTest.php.

Pour lancer les tests, il faut utiliser la commande suivante :

php phpunit-6.5.phar -c phpunit.xml.dist

Le chemin du fichier de configuration peut varier selon la version de symfony, il peut tantôt être dans le dossier app ou à la racine du projet.

 

Symfony lancement des tests unitaires Error Too many connections

Au lancement des tests unitaires avec phpunit, sur certains tests apparaient le message d’erreur suivant :

SQLSTATE[08004] [1040] Too many connections

Pour éviter ce problème, il faut modifier le fichier de configuration de phpunit (sur symfony phpunit.xml.dist)

Dans la balise <phpunit> il faut ajouter l’attribut

processIsolation = "true"

Installation du gestionnaire de paquets YARN

Etant utilisateur de bower, lors d’une mise à jour je me suis aperçu que bower était « deprecated » et qu’il fallait utiliser YARN.

Voici les instructions pour installer YARN (sous ubuntu 16.04)

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update && sudo apt-get install yarn
Pour l’installation sous windows, il faut télécharger le fichier msi et cliquer dessus pour lancer l’installation.

Prendre une photo avec une webcam sous linux en commande

Je cherchais une solution pour prendre une photo avec une webcam en ligne de commande, pour cela j’ai utilisé mplayer qui permet de générer une image png.

mplayer -vo png -frames 1 tv://

si un problème se produit, il faut rajouter un lien symbolique

ln -s /dev/video0 /dev/video