Société Element acquiert Gitter au GitLab, pour adapter le service à un environnement de réseau fédéré Matrix. C'est le premier grand messager qui est prévu pour être transféré de manière transparente dans un réseau décentralisé avec tous les utilisateurs et l'historique des messages.
Gitter est un outil de communication centralisé libre pour les développeurs. En plus des fonctionnalités typiques d'un chat d'équipe, qui ressemblent à celles d'un outil non libre Slack, Gitter fournit également des outils pour une intégration étroite avec des plateformes de développement collaboratif telles que GitLab et GitHub. Dans le passé, le service était propriétaire, jusqu'à ce qu'il soit acquis par la société GitLab.
Matrix est un protocole libre pour la réalisation d'un réseau fédéré, construit sur un graphe acyclique d'événements (DAG). La principale réalisation de ce réseau est un messager avec un support de cryptage de bout en bout et de VoIP (appels audio et vidéo, conférences de groupe). Les implémentations de référence des clients et des serveurs sont développées par la société commerciale Element, dont les employés dirigent également l'organisation à but non lucratif Matrix.org Foundation, qui supervise le développement de la spécification du protocole Matrix.
Actuellement, les utilisateurs de Gitter et de Matrix communiquent à l'aide d'un « pont » matrix-appservice-gitter, relayant les messages entre eux. Lorsqu'un message est envoyé, par exemple, de Gitter à un chat connecté à Matrix, le « pont » crée un utilisateur virtuel pour l'expéditeur de Gitter sur le serveur Matrix, au nom duquel le message est livré dans le chat du côté de Matrix, et vice versa. La connexion de cette intégration est possible directement depuis les paramètres de chat du côté de Matrix, mais ce mode de communication sera marqué comme obsolète.
À court terme, les utilisateurs ne remarqueront aucun changement visible : ils pourront utiliser le messager comme auparavant. Par la suite, le processus de transformation d'un service centralisé en un sujet décentralisé de la fédération sera réalisé grâce à l'organisation d'un nouveau serveur Matrix et à l'intégration du « pont », à l'instar de matrix-appservice-gitter, directement dans la base de code de Gitter. Les discussions existantes sur Gitter seront accessibles en tant que salles Matrix, comme « #angular_angular:gitter.im », avec un historique des messages importé.
Après une intégration réussie, les utilisateurs des deux réseaux bénéficieront mutuellement : les utilisateurs de Matrix pourront communiquer en toute transparence avec les utilisateurs de Gitter, tandis que les utilisateurs de Gitter pourront utiliser les clients de Matrix, comme les applications mobiles, car le développement des applications officielles de Gitter a été arrêté. En fin de compte, on pourrait considérer que Gitter deviendra l'un des clients du réseau Matrix. Mais, malheureusement, Gitter est nettement inférieur en termes de fonctionnalités par rapport au client de référence de Matrix — Element, c'est pourquoi plutôt que de ramener Gitter à un niveau de fonctionnalité égal à celui d'Element, il a été décidé d'implémenter toutes les fonctionnalités manquantes de Gitter dans Element. À long terme, Gitter sera remplacé par Element.
Parmi les fonctionnalités utiles de Gitter, qui peuvent être adaptées pour Element :
- Haute performance lors de la consultation de discussions avec un nombre important d'utilisateurs et de messages ;
- Intégration étroite avec les plateformes de développement collaboratif, comme GitLab et GitHub ;
- Un répertoire hiérarchique de discussions ;
- Une vue statique amicale pour les moteurs de recherche des discussions publiques ;
- Support de la notation en KaTeX ;
- Branchement des messages en arbre (threads).
La société Element promet que le frontend de Gitter sera remplacé par Element uniquement lorsque Element atteindra un niveau de fonctionnalité égal. D'ici là, la base de code de Gitter sera maintenue à jour sans régressions fonctionnelles.
Les employés de Gitter travailleront également au bénéfice d'Element.
Source : linux.org.ru
