Bugs


Bugs référencés actuellement non résolus :

Issue #2 - Erreur de connexion avec le certificat OpenSSL sur Google API (12-3-2017) - Erreur MAJEUR (Windows 7, Vista et inférieur) - 16.3.2017

Exception in Tkinter callback
Traceback (most recent call last):
  File "Tkinter.pyc", line 1536, in __call__
  File "Launcher.py", line 1490, in gedcom_step3

  File "Launcher.py", line 1501, in gedcom_step3_bis
  File "Launcher.py", line 808, in get_gps_town
  File "Launcher.py", line 693, in geocoderGoogleV3
  File "requests\api.pyc", line 70, in get
  File "requests\api.pyc", line 56, in request
  File "requests\sessions.pyc", line 488, in request
  File "requests\sessions.pyc", line 609, in send
  File "requests\adapters.pyc", line 497, in send
SSLError: Can't connect to HTTPS URL because the SSL module is not available.

 

  • Serait apparu avec les versions de Windows inférieures à 8 : Windows VISTA, XP, Seven (7), recherche de l'erreur pour la compatibilité.

Des essais plus poussés avec Windows 7 ont démontré qu'il y avait un gros problème de compatibilité avec le certificat SSL. De plus le code d'erreur est cette fois-ci beaucoup plus bavard, même si ce dernier change : les lignes de code responsables sont identiques.

 

Traceback (most recent call last):
  File "<pyshell#9>", line 1, in <module>
    geocoderGoogleV3(key, random.choice(GOOGLE_API))
  File "C:\Users\yoan\Downloads\test-OpenSSLError.py", line 30, in geocoderGoogleV3
    r = requests.get(url, params=params)
  File "C:\Python27\lib\site-packages\requests\api.py", line 70, in get
    return request('get', url, params=params, **kwargs)
  File "C:\Python27\lib\site-packages\requests\api.py", line 56, in request
    return session.request(method=method, url=url, **kwargs)
  File "C:\Python27\lib\site-packages\requests\sessions.py", line 488, in request
    resp = self.send(prep, **send_kwargs)
  File "C:\Python27\lib\site-packages\requests\sessions.py", line 609, in send
    r = adapter.send(request, **kwargs)
  File "C:\Python27\lib\site-packages\requests\adapters.py", line 497, in send
    raise SSLError(e, request=request)
SSLError: [Errno 185090050] _ssl.c:343: error:0B084002:x509 certificate routines:X509_load_cert_crl_file:system lib

 

Recherche dans les forums de programmeurs des solutions possibles : StackOverflow, Github (Issue) - analyse en cours...

Conclusion :

  • Après avoir créé un script sur Windows 7 exécutant la même opération que sur Windows 8, j'ai modifié le script sur Windows 7 de manière à ce qu'il fonctionne. Les modifications apportées sur Windows 7 ont été réalisées sur le script de Windows 8 (ils étaient donc identiques), mais malgré cela, un EXE créé sur Windows 8 ne fonctionne pas sur Windows 7. Je suis donc en train de créer un EXE sur Windows 7. Il faudra réaliser aussi une version compatible pour Windows Vista et XP.
  • ==> En cours de création pour compiler une version sur Windows 7, vista, XP ...

Bug référencé actuellement résolus :

Issue #9 - Ancestrology - Erreur lors de la création de la carte pour une ascendance - 15.3.2017

Exception in Tkinter callback

Traceback (most recent call last):

  File "Tkinter.pyc", line 1536, in __call__

  File "Launcher.py", line 2033, in gedcom_map_pass

  File "Launcher.py", line 2398, in gedcom_map

  File "peregrination.pyc", line 405, in generate_map_gedcom

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position 5: ordinal not in range(128)

 

Apparemment une erreur à cause d'un accent dans l'encodage des caractères qui a bloqué la création de la carte - en cours de test.

Un correctif à été réalisé pour supprimer les accents.

Ancestrology utilise un encodage 'UTF8' qui au lieu d'être simple , est double. Il est nécessaire avec ce logiciel d'exporter en ANSI.

Résolu : le 20.3.2017

Issue #8 - Geneanet - Erreur lors de la création de la carte pour la descendance - 15.3.2017

Exception in Tkinter callback
Traceback (most recent call last):
  File "Tkinter.pyc", line 1536, in __call__
  File "Launcher.py", line 2078, in gedcom_map_validate
  File "Launcher.py", line 2366, in gedcom_map
  File "peregrination.pyc", line 136, in convert_to_trajectory_GEDCOM
KeyError: '@I12327@'

 

OS : Windows 10 Logiciel Généatique 2017

Erreur lors de l'étape 6 dans la création de la carte en mode "Descendance"

 

  1. Le bug est dû au fait que la descendance ne prend pas en compte les événements propres de l'épouse (sa naissance et son décès), mais uniquement son mariage. Une correction a été apportée.
  2. Ce débogage a créé une réaction en chaîne : en effet la descendance ne produisait aucune pérégrination, faisant donc planter le programme. Un nouveau correctif a donc été créé de manière à afficher sur la carte les communes avec leurs événements associés malgré l'absence de pérégrination.
  3. Cette correction provoqua une nouvelle réaction, l'un des lieux n'était pas reconnu et l'annotation n'apparaissait pas, alors qu'elle était créée. En effet, Généatique sépare les différents champs de lieu avec une virgule et un espace : «ville, département, région, pays, subdivision» et  «ville, département, région, pays».  Un remplacement de cet espace durant la lecture des lieux résout le problème
  4. ==> ceci met en lumière une chose : mon logiciel n'est pas adapté pour afficher différents lieux ayant les mêmes coordonnées GPS et lorsque les pérégrinations sont absentes.

Issue #7 - Erreur lors de la lecture du Gedcom Généanet : accession au données filiatives 14.03.2017

Exception in Tkinter callback
Traceback (most recent call last):
  File "Tkinter.pyc", line 1536, in __call__
  File "Launcher.py", line 1516, in gedcom_step1
  File "Launcher.py", line 1154, in get_data_gedcom
  File "gedcom\__init__.pyc", line 504, in father
NotImplementedError

 

Gedcompy est la bibliothèque logiciel qui permet de réaliser la lecture du GEDCOM. Lors de la lecture, je demande à Gedcompy de me donner l'ID du père et de la mère d'un individu et c'est lors de la recherche de cet ID que Gedcompy a planté. En effet, cette erreur survient lorsque ce dernier n'arrive pas à retrouver le lien père ou mère précisément. J'ai donc corrigé cette étape en extrayant non pas le père et la mère individuellement mais les parents. De cette manière, il me convertit les données sous forme d'une liste [parentA, parentB, ..., parentN] et je récupère seulement que les deux premiers.

Issue #6 - Chargement du Gedcom

 

 Traceback (most recent call last):

  File "C:\Python27\lib\lib-tk\Tkinter.py", line 1536, in __call__

    return self.func(*args)

  File "Launcher.py", line 1426, in gedcom_step1

    self.get_data_gedcom()

  File "Launcher.py", line 1044, in get_data_gedcom

    name = " ".join(ind.name)

  File "C:\Python27\lib\site-packages\gedcom\__init__.py", line 431, in name

    return first, last

 

UnboundLocalError: local variable 'first' referenced before assignment

 

Les individus dans un GEDCOM sont organisés de cette manière :

 1 NAME Prénom/NOMdeFAMILLE/

Cas avec variante :

 1 NAME Prénom/NOMdeFAMILLE1 / NOMdeFAMILLE2/

 Si le nom de famille contient des "/" car vous avez voulu différencier les variantes, cela bugue.

Ajout d'un correctif pour remplacer les "/" par des ","

Issue #5 - Blocage dans le géocodage avec Nominatim

Exception in Tkinter callback

Traceback (most recent call last):

  File "C:\Python27\lib\lib-tk\Tkinter.py", line 1536, in __call__

    return self.func(*args)

  File "Launcher.py", line 1555, in gedcom_step3

    self.gedcom_step3_bis()

  File "Launcher.py", line 1566, in gedcom_step3_bis

    self.fichier_lieux = self.get_gps_town(self.town_set)

  File "Launcher.py", line 859, in get_gps_town

    lat, lon = self.nominatim(town_list)

TypeError: 'NoneType' object is not iterable

 

Réécriture dans le script, la fonction de géolocalisation renvoyait une valeur vide (None) au lieu de deux, si cette dernière n'avait absolument rien géolocalisé.

Issue #4 - Erreur avec Geneatique 2017 - Blocage lors de la carte (13-3-2017)

Traceback (most recent call last):
  File "Tkinter.pyc", line 1536, in __call__
  File "Launcher.py", line 1902, in gedcom_map_validate
  File "Launcher.py", line 2203, in gedcom_map
  File "peregrination.pyc", line 106, in convert_to_trajectory_GEDCOM
KeyError: ' Ard\xe8che'

 

Une erreur qui serait apparemment due à l'absence du lieu dans le CSV alors présent dans le GEDCOM - en cours de test - apparament résolue d'elle-même à surveiller.

Issue #3 - Erreur lors de la lecture du GEDCOM avec Heredis 17 - format Windows ANSI (12-3-2017)

Exception in Tkinter callback
Traceback (most recent call last):
File "Tkinter.pyc", line 1536, in __call__
File "Launcher.py", line 1371, in gedcom_step1
File "Launcher.py", line 1029, in get_data_gedcom
AttributeError: 'list' object has no attribute 'date'

 

Cela arrive si dans votre fiche vous avez plusieurs événement identiques  (plusieurs événement de naissance ou décès pour un seul individu).

  • Création d'un message d'erreur sur la console.
  • Création d'un fichier listant les individus concernés de la généalogie.
  • Mise à jour du code source.

 

Issue #1 - Erreur de parsing avec le logiciel ELIE6.0.a4 (12-3-2017)

Exception in Tkinter callback
Traceback (most recent call last):
  File "Tkinter.pyc", line 1536, in __call__
  File "Launcher.py", line 1365, in gedcom_step1
  File "gedcom\__init__.pyc", line 739, in parse
  File "gedcom\__init__.pyc", line 704, in parse_filename
  File "gedcom\__init__.pyc", line 757, in __parse
NotImplementedError: [lien web]

 

Cette erreur est due au fait que le GEDCOM est produit avec des lignes vides ou sans balise d'enregistrement - correctif écrit.

Où trouver le bug ?

 

En cas de problèmes ou de bugs, le programme bloque ou ne fonctionne pas, un fichier d'erreur se crée. Après la fermeture du programme, une fenêtre d'erreur apparaît.

 

 

Le fichier d'erreur et nommé :

Launcher.exe.log

 

 

Les fichiers LOG sont des fichiers texte avec comme extension de fichier ".log",

ils s'ouvrent donc par défaut avec Bloc-Note.

 

Bug avec l'ouverture d'un fichier GEDCOM encodée en mode "UTF8"
Bug avec l'ouverture d'un fichier GEDCOM encodée en mode "UTF8"

 

Vous pouvez donc m'envoyer le contenu du fichier en copiant-collant le fichier par la page contact

ou en pièce jointe avec votre fichier GEDCOM ici.