Contenu

Bug dans kivy et paramiko

Explications

Avec la mise à jour d’openssh, un bug est apparu avec l’utilisation de paramiko. Jusqu’à la version 1.15, paramiko et openssh n’étaient plus capable de s’accorder pour échanger les données. La version 1.15.1 corrige le souci sauf que tel quel, sous android, kivy utilise par défaut la version 1.10. Pour forcer l’utilisation de la v1.15.1, il faut mettre dans le fichier buildozer.spec :

1
requirements = kivy, paramiko==1.15.1

On compile, on envoie sur android et là … l’application plante. On peut tester autant de fois que l’on veut, à chaque essai le programme plantera 🙁

Bon, il faut sortir le debugger, pas le choix (adb):

1
adb logcat

Là, dans le flot d’informations, il est indiqué qu’il faut mettre ecdsa. Du coupon rajoute, toujours dans buildozer.spec :

1
requirements = kivy, ecdsa, paramiko==1.15.1

On compile, on envoie sur android et ça fonctionne 🙂

Autres possibilités

Ici, j’aurai pu utiliser import logging dans le code pour avoir d’autres infos, mais, le cas échéant, ça ne m’aurait mené nul part puisque le programme plantait au lancement.