Nouvelles de développement - Octobre 2019

Gajim development news

Nouvelles de développement - Octobre 2019

Gajim development news

Il s’agit du premier message d’une série d’actualités sur le développement de Gajim. Dans ces messages, je (wurstsalat) vais essayer de résumer un mois de développement autour de Gajim. Parfois, ces messages couvriront également python-nbxmpp et XMPP en général. Le développement d’octobre a apporté des améliorations à MacOS, au transfert de fichier Jingle, accusés de réception, et plus encore. N’hésitez pas à rejoindre gajim@conference.gajim.org pour discuter avec nous.

Changements dans Gajim

Le chemin pour rendre Gajim disponible dans MacOS se poursuit : Grace à sebastiaanlokhorst, nous utilisons maintenant PyInstaller pour construire l’application (voir #9713), ce qui nous rapproche un peu plus d’une version Gajim pour MacOS. Des efforts sont faits pour automatiser le processus de construction, de sorte qu’il peut y avoir des builds MacOS automatisés similaires à la façon dont les builds Windows sont générés.

Alors que Dino a reçu le support de transfert de fichiers Jingle pendant le GSoC (grâce à hrxi), certains tests d’interopérabilité ont été effectués entre Dino, Conversations et Gajim. Les commentaires fournis par hrxi conduisent à certains corrections de bogues de transfert de fichiers Jingle (#9692, #9784) contribué par asterix.

Gajim affiche les reçus de livraison depuis longtemps. Les reçus de livraison sont affichés par une petite icône de coche à la fin d’un message dans la fenêtre de chat. lovetox a apporté quelques modifications à la façon dont ces icônes sont affichées. Cela impliquait également beaucoup de refactorisation du code et de correction de bogues sur la façon dont les reçus de message sont traités. Par conséquent, un bogue d’affichage où les messages corrigés afficheraient deux icônes de réception de message (#9278) a été corrigé. En plus de cela, la nouvelle logique d’affichage des icônes permet à Gajim d’afficher les erreurs de message directement dans l’infobulle du message correspondant (#8527). Auparavant, les erreurs de message étaient simplement affichés dans la fenêtre de chat sans contexte de message.

La nouvelle liste de salons utilise certaines fonctions PyGObject nécessitant au moins PyGObject (qui est python3-gi) 3.32.0. Cette version n’est pas encore disponible dans certaines distributions (par exemple Debian 10). L’ajout de PyGObject >= 3.32.0 en tant que dépendance a également permis de refactoriser les contrôles de dépendance de Gajim.

Qu’est-ce qui s’est passé d’autre :

  • Chat : la fonctionnalité FuzzyClock (heure approximative) a été supprimée
  • Console XML : Le sélecteur de compte pour l’envoi de XML a été ajouté
  • Fenêtre d’historique : l’appui sur Echap fermera désormais tous les résultats de recherche ouverts avant de fermer la fenêtre
  • Les messages de type « normal » (les messages simples) seront désormais toujours traités comme des messages de chat standards
  • Correction de bogue pour le défilement automatique des messages chiffrés (#9443)
  • Correction de bogue pour la correction de message lorsqu’aucun ChatControl n’est ouvert

Changements dans python-nbxmpp :

Dans un effort constant pour séparer l’interface graphique et les tâches de protocole/bibliothèque, lovetox a continué à refactoriser Gajim et python-nbxmpp. Dans ce processus, beaucoup de code est déplacé de Gajim à python-nbxmpp et vice versa. L’objectif est de modulariser le code pour les développements futurs et de simplifier la communication entre les deux.

Au cours de ce mois, python-nbxmpp a reçu le support des XEPs suivantes. Note : celles-ci étaient déjà prises en charge par Gajim, mais maintenant python-nbxmpp est capable de les gérer lui-même.

En outre, python-nbxmpp a reçu un correctif de bogue pour les JID invalides dans les messages entrants (#85).