Non-fonctionnement commande lametric avec Jeedom 4.4 et PHP8

Petit bug visible depuis passage à jeedom 4.4 et PHP 8
Lors d’un lancement de commande pour afficher quelque chose sur lametric time, le log donne le message d’erreur suivant :
"count(): Argument #1 ($value) must be of type Countable|array, true given"

Après investigation, l’erreur est à la ligne 80 du fichier lametric.class.php, une parenthèse mal placée… :

if(count($messages > 1)){
ald
if(count($messages) > 1){

PHP8 étant moins tolérant, ça ne passe plus.
J’ai fait la modif sur mon jeedom en attendant une mise à jour du plugin.

1 « J'aime »

La 4.4 n’installe pas PHP 8 donc pourquoi tu l’utilises ?

Sinon as sur que cela passé avant, juste Jeedom 4.4 qui remonte toutes les erreurs dans les logs désormais.

Oui, avant la commande fonctionnait, et plus ensuite. C’est pour ça que je me suis intéressé à la ligne dans le log.

Pour le reste, je trouve quand même triste de se faire rembarrer en posant des solutions sur ce forum ‹ communautaire ›.

1 « J'aime »

Loin de moi la volonté de te « rembarrer », j’utilise debian 12 et donc php8 sur une VM de test, mais ce nest pas la solution conseillée pour le moment par Jeedom, Je me demande juste ce qui ta poussé à y passer.

Ce qui est sûr c’est que tu a corrigé un bug car jusqu’à présent avec ceci :

if(count($messages > 1)){

Peux importe le résultat de count les actions présentes dans le IF étaient exécutées, PHP8 n’est pas moins tolérant, au moins il fonctionne correctement et signale l’erreur.

1 « J'aime »