Git Product home page Git Product logo

Comments (18)

Salvialf avatar Salvialf commented on June 23, 2024 1

Bonjour,

Une issue sert à remonter un problème identifié et non à poser une question.

Si vous avez des questions sur le développement autour de Jeedom, le forum communautaire est l'endroit adapté pour les poser : https://community.jeedom.com/

Merci

from core.

jfhautenauven avatar jfhautenauven commented on June 23, 2024 1

Tu te trompes en affirmant que c'est une librairie. Mais bon, je ne vais pas tergiverser ...
J'ai regardé le commit de Loic, et il est correct. Je ne vois rien à redire dessus, c'est à peu près ce que je comptais faire ce soir moi-même sur ma VM Frankenstein.

Je suis attristé de voir que ça tourne en affaire d'ego, mais j'en ai vu d'autres au fil des années.

Pour ton information, j'ai regardé comment faisaient les autres plugins et j'ai pris contact avec l'un ou l'autre DEV de plugin pour qu'il m'explique pourquoi il n'avait pas encore migré ses install npm du shell script "ancienne façon" vers le nouveau gestionnaire de la v4. Et devine quoi ? Apparemment, même constat que moi ... "fonctionne pas, mais marche toujours avec le script, donc pas bloquant" ... les devs en question n'en avaient juste pas fait une priorité ou pas signalé ... ce que je comprends, tant que t'as un workaround qui ne freine pas le cycle de ton produit ... enfin soit.

Pour finir, "hérésie", le "mal absolu", etc ... ce sont des points de vue, et je tente toujours de ne pas mêler religion et software engineering. Ceci dit, si tu as des arguments plus convaincants, et qu'on peut laisser les soucis d'ego de côté, fais moi signe, j'adore discuter ...
Regarde malgré tout le commit de Loic, ça t'aidera peut être a comprendre qu'au final c'est un bugfix ... je vais pas davantage enfoncer le clou ... je ne gagne rien à étaler ma science ici ...

from core.

jfhautenauven avatar jfhautenauven commented on June 23, 2024

Peut etre la cause du probleme ?

image

from core.

jfhautenauven avatar jfhautenauven commented on June 23, 2024

@Salvialf : Bonjour, l'issue est identifiée, un package NPM installé n'est pas vu par jeedom, ce n'est pas une issue pour vous ?

from core.

Salvialf avatar Salvialf commented on June 23, 2024

Pas du tout, de plus la copie d'écran mise en avant comme étant représentative d'un éventuel problème n'a strictement aucun lien.

Nous n'allons pas faire le debug de votre code ici, sans compter qu'aucune information concrète sur l'installation ou les manipulations réalisées n'est fournie.

Merci de vous diriger vers le forum communautaire si vous avez des questions sur le développement de plugins autour de Jeedom.

from core.

jfhautenauven avatar jfhautenauven commented on June 23, 2024

L'issue rapportée est que le mécanisme d'installation de packages introduit avec la version 4.2 de jeedom ne detecte pas, une fois le package installée que celui-ci est effectivement installé sur le système.

Cela n'a rien à voir avec le plugin que je suis en train d'écrire, c'est un mécanisme qui se veut générique pour tous les plugins, de ce que j'ai pu en comprendre de la documentation (même si celle-ci se veut éparse sur la question).

La copie d'écran a été jointe à des fins illustratives du symptôme constaté.
Il n'y a pas de manipulation particulière à décrire, puisqu'encore une fois, le mécanisme est générique et totalement indépendant du plugin en lui-même. L'utilitaire de vérification des packages lui-même, lorsque l'on l'utilise de façon indépendante d'un plugin présente les mêmes symptômes : installation en cours, installation finalisée et ensuite absence de détection des changements apportés au système.

Avant d'écarter une issue, sans avoir lu entre les lignes de ce qui est décrit de quoi il s'agit, il serait peut-être utile de réfléchir.
En 12 ans de carrière, j'ai croisé de nombreux développeurs qui allaient très rapidement en besogne pour écarter tel ou tel problème "could not reproduce", "works as designed" ... j'en vois à nouveau les stigmates ici.

Rassurez-vous, je n'ai nullement besoin de débugger quoi que ce soit via GitHub, j'en suis parfaitement capable par moi-même.
Je vous signale l'issue ici, si c'est trop à encaisser, pas de soucis, je m'abstiendrai à l'avenir.

A toute fin utile, et peut-être pour aider les neurones à s'entrechoquer ... et puis je cloturerai ici cette discussion au bord de la malhonneteté intellectuelle :

Installer n'importe quel plugin, meme le template, en indiquant un package NPM dans la liste des dépendances.
Constater que les dependances s'affichent comme étant non-installées.
Aller ensuite dans le menu des réglages de jeedom, tab OS, ouvrir l'utilitaire de vérification des packages.
Cliquer sur "réparer", attendre la fin de l'installation du package.
Constater que l'action n'a pas d'effet, le package dépendance reste NOK.

Bonne chance, mon ami, et bonne journée.

from core.

Salvialf avatar Salvialf commented on June 23, 2024

...il serait peut-être utile de réfléchir....
...pour aider les neurones à s'entrechoquer ... et puis je cloturerai ici cette discussion au bord de la malhonneteté intellectuelle

Bonne chance, mon ami, et bonne journée.

Je laisse le soin à un de mes collègues de vous expliquer à quel point vous êtes dans l'erreur dans votre approche comme je l'explique depuis le début mais tellement persuadé d'avoir raison que vous en arrivez à devenir désobligeant sur mes capacités intellectuelles.

On en reparle dans quelques minutes pour voir qui a besoin d'aide pour faire s'entrechoquer les neurones ou est malhonnête intellectuellement...

from core.

zoic21 avatar zoic21 commented on June 23, 2024

Bonjour,

Pouvez vous me donner le retour de :
npm -g ls -json -depth 1

from core.

jfhautenauven avatar jfhautenauven commented on June 23, 2024

Bonjour zoic21,

Voici

jeedom@jeedom:~$ npm -g ls -json -depth 1 { "name": "lib", "dependencies": { "bosch-xmpp": { "version": "1.3.0", "dependencies": { "bluebird": { "version": "3.7.2" }, "cors": { "version": "2.8.5" }, "debug": { "version": "3.2.7" }, "docopt": { "version": "0.6.2" }, "express": { "version": "4.17.3" }, "http-string-parser": { "version": "0.0.5" }, "morgan": { "version": "1.10.0" }, "node-xmpp-client": { "version": "3.2.0" }, "promise-queue": { "version": "2.2.5" }, "sasl-scram-sha-1": { "version": "1.2.1" }, "saslmechanisms": { "version": "0.1.1" } } }, "nefit-easy-http-server": { "version": "5.0.4", "dependencies": { "bluebird": { "version": "3.7.2" }, "body-parser": { "version": "1.19.1" }, "cors": { "version": "2.8.5" }, "docopt": { "version": "0.6.2" }, "express": { "version": "4.17.2" }, "morgan": { "version": "1.10.0" }, "nefit-easy-commands": { "version": "3.0.5" } } }, "npm": { "version": "8.4.1", "dependencies": { "@isaacs/string-locale-compare": { "version": "1.1.0" }, "@npmcli/arborist": { "version": "4.3.0" }, "@npmcli/ci-detect": { "version": "1.4.0" }, "@npmcli/config": { "version": "2.4.0" }, "@npmcli/map-workspaces": { "version": "2.0.0" }, "@npmcli/package-json": { "version": "1.0.1" }, "@npmcli/run-script": { "version": "2.0.0" }, "abbrev": { "version": "1.1.1" }, "ansicolors": { "version": "0.3.2" }, "ansistyles": { "version": "0.1.3" }, "archy": { "version": "1.0.0" }, "cacache": { "version": "15.3.0" }, "chalk": { "version": "4.1.2" }, "chownr": { "version": "2.0.0" }, "cli-columns": { "version": "4.0.0" }, "cli-table3": { "version": "0.6.1" }, "columnify": { "version": "1.5.4" }, "fastest-levenshtein": { "version": "1.0.12" }, "glob": { "version": "7.2.0" }, "graceful-fs": { "version": "4.2.9" }, "hosted-git-info": { "version": "4.1.0" }, "ini": { "version": "2.0.0" }, "init-package-json": { "version": "2.0.5" }, "is-cidr": { "version": "4.0.2" }, "json-parse-even-better-errors": { "version": "2.3.1" }, "libnpmaccess": { "version": "5.0.1" }, "libnpmdiff": { "version": "3.0.0" }, "libnpmexec": { "version": "3.0.3" }, "libnpmfund": { "version": "2.0.2" }, "libnpmhook": { "version": "7.0.1" }, "libnpmorg": { "version": "3.0.1" }, "libnpmpack": { "version": "3.0.1" }, "libnpmpublish": { "version": "5.0.1" }, "libnpmsearch": { "version": "4.0.1" }, "libnpmteam": { "version": "3.0.1" }, "libnpmversion": { "version": "2.0.2" }, "make-fetch-happen": { "version": "10.0.0" }, "minipass-pipeline": { "version": "1.2.4" }, "minipass": { "version": "3.1.6" }, "mkdirp-infer-owner": { "version": "2.0.0" }, "mkdirp": { "version": "1.0.4" }, "ms": { "version": "2.1.3" }, "node-gyp": { "version": "8.4.1" }, "nopt": { "version": "5.0.0" }, "npm-audit-report": { "version": "2.1.5" }, "npm-install-checks": { "version": "4.0.0" }, "npm-package-arg": { "version": "8.1.5" }, "npm-pick-manifest": { "version": "6.1.1" }, "npm-profile": { "version": "6.0.0" }, "npm-registry-fetch": { "version": "12.0.1" }, "npm-user-validate": { "version": "1.0.1" }, "npmlog": { "version": "6.0.0" }, "opener": { "version": "1.5.2" }, "pacote": { "version": "12.0.3" }, "parse-conflict-json": { "version": "2.0.1" }, "proc-log": { "version": "1.0.0" }, "qrcode-terminal": { "version": "0.12.0" }, "read-package-json-fast": { "version": "2.0.3" }, "read-package-json": { "version": "4.1.1" }, "read": { "version": "1.0.7" }, "readdir-scoped-modules": { "version": "1.1.0" }, "rimraf": { "version": "3.0.2" }, "semver": { "version": "7.3.5" }, "ssri": { "version": "8.0.1" }, "tar": { "version": "6.1.11" }, "text-table": { "version": "0.2.0" }, "tiny-relative-date": { "version": "1.3.0" }, "treeverse": { "version": "1.0.4" }, "validate-npm-package-name": { "version": "3.0.0" }, "which": { "version": "2.0.2" }, "write-file-atomic": { "version": "4.0.0" } } } } }

from core.

jfhautenauven avatar jfhautenauven commented on June 23, 2024

...il serait peut-être utile de réfléchir....
...pour aider les neurones à s'entrechoquer ... et puis je cloturerai ici cette discussion au bord de la malhonneteté intellectuelle
Bonne chance, mon ami, et bonne journée.

Je laisse le soin à un de mes collègues de vous expliquer à quel point vous êtes dans l'erreur dans votre approche comme je l'explique depuis le début mais tellement persuadé d'avoir raison que vous en arrivez à devenir désobligeant sur mes capacités intellectuelles.

On en reparle dans quelques minutes pour voir qui a besoin d'aide pour faire s'entrechoquer les neurones ou est malhonnête intellectuellement...

Espérons mon cher Salviaf, que s'ils arrivent à me prouver mon erreur, ils arriveront à vous enseigner la grossièreté intrinsèque à lire en diagonale une issue, et répondre de manière aussi désinvolte ...
Chacun sa forme d'irrévérence.

Excellente journée

from core.

Salvialf avatar Salvialf commented on June 23, 2024

bah c'est une lib pas une dépendance tout simplement !! Une lib s'installe dans le dossier resources du plugin et le gestionnaire du core en gère l'installation des dépendances (de la lib).

Exactement comme le font tous les plugins existants qui utilisent npm ou yarn.

Le gestionnaire du core prend donc bien en charge les dépendances npm globales mais en aucun cas les libs globales et leurs dépendances ce qui serait d'une complexité incroyable avec des risques de conflits entre plugins bien plus important.

Nous en revenons donc à :

Si vous avez des questions autour du développement de plugins autour de Jeedom, nous vous invitons à les poser sur le forum où une grande communauté de passionnés est présente et tout à fait à même de répondre.

Merci

from core.

zoic21 avatar zoic21 commented on June 23, 2024

Je pense avoir trouvé il faudrait tester avec la version alpha du core et me dire si c'est mieux.

from core.

jfhautenauven avatar jfhautenauven commented on June 23, 2024

@Salvialf ce package permet d'installer un client sur l'OS, accessible en ligne de commande, il permet de faire tourner un serveur web qui sert de gateway pour les commandes BOSCH XMPP ... je ne voyais pas vraiment "lib" comme qualificatif ... j'ai peur de ne pas suivre ... outre ça, je n'ai vu aucune différence dans la documentation entre lib et dépendance ... mon plugin dépend de l'installation locale de ce package, je le rajoute donc dans packages.json ... comme indiqué dans la doc ...

@zoic21 : j'ai déjà utilisé les versions beta du core, mais pas alpha. Possible de me pointer vers une quelconque doc pour que je puisse installer l'alpha sur ma VM de test ? Par avance merci :)

from core.

Salvialf avatar Salvialf commented on June 23, 2024

oui comme le font la plupart des plugins existants qui utilisent des libs npm

from core.

zoic21 avatar zoic21 commented on June 23, 2024

Tu vas dans la conf de jeeodm onglet mise à jour puis tu choisis alpha.

from core.

jfhautenauven avatar jfhautenauven commented on June 23, 2024

@zoic21 : le temps de faire un snapclone de ma VM, d'installer et je te dis tout de suite le résultat. Merci déjà pour ton aide.

from core.

jfhautenauven avatar jfhautenauven commented on June 23, 2024

@zoic21 : je te confirme que c'est en ordre.

image

image

L'installation fonctionne toujours et désormais, jeedom détecte correctement le package, tout tourne sans problème, comme je pourrais m'y attendre. Ton fix semble donc bien corriger l'ISSUE que j'avais rapporté initialement.
Merci beaucoup pour ton aide et pour le fix dans des délais record, je n'en attendais pas tant :) Thumbs up !

@Salvialf : nous en revenons donc à ce que je disais initialement, il s'agissait bien d'une issue qui devait être fixée. J'ai déjà fait ce job trop d'années pour ne pas prendre le risque d'affirmer quelque chose quand je n'en suis pas certain ... je suis architecte software pour une très grosse corporate, et j'ai tous les jours des développeurs qui pensent venir m'apprendre mon job, pas loin de 80 personnes ... on me raconte chaque jour que les bug sont des features, les issues ont des workaround, et patati et patata ... on n'apprend pas au vieux singe à faire la grimace.
Par contre, un conseil, qui te servira pour le reste de ta carrière (si tant est que tu sois un ITer pro, si t'es juste un hobbyiste, zappe le conseil) : le retour d'expérience de l'utilisateur qui te rentre une issue, tu le lis à fond, et même si t'es convaincu qu'il n'y a pas de soucis, essaie d'abord de reproduire avant de fermer l'issue ... ça coute un peu de temps, mais l'image de ton produit ne souffrira pas d'affirmations gratuites et des frustrations coté user qui en découleront.

@zoic21 : tu sais me dire quand ce patch alpha passe en PROD stable ?

Messieurs, je vous souhaite d'ores et déjà une excellente journée.

from core.

Salvialf avatar Salvialf commented on June 23, 2024

Non et non ! C'est une hérésie d'installer une lib en global de la sorte et le code du core était parfait pour gérer l'installation des dépendances comme prévu à l'origine et comme utilisé par l'ensemble des plugins avec une lib en local.

Tu es hautain et condescendant, tu arrives avec tes certitudes sans même avoir regardé comment faisaient les autres plugins et tu viens me donner des leçons... Mais effectivement tu es certainement trop supérieur pour t'abaisser à poser une question sur un forum.

Après effectivement sur ce coup je ne m'attendais clairement pas à ce que cette modification soit faite comme ça pour quelqu'un qui ne s'est même pas demandé comment faisait les autres plugins existants et fonctionnels de longue date.

from core.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.