Closed edgd1er closed 4 years ago
Alors pour être transparent, j'ai de moins en moins de temps pour Abeille alors je ne me vois pas aller sur un truc additionnel. Ca a l'air super puissant mai je n ai pas le temps plein d autres projets en attente Si tu veux revoir le code pourquoi pas mais attention a vouloir faire mieux ca peut entrainer de nouveau bug et donc du temps. Si tu prends le truc de A à Z pourquoi pas.
Oui, il y a une vie en dehors d'abeille ;) Pas de soucis
Juste pour info, j'avais jeté un oeil pour voir comment ca pouvait être utile mais je trouve qu'il y a pas mal de warnings qui n'en sont pas. Par ex;
Ajouter des {} alors qu'il n'y a qu'une seule fonction ou ligne... je n'en vois pas l'interet. Ca n'apporte rien du tout.
Bref, peut etre que dans tout ce qu'il reporte il y a des choses interessantes mais j'ai pas encore trouvé.
@tcharp38
Effectivement, il y a beaucoup de règles PSR qui sont liées à la présentation du code, mais c'est un standard. Cela ne change pas le coté fonctionnel du code, cependant,
Il y a d'autres informations comme la duplication de code, la complexité et la taille des classes qui indiquent qu'un refactoring est à faire.
L'analyse du code mort comme ici, montre que la page n'est plus soumise au contrôle de login et est donc dispo pour toute personne. C'est une faille potentielle.
ou comme ici, un faute de syntaxe, du coup width n'est pas défini....
Bref, c'est juste un outil d'analyse automatique pour ajouter un peu de fiabilité (faille de secu, OWASP, ...) et réduire le ticket d'entrée pour la maintenance. Si Kiwi ne devait plus gérer le projet, pas sur qu'il soit repris, sachant que Abeille est franco-français et ne bénéficie pas d'une librairie python partagée par plusieurs solution domotique comme le plugin jeedom-zigate, ni d'une communauté internationale qui pourrait prendre en charge à plusieurs la maintenance. certaines fonctions gardent des reliquats de l'époque MQTT, il n'y a pas de phpdoc.
L'idée était de rendre le projet plus facile a maintenir et plus compréhensible. Pour motiver peut être d'autres personnes pour intervenir dans le code. Par exemple, la partie ajout de nouvel équipement est clairement le point ou il faudrait pouvoir rendre autonome les utilisateurs.
Tu as raison. Il y a probablement des choses utiles à en tirer. Je vais revoir ça et pousser un petit cleanup avec chacun de mes PRs.
Pour ma curiosité, jeedom-zigate est partagé ? Comment ? Avec quel autre outil domotique ?
@tcharp38 ,
pas le plugin lui même qui est spécifique à jeedom, mais la lib zigpy à l'image du plugin zwave qui se repose sur la lib python openzwave. Communauté internationale = plus de support = plus de mainteneurs = plus de fiabilité et pérennité. la lib python zigate est utilisé par home assistant, jeedom et sans doute domoticz aussi.
Sur une branche dev, j'ai mis un workflow pour analyser le code avec sonar. SonarCloud propose une interface de visualisation du rapport et cela permettrait de guider les corrections d'ano et de bénéficier des propositions d'amélioration du code.
il est possible d'avoir une visualisation ici: https://sonarcloud.io/dashboard?id=edgd1er_Abeille
si tu souhaites mettre en place cette analyse, il suffira d'accepter la PR que je peux faire et de créer les deux token dans la partie settings/secret.
un token pour permettre a github d'uploader le rapport chez sonarcloud un token pour permettre a sonarcloud d'envoyer des infos au projet github.
il y aurait quelques fichiers (4 ou 5 à mon souvenir) a renommer également, le docker sonar-client ne gère pas les nom de fichiers accentuées. 2018_03_12_12_53_49_Xiaomi_Capteur_Fumée.pdf => 2018_03_12_12_53_49_Xiaomi_Capteur_Fumee.pdf