En 4.1 jusqu’ici pour connaitre le temps de fonctionnement d’un appareil dans la journée de minuit à maintenant en minute j’utilisais :
duration(#info#,1,today)
mais je viens de passer en 4.2 (oui j’ai un train de retard ^^) et je constate que les valeurs renvoyées sont fausse , en fait je ne saurais le garantir mais j’ai l’impression que cette formule me renvois la valeur des 24h dernière heures à la place .
je vais donc être obligé de remplacer cette commande par des
durationBetween(#info#, 1 , Today,Now ) qui me renvois elle la bonne valeurs
Est-ce un comportement normal de la 4.2 ? ou est-ce que c’était m’a 4.1 qui déconnait ? parceque je le jure j’ai vérifié et re-verifié et jusqu’ici duration(#info#,1,today) me renvoyait bien les bons résultats .
Sachant que l’historique est simple … des petits coups de 1 durant peu de temps et qu’il est donc impossible que mon portail soit resté ouvert 471 minutes.
EDIT: je viderais bien toutes les données en cache mais je ne l’ai jamais fait et j’ai un peut peur de perdre des données que je considère importante . Qu’est-ce que je risque vraiment ?
ça m’étonnerai…
Bug remonté au moins depuis avril 2021 ici
Je l’ai encore personnellement rappelé (via le support) il y a peu.
Réponse : « De mémoire on a deja vu ca et c’est corrigé en beta depuis quelques mois. »
lol merci de cette intervention mais sans vouloir casser tes délires, ces 2 fonctions ont plusieurs fois évolué depuis avril 2021 notamment et plus particulièrement en avril 2022 pour duration et en aout 2022 pour durationBetween.
Donc le coup de « c’est pareil depuis 2021 » parait simplement impossible…
Edit : D’ailleurs, je ne l’invente pas, le titre du présent sujet parle bien de changement de comportement !
Quand je parle de changement de comportement je veux dire que je me demandais si c’était un changement comportement voulu .
Mais bref , en tout cas duration bug clairement chez moi , et pas tout le temps dans le même sens , j’ai testé sur une autre commande et au lieu de me donner une réponse erronée supérieure elle à mis une réponse inférieure , égale à zéro en fait si ça peut peut être servir aux dev .
J’ai regardé les 2 fonctions et tenté de comprendre pourquoi ces 2 fonctions ne sont pas « identiques » et je ne comprends pas la raison.
Puisque dans la duration les seules choses qui me semble changer sont :
_endTime , que l’on ne précise pas et qui est now
des subtilités sur le _startTime qui sont gérés par getDatesFromPeriod
Du coup en recréant une fonction « custom » basée sur le début de la duration et le calcul de la durationBetween je retrouve les mêmes (bons) résultats.
Surement quelque chose qui m’échappe parce que j’ai pas regardé ça très longtemps et que je n’ai pas un gros niveau mais … sais-tu pourquoi une telle différences dans le traitement de l’addition de la variable $duration ?
OK mais en l’occurrence on est en 4.3 donc oui il peut potentiellement y avoir des erreurs sur les versions antérieures corrigée sur la dernière version.
Oui je me doute que vous n’allez pas micro-patcher la 4.2 alors que la 4.3 est sortie , mais entre ça et les bugs que je viens d’avoir aujourd’hui avec jmqtt qui ne recevait plus rien de mes appareils (qui gérent mon chauffage … ) que j’ai du ré-intégrer à la mains cette après midi , je suis pas hyper chaud pour passer en 4.3 là de suite …
tampi hein je vais passer tout les duration en durationbetween , mais si une bonne âme passe dans le coin et à le code qui le démange je pense que ça vaut le coup de rappeler que je suis pas le seul .