Doc développeurs : suivre l'évolution du Core

Salut,

Je viens de parcourir le tout, c’est top :+1:

Attention ce qui suis n’est pas pour me plaindre mais pour mettre en lumière un problème que j’ai vu et pour lequel il faut qu’on trouve une solution.

J’ai remarqué la chose suivante moi en v4.1 mais je n’ai pas encore eu le temps de creuser: je pense que la lib GuzzleHttp a été mise à jour (mais je ne suis pas sur, je n’ai pas vérifié)

Je ne dis pas qu’il ne faut pas faire cela, pas du tout, mais faut qu’on trouve un moyen de gérer le problème suivant pour les plugins (et pas que les plugins tiers, les officiels aussi probablement): il y a un breaking change entre 2 versions quelque part et ca casse du coup avec l’erreur suivante: GuzzleHttp\_idn_uri_convert()

hors mettre une version supérieur à la 6.5.0 sur les versions core précédentes cassent aussi sur smart… je n’ai jamais compris (ni trop cherché) pourquoi mais je ne suis pas le seul a avoir rencontré le soucis: https://community.jeedom.com/search?q=GuzzleHttp%20smart

Bon, après avoir écrit tout ceci je me dis que je devrais p-e déplacer ce post dans une discussion dédiée et donc la conclusion pour ce sujet « suivre l’évolution du core » c’est que ca serait bien de documenter les versions des libs tierces utilisées

Autre point: où en est le système pour la « gestion des paquets » dont Loic avait parlé il y a quelques mois? prévu pour la 4.1, la 4.2 ou on ne sait pas encore? en tout cas ca sera à mettre dans cette doc également

Oui c’est un début de les libs devraient y être en effet. Pour guzzle je maîtrise pas la.

Pour la gestion des packages, plus rien ne bougera en 4.1 elle est freeze.

Mais ça rejoins d’autres discussions sur les pre requis qui doivent être fixés et montés… on finit par être bloqué à vouloir supporter tout les Linux et hardware, plus vraiment possible.

Salut,

Le passage en 4.1 sera soumis au fait d’être sous buster :wink:

1 « J'aime »

Hello. Voilà quelques retours :

  • Premier lien : Présentation https://doc.jeedom.com/fr_FR/dev/tutorial_plugin
    « Il ne remplace en aucun cas la documentation officielle » => lien qui fait tourner en boucle https://doc.jeedom.com/fr_FR/dev/tutorial_plugin renvoie sur cette page Plugin template | plugin-template qui revoie sur cette page https://doc.jeedom.com/fr_FR/dev/ et en on peut tourner un moment comme ça.
    Sur cette même page, l’icone du plugin est ancienne et présente le titre dans l’image. Confusion possible.
  • Lien Publication d’un plugin https://doc.jeedom.com/fr_FR/dev/publication_plugin
    • « Avoir mis votre plugin sur github (dépôt privé ou non) » : peut-être indiquer qu’il faut avoir soumis le plugin dans la case stable du market (pas beta ou v3)
    • il est indiqué de mettre les droits à zoic21, or dans le market, il est demandé de mettre jeedom-market (mais ça marche pas, chez moi toujours pending…) « cocher la case pour que le market gère la traduction de votre plugin et de la documentation (attention dans ce cas à bien donner tous les droits à l’utilisateur zoic21 de github sur votre dépot github) »
    • "la description (bien mettre les point important, " => les points importants
    • « Github : c’est ici que vous aller mettre les information entre le market et Github » c’est ici que vous allez mettre les informations entre le market…
    • « stablev3 (bientot) » => bientôt
    • « Vous pouvez aussi lancer une synchronisation manuel d’une branche » => manuelle

Merci, c’est poussé :wink:

1 « J'aime »

Clairement il y a un flou sur les librairies utilisées, j’ai commencé un inventaire (à la prévert il y a de tout) Jeedom Versioning et Packages : et déjà pour le core je ne suis pas sur que toutes les lib soit utilisées… Mais en effet il faudrait fixer les versions de chaque lib par version du core, c’est contraignant pour les plugins.

Enfin, actuellement ce n’est pas du tout contraignant et chaque plugin est libre d’installer ses propres dépendances, mais ça devrait être dans l’autre sens: le core devrait gérer les dépendances sous condition ce qui lui permettrait de surveiller ce genre de clash.
Ou alors, chaque plugin devrait proposer son fichier de configuration composer.json (pour les lib PHP installées avec Composer) requirements.txt (pour les lib python installées avec PIP) et je sais plus quel fichier utilisé pour les libs JS installées avec NPM…
Et même avec ces 3 languages je ne suis pas sûr d’être exhaustif sur toutes les librairies utilisées…

concernant :
https://doc.jeedom.com/fr_FR/dev/core4.1
pour la liste des objets.
indenté : ok
ordonnée : mais quel est l’ordre utilisé ?

Merci!

Le même que dans le menu accueil / dashboard, tel que définit dans outils / objet, vue d’ensemble.

La fonction jeeObject::buildTree(null, false) le fait automatiquement.

1 « J'aime »

super merci ! je vais pouvoir changer l’ordre, je ne suis pas très curieux!

Hello,

Dans la description de info.json, v4 est dans l’exemple mais pas dans l’énumération dans la définition du champ compatibility.

Les langues sont mauvaises dans l’énumération aussi… ça devrait être fr_FR etc

Faut pas hésiter à faire des PRs :joy:

c’est fait, mais je connais pas toutes les langues supportées donc faut ajouter :wink:

j’ai vu aussi que openzwave utilise des descriptions localisées aussi, j’avais jamais vu ca, il faudrait peut etre aussi l’ajouter à la doc.

"description" :{
    "fr_FR":"description en francais",
    "en_EN":"description in english"
}

utilisable pour « usage » aussi ?

Je remarque que dans le market.jeedom.com en anglais, si on a pas fait ca, on a « N/A » comme description… ca serait pas mieux de faire un failover sur le francais ?

aussi, il est écrit que pour les descriptions, on peut utiliser <br/> pour faire un retour à la ligne… de ce que je vois, ce n’est pas possible… par contre ca fonctionnerait pour usage… mais uniquement sur le market dans Jeedom (pas sur le site market.jeedom.com)

autre chose bizarre que je vois… on ne parle plus des captures idplugin_screenshot1.gif ou .png… et je vois que ce n’est plus utilisé en fait ? plus de capture nulle part… qu’en est-il ?

Comment tu fais pour avoir le market en anglais ?
Depuis mon jeedom alpha en anglais j’ai bien les descriptions en francais (car pas renseignée en anglais j’imagine, je vais d’ailleurs le faire)

Tous mes plugins ont des captures, çà marche très bien https://market.jeedom.com/index.php?v=d&p=market_display&id=3869
Mais effectivement je vois rien dans la doc. Pourtant sur l’ancienne doc y’avait qql chose, il me semble l’avoir lu. Ou alors j’avais regardé un plugin qui en a pour faire pareil je sais plus. Peu-être ajouter un passage là dessus, je trouve dommage que bcp de plugins n’est pas de capture, même dans leurs doc.

Pour les br dans la description, c’est vieux çà j’en avais déjà parlé mais j’ai pas accès au market je sais meme pas comment il est fait (php+sql comme jeedom j’imagine). Faudrait voir avec @Alexandre / @Loic / @Salvialf

j’ai mon système en anglais avec locales en anglais, c’est peut-etre ca :wink:

les miens aussi avant ca fonctionnait bien, mais c’est plus là… tu as mis tes images idplugin_screenshot1.png, idplugin_screenshot2.png etc dans /plugin_info/ ?


les miens n’ont pas bougé depuis 2ans…

Non dans le docs/images j’ai toujours fais comme çà. Et quand j’ai passé mes docs en externe j’ai laissé seulement les screens sur le repo du plugin

Capture d’écran 2020-12-23 100416

oui c’était là il y a longtemps mais après ca avait changé… faudrait pas que ca soit dans /plugin_info/ ? ca n’a plus de sens dans docs …

(comme l’icone en fait)

Ah oui pas top du tout çà !!
Je vais regarder et updater mes info.json