Closed AlexSchieving closed 4 years ago
Edit: Version Vstream: 0.7.8.
C'est survenu d'un coup ?
Y aurait pas un caractere a la con dans un chemin de repertoire quelque part ?
Ou alors c'est un probleme de droit, pas d'acces pour modifier le fichier de donnée.
Au vu du log tout les éléments vstream ne charge pas non ?
Pour te répondre @TmpName , je n’avais jamais essayé votre Addon avant hier. Donc pour moi ce n’est pas venu avec la dernière version mais directement quand je l’ai installé. Je n’ai pas de souci sur les autres addons (Venom, Tempest, etc.) donc je ne pense pas que ce soit une question de « Path ».
@yodidon quelque chose à faire de mon côté ? (Parametrage quelconque)
File "/home/osmc/.kodi/addons/plugin.video.vstream/resources/lib/db.py", line 39, in init VSlog('Erreur: Impossible d\'écrire sur %s' % self.REALDB ) UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 21: ordinal not in range(128)
Il y aurait un probleme de codage, mais tu n'es pas le premier a mettre des caracteres accentué, si c'etait ca, y aurait plus de monde avec le probleme
DB = 'special://userdata/addon_data/plugin.video.vstream/vstream.db'
REALDB = xbmc.translatePath(DB).decode('utf-8')
if not xbmcvfs.exists(self.DB):
self.db = sqlite.connect(self.REALDB)
self.db.row_factory = sqlite.Row
self.dbcur = self.db.cursor()
self._create_tables()
C'est la partie qui bloque. Il est ou chez toi le fichier plugin.video.vstream ? Dans la mesure ou le code a meme des problemes pour ecrire la valeur de REALDB, je me dis que ca doit deconner des la deuxieme ligne.
Moi j’ai essayé et bien aimé osmc, mais j’ai peur que ce soit pas trop suivi, si tu veux pas t’embêter , et si je me souvient tu es sur Raspberry, je te conseille de passer sûr libre Elec, simple et rzrerement de souci avec l’adon, c’est pas une réponse ultra développeur mais plutôt simple user
Je ne suis pas sûr de comprendre la question mais il est dans le meme dossier que les autres extensions vidéo d’OSMC: /home/osmc/.kodi/addons
A moins que tu ne parles du fichier récupérer sur le repository Vstream ?
Dans le salon je suis avec un pi3 sur libreelec et Kodi 18.5, et à vrai dire a part l’es problème commun cela fonctionne depuis 2 ans
Mais je répète je suis pas contre osbmc et j’ai aucun contact avec libreelec
@TmpName Maintenant que je vois le bout de code en question, est ce que cela peut être du si aucune database n’est définie ? Je ne crois pas avoir eu avoir besoin de le faire en initialisant mon boudin
La derniere version 0.7.8 ne s'installe plus directement sur android.
Que ce soit sur OSMC, Nodi et même KODI officielle !
Mais elle peut s'installer sur une mise à jour d'une version précédente.
Là on parle d’une installe sur Raspberry et je peux presque affirmer que ce n’est donc pas sur androïde
Donc il n'y a pas que sur Android que la version 0.7.8 ne sait pas créer la base.
Perso, sur android, je m'en suis sortie en installant une ancienne version, puis en faisant la mise à jour.
@sizanic peux tu me dire comment me procurer une version antérieure sur Kodi / OSMC stp ?
@sizanic j'ai pas android, mais il se passe quoi en fait ? Pourquoi la 0.7.8 a des problemes ?
On a tous cette erreur en l'installant, lors de la création de la base (que tu a déjà citée) :
File "/home/osmc/.kodi/addons/plugin.video.vstream/resources/lib/db.py", line 39, in init
VSlog('Erreur: Impossible d'écrire sur %s' % self.REALDB )
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 21: ordinal not in range(128)
Mais je ne trouve pas pourquoi en comparant les différences de code. Faut que je regarde autrement, en debug et à la recherche du caractère 0xc3.
Ok donc je devrais pouvoir reproduire le bug si je supprime le fichier ?
C'est possible que ce sois une corruption de la base de donnée car cette modification https://github.com/Kodi-vStream/venom-xbmc-addons/commit/bf4c49436a5d6293b1579879bce26e8fae269666#diff-c9347c4d54046e7cd617f50ca805f4c3 (que j'ai revert) "cassais" les bases de données.
Non, car dans la 0.7.8 il y a la ligne comme avant, et on parle d'une installation sur du vierge, donc sans base.
Je ne sais pas si le souci apparaît sur une installation Windows vierge.
Normalement c'est corriger dans la beta. (https://github.com/Kodi-vStream/venom-xbmc-addons/commit/d374aa91a26c02483ca68fba89d22cb08345e5b2)
Mais oui, tout simplement. Ce n'était pas un problème de création de la table mais l'erreur est bien à la ligne 39 ! Donc au moment du log ! LOL
Par contre on appelle quand même trop souvent la création de table, d'où la modif que je voulais mettre en place : https://github.com/Kodi-vStream/venom-xbmc-addons/commit/bf4c49436a5d6293b1579879bce26e8fae269666#diff-c9347c4d54046e7cd617f50ca805f4c3
Oui mais pour une raison inconnu ça déclenche un bug sur Android. A la limite on peu vérifié l'os utiliser et on peut exécuter ce code uniquement pour Android. Mais je suis pas sur que ce sois vraiment utile d'allez si loin.
Ce qui serait vraiment utile c'est de trouver le bug et de le corriger. Mais ce serait peut être beaucoup de travail pour un gain minime.
Je suis pas sur que le bug sois de notre coter, car le seul moyens de potentiellement corriger le bug serai de recréer le fichier une fois qu'il est vidé. Mais je suis pas sur que ce sois utile et j'ai peur que ca ne provoque plus de bug qu'autre chose.
Parle-t-on de la même chose ?
J'ai compris que le bug arrive lorsque qu'on retire cette ligne :
cDb()._create_tables()
Il n'est pas question de fichier vidé.
Et je ne vois pas ce qui peut provoquer un bug dans ce code.
Le bug se déclenche lorsque la personne vide la base de donnée depuis les paramètre de Vstream. D’après la description du bug, c'est comme si Vstream supprimais le fichier de la base de donnée au lieu de simplement la vidé. Conséquence logique, tout ce qui utilise les bases de données devient inutilisable puisque le fichier db n'existe plus.
Merci c'est très clair. Et c'est clair que j'aurais jamais trouvé le scénario pour reproduire la problème. On laisse comme ça alors.
Par contre il y a quand même un souci que tout ça nous a révélé, car d'après ce code :
try:
#if not os.path.exists(self.cache):
if not xbmcvfs.exists(self.DB):
self.db = sqlite.connect(self.REALDB)
self.db.row_factory = sqlite.Row
self.dbcur = self.db.cursor()
self._create_tables()
return
except:
VSlog('Erreur: Impossible d\'ecrire sur %s' % self.REALDB )
pass
Si ça plante dans VSlog c'est qu'une exception a été levée. Et ça ne devrait pas !
Donc maintenant on a un beau log qui ne plante pas mais on devrait même pas avoir de log.
ça reste à investiguer ...
Pas forcement, même si le code n'est pas exécuter il est quand même interpréter et je pense que c'est a ce moment que Vstream plantait. Donc il se peu que ce sois totalement normal.
Pour information en essayant d'utiliser vStream sur xubuntu 18.04 j'ai obtenu le même message d'erreur :
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 21: ordinal not in range(128)
Pour contourner (sans trop chercher) j'ai ajouté ça dans le fichier plugin.video.vstream/resources/lib/db.py :
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
C'est surement pas la bonne méthode mais ça a fonctionné sur mon install, si ça peut vous orienter vers le bug ...
Merci @chrysal En effet un problème d'encodage UTF-8. On va s'inspirer de ta solution pour l'utiliser.
Nouvelle mise à jour 0.7.9 disponible, elle corrige les problèmes d'installation ...
Décrivez le bug Bug au lancement de l’addon sur OMSC ( Kodi 18.6)
Votre system
Nous devons le reproduire Bug au lancement de l’addon.
Log L’accès un votre fichier log seras un plus. Pour savoir comment uploader votre log voir:
https://ares-project.uk/logupload/log.php?id=266931
Image Si votre soucis est visuel faite une capture d’écran.
Plus Ajoutez plus d'information sur le problème ici.