Mozilla SeaMonkey już rok bez nowej wersji. Czy to koniec projektu?
Minął właśnie rok od wydania ostatniej wersji pakietu internetowego Mozilla SeaMonkey. Program ten, złożony z przeglądarki internetowej, klienta pocztowego, książki adresowej, edytora WWW oraz klienta czatu, jest bezpośrednim następcą porzuconej przeglądarki... Mozilla. Tak jest, zanim powstała Mozilla Firefox, istniała "zwykła" Mozilla, pakiet powstały wskutek uwolnienia kodu źródłowego aplikacji Netscape.
28.07.2019 | aktual.: 10.11.2019 23:38
Czym była Mozilla?
Powiedzieć o Mozilli, że jest klasyką oprogramowania PC to nic nie powiedzieć, jeżeli ktoś miałby o Mozilli tylko tyle do powiedzenia, dla dobra świata powinien nic już więcej o oprogramowaniu nie mówić. SeaMonkey, będące jej kontynuacją, dziedziczy bowiem olbrzymi tygiel wątków rozwoju internetu lat dziewięćdziesiątych, w jego kodzie kryje się kawał historii. W atmosferze nostalgicznego zachwytu legendarną przeglądarką łatwo jednak pomylić zasługi z rzeczywiście wartościową bazą kodową.
Rozwój Mozilli zatrzymał się, ponieważ to inny produkt fundacji okazał się sukcesem. Przeglądarka Firefox (zwana początkowo Phoenix), zaprojektowana jako lżejsza wersja ociężałego pakietu "all-in-one" zdobyła serca wielu internautów i stała się motywacją dla Microsoftu, by ponownie rozruszać rozwój Internet Explorera. Firefox miał być programem na nowe czasy: mniejszym, modularnym i pozbawionym klasycznych komponentów, z których nie korzystał internetowy mainstream. Paradoksalnie, właśnie czymś takim parę lat wcześniej miała być dla Netscape'a właśnie Mozilla...
SeaMonkey a Firefox
Firefox przyciągnął nie tylko użytkowników, ale i programistów. Mimo, że Mozilla miała pozbyć się ciężkiego i trudnego balastu, przepisując Netscape 5 w zasadzie od zera, rezultatem był pakiet wciąż zbyt trudny w rozwoju. Dlatego nowe funkcje pojawiały się głównie w Firefoksie, a Mozilla wlokła się w tyle. W końcu doszło do impasu i wiosną 2005 Fundacja Mozilla ogłosiła, że przestaje rozwijać Mozillę i zajmie się Firefoksem oraz Thunderbirdem. Jednocześnie obiecano zagwarantowanie infrastruktury dla potencjalnej społeczności, która wyrażałaby wolę kontynuowania prac nad klasycznym, zintegrowanym pakietem. Tak powstało SeaMonkey.
Choć dziś wygląda to jak zamierzchła przeszłość, przez długi czas różnice między Firefoksem a SeaMonkey nie były przełomowe i fundamentalne. Obie przeglądarki wykorzystywały silnik Gecko, język XUL i niemal identyczny mechanizm rozszerzeń. SeaMonkey było po prostu cięższe i mniej elastyczne. Używanie Firefoksa, Thunderbirda i ChatZilli różniło się od używania SeaMonkey głównie tym, że programy te nie były ujęte pod wspólnym parasolem.
Trudna wymiana kodu
Z biegiem czasu różnic było jednak coraz więcej. Pod presją Google oraz przeglądarki Chrome, zdobywającej popularność swoją wydajnością i integracją z usługami chmurowymi, Firefox zaczął wprowadzać coraz więcej zmian łamiących zgodność. Coraz więcej elementów stawało się zrośniętych np. z nowymi GUI (jak Australis) i ich przenoszenie stawało się coraz bardziej pracochłonne. Jednocześnie zainteresowanie Fundacji utrzymywaniem projektów pobocznych malało. Inwestując w chybione inicjatywy, Mozilla nie kwapiła się do wspierania SeaMonkey, a czasem rzucała kłody pod nogi nawet Thunderbirdowi. Rezultatem były coraz częstsze przestoje i problemy ze środowiskiem budowania, prowadzącym do pomijania niektórych wersji.
Przenoszenie zmian z Firefoksa stało się koszmarem. Choć sam "lisek" miał wtedy swoje problemy z innowacyjnością: przez lata nie udawało się wprowadzić do niego wieloprocesowości, pozwalającej na delegowanie oddzielnego procesu dla każdej wtyczki i karty. Gdy w końcu zakończono nad tym prace, wykonaną w ramach podprojektu Electrolysis, okazało się, że wprowadzenie zbliżonych zmian do SeaMonkey jest w zasadzie niewykonalne. Pogłębiło to jeszcze bardziej różnice między Firefoksem a SeaMonkey, co postępowało wraz ze wzrostem dojrzałości Electrolysis.
Quantum
Przypieczętowaniem losu pakietu SeaMonkey był projekt Quantum. Nowy Firefox usunął swój klasyczny mechanizm rozszerzeń, podczas gdy cały projekt dzielnie walczy nad całkowitym wyeliminowaniem użycia XUL i stosowaniem wyłącznie HTML5. SeaMonkey z kolei jest oparty w całości o XUL, nie sięgając przy okazji po "haki" w stylu Pale Moon. Stąd też adaptowanie nowych wersji Firefoksa stało się niemożliwe i SeaMonkey budowano w oparciu o gałąź 52 ESR, która ostatnie swoje wydanie miała właśnie 27 lipca 2018.
Wraz z rozwojem kodu Firefoksa, rozwijało się też jego środowisko budowania. SeaMonkey było więc zmuszone stworzyć i utrzymywać własny toolchain do budowania pakietu, co ze względu na rozmiary projektu nie mogło odbywać się ręcznie. Doprowadziło to do wielomiesięcznego paraliżu i braku infrastruktury pozwalającej wyprodukować binarną wersję przeglądarki. Nowy zestaw narzędzi, pracujący w chmurze Microsoft Azure (!), znajduje się obecnie na etapie stabilizacji.
Status projektu
Oznacza to, że mimo braku jednoznacznych decyzji w kwestii przyszłości, prace nad SeaMonkey trwają. W dalszym ciągu odbywają się regularne spotkania wydawnicze. Na podstawie sprawozdań możliwe jest nakreślenie następującego statusu projektu:
- Najbliższym wydaniem będzie 2.49.5, będące załataną wersją opartą o Firefoksa 52 ESR. Nie ukażą się już kolejne wersje z tej linii, ponieważ 52 ESR(https://www.mozilla.org/en-US/firefox/organizations/) zostało porzucone przez Mozillę i utrzymywanie jej jest zbyt kosztowne
- Następną wersją będzie 2.53, oparte o Gecko 56, czyli ostatnią wersję przed Quantum. Linia 2.53 jest utrzymywana głównie po to, by opracować metodykę wydawania nowych wersji podczas, gdy trwają prace nad stabilizacją SeaMonkey opartego o kolejne ESR Firefoksa, czyli 60.
- Wersja oparta o ESR 60 będzie się nazywać 2.57 i obecnie wiele elementów w niej działa niestabilnie lub nie działa w ogóle (np. komponent pocztowy). Docelowo linia ESR 60 będzie podstawą dla kolejnych wydań, mimo zbliżającego się porzucenia wsparcia przez Firefoksa w październiku
- Nie ma obecnie planów na dalsze wydania oparte o ESR68, ponieważ brakuje tam zbyt dużej ilości komponentów niezbędnych dla SeaMonkey. Niemniej, prace nad budowaniem z owej gałęzi trwają
- Numery wersji powyżej 49, znajdujące się w starym katalogu Nightly(http://ftp.mozilla.org/pub/seamonkey/nightly/latest-comm-central-trunk/), są przestarzałe i nie mapują się już na stan obecny w gałęziach 53 i 57 (innymi słowy, 2.58 ze starego Nightly jest starsze, niż obecne 2.53)
Przyszłość
Nie wygląda to kolorowo, ale przynajmniej powstało środowisko budowania. Wersje Nightly nie lądują na serwerze FTP archiwów Mozilli, istnieje jednak absolutnie nieoficjalna ścieżka dostępu do nich, w ramach pracy jaką wykonał Bill Gianopoulos. Nie da się nakreślić żadnego kalendarza wydawniczego. Nadchodząca wersja 2.49.5, choć naprawi błędy i odświeży projekt, dostarczy przeglądarkę opartą o przestarzałą i niewspieraną wersję. Na 2.53 przyjdzie zapewne poczekać kilka miesięcy, a wszelkie dalsze wersje mogą nie ukazać się nigdy. O wiele lepiej radzi sobie Pale Moon, acz kosztem głębszego oddalenia się od Firefoksa. Projekt ma zresztą bagaż własnych problemów, jak niedawny malware...
Czy świat będzie tęsknił za SeaMonkey, gdy budowanie kolejnych wersji okaże się niemożliwe? Raczej nie. Świat potrzebuje dziś nieco innych programów, niż monolityczne pakiety internetowe. Funkcjonalnie zaś Firefox i Thunderbird oferują znacznie więcej, SeaMonkey nie jest zatem aplikacją "przywracającą" jakieś "porzucone" komponenty. Niemniej, jako bezpośredni spadkobierca Netscape, jest ważnym elementem historii internetu i nieco żal patrzeć na jego koniec.
Czy używaliście SeaMonkey? A może pamiętacie jeszcze klasyczną Mozillę? Zapraszamy do dyskusji w komentarzach.