È stata pubblicata la prima versione sperimentale del client di messaggistica Pidgin 3.0 (2.90), che consente di lavorare simultaneamente su più reti con protocolli differenti e di passare tra le chat utilizzando le schede. Per ampliarne le funzionalità e aggiungere supporto a nuovi protocolli, possono essere utilizzati i plugin. Le build saranno preparate nel formato Flatpak (attualmente è disponibile solo l'archivio con il codice). Il secondo rilascio beta di Pidgin 3.0 è previsto per il 31 marzo.
La versione sperimentale proposta di Pidgin 3.0 ha la qualità di un'alpha preliminare e non è destinata all'uso quotidiano. La branch di Pidgin 3 è in fase di sviluppo dal 2011, e prima di ciò è stata discussa per tre anni a livello di concetti e idee. Inizialmente, si prevedeva di rilasciare Pidgin 3.0 alla fine del 2016, ma lo sviluppo ha subito dei ritardi. La migrazione del progetto al sistema di tipi GObject si è rivelata più laboriosa del previsto. Ad esempio, ci sono stati problemi imprevisti nella riscrittura del codice per la gestione dei segnali a causa della mancanza di funzionalità necessarie in GLib.
Gli sviluppatori hanno anche tentato di utilizzare WebKit per visualizzare la cronologia delle chat, ma hanno poi abbandonato questa idea in favore della creazione di una propria libreria per gestire l'input e la cronologia delle chat. Molto tempo è stato speso per migliorare l'API — l'API in Pidgin 2 si basava su protocolli obsoleti come AIM/ICQ, non permetteva di identificare singoli messaggi e non supportava funzionalità come reazioni, discussioni ad albero, modifica e cancellazione dei messaggi. Inizialmente, era stato deciso di migliorare l'implementazione esistente dell'API per queste funzionalità, ma questa si è rivelata una scelta errata e dopo tentativi falliti l'API ha dovuto essere ricreata da zero.
Tra le novità di Pidgin 3 si segnala il passaggio a GTK4 e Adwaita, la definizione degli elementi dell'interfaccia tramite GTK Builder XML, l'adozione del sistema di tipi GObject, la nuova libreria di widget Talkatu per la visualizzazione della cronologia delle chat, una riscrittura completa dell'API, l'uso del sistema di build Meson, l'implementazione di GPlugin per la gestione dei plugin, e la memorizzazione della cronologia delle chat in SQLite, con la migrazione delle impostazioni a GSettings.
Tra i cambiamenti nell'interfaccia si segnala la cessazione della fornitura del client console Finch (non è escluso che possa essere restituito in futuro) e la fusione in un'unica finestra dell'elenco dei contatti e delle finestre delle chat. Nella branch 3.0 è attualmente supportato solo il protocollo IRCv3, ma sono in corso lavori per nuove implementazioni dei protocolli XMPP e Bonjour. L'interfaccia richiede ulteriori affinamenti. La nuova branch non è compatibile con Pidgin 2 e i plugin creati in precedenza, ma può essere installata in parallelo con le installazioni esistenti di Pidgin.


Fonte: opennet.ru
