Zaloguj się

Jog Jajcusia

xmpp:jajcus@jajcus.net

Powrót na stronę główną

Wreszcie jest nowy transport GG

Od jakiegoś czasu do źródeł transportu GG włączona jest biblioteka libgadu (na dostępnych pakietach z libgadu nie można polegać). W libgadu ostatnio znaleziono poważne błędy, więc trzeba było ją uaktualnić. Przy tej okazji zajrzałem do kodu transportu GG... i wreszcie się porządnie za niego zabrałem, co w rezultacie dało dzisiejsze wydanie wersji 2.2.0.

Od wersji 2.1.0 zmieniło się wiele. Większość jeszcze w lutym. Najważniejsze zmiany to:

  • Wspomniane już włączenie libgadu do źródeł transportu.
  • Ignorowanie wybranych numerków.
  • Ustawianie osobnych statusów dla GG, można też ustawić specjalny status używany podczas niedostępności i niewidzialności.
  • Wywalenie całkiem zmiany haseł. Stary kod i tak nie działał z nowym protokołem (wymagającym czytania kodów z obrazków), a nowy protokół byłby dość niepraktyczny w implementacji.
  • Kupa różnych poprawek.
  • I chyba najważniejsze: obsługa subskrypcji obecności per-kontakt. Teraz powinny działać listy prywatności, ustawianie online/offline dla konkretnych użytkowników, jednokierunkowe subskrypcje (ja go widzę, a on mnie nie) itp.

Z ostatnim punktem związana jest pewna niedogodność: po upgrade'zie użytkownicy będą musieli potwierdzić autoryzację dla każdego swojego kontaktu z GG. To może być bardzo dużo klikania. Użytkownicy niektórych serwerów mają już to za sobą, więc dobrze wiedzą o co chodzi.

Z poprawek wspomnieć mogę np. rezygnację z używania GIOChannel do czegoś, do czego się zupełnie nie nadają (śledzenie aktywności na sockecie obsługiwanym przez coś innego niż GLib), czy wywalenie zupełnie niepotrzebnego (a pełnego błędów) buforowania danych zapisywanych do strumienia XMPP. Ta druga zmiana podobno spowodowała znacznie zmniejszenie obciążenia w dużych (tysiące zarejestrowanych użytkowników) instalacjach transportu. A to buforowanie miało niby być optymalizacją... Poza tym usunąłem ileś memleaków i innych błędów wykrytych przez Valgrinda.

Wersja z wczorajszego wieczora już podobno całkiem stabilnie działała, a ja mam nadzieję, że dzisiaj nie tylko poprawiłem kilka kolejnych błędów, ale i nie wprowadziłem żadnych nowych. Jednak, jak znam życie, to pewnie za chwilę dostanę parę bugreportów dotyczących jakiś nowych (a może i starych) i strasznie głupich błędów. Jeśli tak, to postaram się szybko wydać poprawioną wersję, jeśli nie, to pewnie kolejne wydanie będzie za jakiś rok albo i później.


Komentarze

Movi

24 lipca 2005 18:46:48

Czy pomyka to już na którymś z serwerów tak że można przetestować?

Jajcus

24 lipca 2005 18:49:00

U mnie jest 2.2.0, a na autocomie dość świeży kod z SVN. Na chrome od jakiegoś czasu chodzi fork z częścią opisanych zmian (bez kontroli obecności per-kontakt i poprawek z ostatnich trzech dni).

listek

24 lipca 2005 19:06:17

hmm... czas na konto na autocom'ie :D

dragonee

24 lipca 2005 19:58:58

Od jakiejś pół godziny temu i na Chrome. ;]

Movi

24 lipca 2005 20:00:11

Właśnie ;)

Paszczak000

24 lipca 2005 20:16:33

Napiszę kilka słów. Podziwiam takich ludzi jak Ty. Kolejnych sukcesów w klepaniu kodu ;-)

Movi

24 lipca 2005 20:18:18

A jaka jest szansa żebyś napisał jakiś fajny interface do przesyłania plików Jabber <-> GG ? Tzn dopisał to do transportu :)

listek

25 lipca 2005 00:15:27

Movi: myślę że szansa jest mała bo wtedy pliki musiałyby przechodzić przez transport (czyt. serwer na którym stoi transport). Nawet gadu_dot_com sobie nie mogli na to pozwolić i pliki są przesyłane bez pośrednictwa serwer'a, a co dopiero biedne, nieopłacane serwery jabber'a...

listek

25 lipca 2005 00:16:23

btw, mogłem sobie napisać skrypt do autoryzacji kontaktów z gg bo tyle klikania to drobna przesada... ale już po krzyku ;)

Movi

25 lipca 2005 01:18:25

listek : no właśnie o tym myślałem ;) Ale rozumiem, że nawet z limitem wysyłania byłby to overkill dla serwera.

listek

25 lipca 2005 01:22:01

choć w zasadzie można coś takiego napisać... w końcu transport do gg możesz mieć na własnym kompie... wtedy musi to być tylko ładnie konfigurowalne jakie jid'y mogą korzystać z transportu, jakie mogą przesyłać pliki, itp...
o ile serwer jabber'a musi być stale włączony (odbieranie wiadomości podczas bycia offline) to transport gg może być włączony gdy tylko chcemy z niego korzystać, czyli zwykle gdy włączamy komputer... hm...
może by jednak dopisać przesyłanie plików ;)

Pawel

25 lipca 2005 14:12:52

Nie chciał by być mądrzejszy od autora, ale chyba chodzi o wersję 2.2.0, a nie 2.2.2 :> (no, że czegoś nie wiem :).

Jajcus

25 lipca 2005 14:15:55

Pawel: racja, dzięki. Ciekawe, że nikt wcześniej tego nie zauważył... :-)

Dodaj nowy komentarz

Dostępne jest formatowanie Textile

Podpis:
Treść:
Strona WWW (opcjonalnie):
Wpisz kod:code
 
 

Śledzenie komentarzy (RSS) TrackBack URI


Jesteście obserwowani...