Foi publicado o primeiro lançamento experimental do cliente de mensagens instantâneas Pidgin 3.0 (2.90), permitindo trabalhar simultaneamente em várias redes com diferentes protocolos e alternar entre chats através de abas. Para ampliar a funcionalidade e adicionar suporte a novos protocolos, podem ser utilizados plugins. As compilações serão preparadas no formato Flatpak (no momento, apenas o arquivo com o código está disponível). O segundo lançamento teste do Pidgin 3.0 está previsto para 31 de março.
O lançamento experimental proposto do Pidgin 3.0 apresenta qualidade de versão alfa preliminar e não é destinado a uso cotidiano. O ramo Pidgin 3 está em desenvolvimento desde 2011, e antes disso, foi discutido por mais três anos em nível de conceitos e ideias. Originalmente, o lançamento do Pidgin 3.0 estava previsto para o final de 2016, mas o desenvolvimento se prolongou. A transição do projeto para o sistema de tipos GObject revelou-se mais trabalhosa do que o esperado. Por exemplo, surgiram problemas imprevistos na reestruturação do código para o tratamento de sinais devido à falta da funcionalidade necessária no GLib.
Os desenvolvedores também tentaram usar o WebKit para exibir o histórico de chats, mas depois abandonaram a ideia em favor da criação de sua própria biblioteca para o processamento de entradas e históricos de chats. Muito tempo foi gasto na melhoria da API — a API no Pidgin 2 baseava-se em protocolos antigos como AIM/ICQ, não permitia identificar mensagens individuais e não suportava recursos como reações, discussões em árvore, edição e exclusão de mensagens. Inicialmente, foi decidido aprimorar a implementação existente da API para esses recursos, mas essa foi uma decisão errada e, após tentativas mal sucedidas, a API precisou ser recriada do zero.
Entre as mudanças no Pidgin 3, destaca-se a transição para GTK4 e Adwaita, a definição de elementos de interface utilizando GTK Builder XML, a adoção do sistema de tipos GObject, a nova biblioteca de widgets Talkatu para exibir o histórico de chats, uma reestruturação completa da API, o uso do sistema de construção Meson, a adoção do GPlugin para o gerenciamento de plugins e o armazenamento do histórico de chats em SQLite, além da transição das configurações para GSettings.
As mudanças na interface incluem a descontinuação do cliente de console Finch (não está descartada uma possível volta no futuro) e a unificação em uma única janela da lista de contatos e das janelas de chat. Na versão 3.0, atualmente, apenas o protocolo IRCv3 é suportado, mas já estão em andamento trabalhos para novas implementações dos protocolos XMPP e Bonjour. A interface precisa de mais refinamento. A nova versão é incompatível com o Pidgin 2 e com plugins criados anteriormente, mas pode ser instalada paralelamente às instalações existentes do Pidgin.


Fonte: opennet.ru
