Test si version béta = version stable

Salut @Bison et merci, je vais aller regarder ça. Par contre pour la doc si tu complètes le fichier info.json avec ces infos jeedom gère tout seul le renvoie vers la doc en fonction de ta version:

	"documentation" : "https://NextDom.github.io/plugin-teleinfo/fr_FR/",
	"documentation_beta" : "https://Noyax.github.io/plugin-teleinfo/fr_FR/",

Salut,

Oui ça c’est pour le bouton documentation qui est au niveau du plugin quand on est sur le Market.

Je parle d’un bouton ajouté directement dans les paramètres du plugin.

ah ok… merci :wink:

j’ai regardé ta fonction isBeta, merci

Salut @Bison , je teste mais en fait ce script fonctionne sur un plugin déjà installé mais là je voudrais le faire fonctionner lors de l’install ou de la mise à jour. Pour mon cas cela ne fonctionne pas ou alors je n’ai rien compris et je fais des conneries :wink:

Je vais creuser quand même pour voir ce qu’il est possible de faire.

Salut,

Ça ne fonctionne pas si tu l’appelles post installation ??

pas essayé, je teste et je te dis

oui ça fonctionne ça me renvoie 1 pour la version béta

c’est logique, comme c’est en cours d’install il n’y a pas de version installé. Je vais teste en post_install

isBeta() qui renvoi 1 si c’est une bêta, c’est plutôt dans les clous non :sweat_smile: ? Tu chercherais à faire quoi ?

Modifie la fonction comme ça t’arrange d’avoir le retour.

Édit : j’ai mal lu, j’ai lu « mais ça me renvoi »…
Donc tout va bien

pfff comment on lance un fichier php en post install? Je modifie le fichier packages.json mais ça se lance pas, c’est quoi la syntaxe?

Je voulais tester lors de l’install si la version béta était la même que la stable avec un message incitant à passer sur la stable si jamais tu étais en béta. J’arrive bien à le faire sans tester la version installée en comparant les changelog. Je vais laisser comme ça pour l’instant.

Pour plus tard je change mon fusil d’épaule, je vais plutôt lancer un cron 1 fois par jour ou semaine ou je ne sais pas encore qui va tester si tu as la béta installé et si tu as la béta et que la stable est exactement la même version il y aura un message qui va te demander de passer en stable

Quel est l’intérêt de faire ceci ?
Je me dit que si la personne a installé la Beta, c’est qu’il veut tester les progrès ou feature en avance, donc toujours bon de garder une base de Beta testeur qui peuvent remonter des problèmes, non ?

Je partage ton point de vue en ce qui concerne les bêta testeurs volontaires mais ceux qui ont été obligés à un moment donné de basculer sur la bêta car la stable ne fonctionnait pas pour eux ou parcequ ils voulaient une fonctionnalité présente uniquement sur la bêta et qui d’une façon globale sont plutôt réticents aux versions bêta alors pour eux cela a un intérêt de les prévenir qu’ils peuvent repasser sur la stable

Dans le fond, il faudrait une fonctionnalité qui permette au dev d’envoyer une notification sur toutes les boxs des utilisateurs qui ont tel plugin en beta - ou plus largement d’envoyer des notifications selon des critères précis - comme ce message qui les prévient qu’une mise à jour est disponible.

oui ça serait top.

je trouve perso que les raisons que tu donnes pour être sur une beta sont plutôt « mauvaises » …
(ma vision en 2nd partie …)


pour répondre à la question initiale, perso plutot que comparer le contenu des changelogs (bof!), je comparerais un numéro de version présent dans le fichier info ou autre
un peu comme tu le fais : télécharges les fichier info de tes branch beta et stable, et compare la clé

une piste pour automatiser les numéro de version : Semantic-Release et le versioning automatique - Salon des Développeurs / Suggestions dev - Communauté Jeedom

et plutôt qu’apres une install (j’ai pas trop compris pk), c’est sur la version beta que j’aurai un cron qui tournerait une fois par jour pour faire cette vérif et afficher un msg quand la condition voulue est respectée

j’ai écrit comme ça me venait, ce n’est pas forcément à prendre au pied de la lettre mais le fait que tu aies pris le temps d’apporter ces précisions, de très bonne manière, prouve bien que certains le font.

Petit rappel, je ne suis pas développeur professionnel et tout ce que je sais je l’ai appris tout seul alors je n’utilises pas forcément des choses qui pourraient paraitre logique à quelqu’un dont c’est le métier. De plus le langage utilisé est parfois lui aussi un handicap.

Je ne tiens absolument pas à tester pendant l’install, c’est lors de la dernière mise à jour de teleinfo comme il s’agissait de mettre les deux versions identiques que je me suis dit que ça pourrait être sympa pour ceux qui attendent de rebasculer en stable de leur donner l’info. Après que l’info soit donnée au moment de l’install, par un cron ou par quelque autre moyen n’est pas un point bloquant pour moi. Si certains comme tu l’as très bien fait, me suggère telle ou telle manière cela ne me dérange absolument pas de changer mon fusil d’épaule.

Merci encore pour le temps que tu as pris à me répondre et pour tes suggestions utiles que je vais prendre le temps d’étudier.

(Je te proposerai une autre solution (et completerai mon retour sur ta reponse) demain, besoin d etre devant mon pc pour te donner qlq billes sur cette autre idee)

ma remarque n’était pas sur toi, mais plus sur les utilisateurs qui pensent et font comme tu l’as décrit :slight_smile:


bon en fait … j’ai fait un test, et ce à quoi je pensais ne peut pas fonctionner car ce sont des infos qui sont uniquement accessible au développeur du plugin sur lequel tu fais un test.
donc quand celui ci est installé chez un utilisateur il ne pourra lui pas avoir accès à ces infos, donc l’idée tombe à l’eau …


pour les curieux, l’idée était :

faire un appel au market pour récup des infos sur le plugin, et comparer les commit en beta et stable
si identique, alors beta = stable

"parameters": {
	"github::beta::commit": "xxxxxxxxxxxxxxxxxxx",
	"github::stable::commit": "xxxxxxxxxxxxxxxxxxx",
},

Edit :
ceci dit … sur le même principe … tu pourrais appeler l’api github et faire pareil :slight_smile:
seulement si ton repo est public
https://api.github.com/repos/tomitomas/plugin-mybin/commits/beta

tu récupères la clé sha
image

tu fais pareil pour la branche stable
et tu compares les 2 clés

J’avais bien pensé à comparer les versions sur github mais je ne savais pas comment faire…

perso pour teleinfo que j’ai repris la publication sur le market est faite par nextdom et moi je mets à jour le github stocké sur nextdom qui est public je crois donc ça doit pouvoir se faire. Je suis en déplacement pour qq jour, je resterai ça à mon retour

Merci beaucoup