Biblioteka programistyczna GLib została wydana w wersji 2.16. GLib jest niskopoziomową biblioteką narzędziową dedykowaną dla programistów związanych ze środowiskiem GNOME. W wersji 2.16 zaszły istotne zmiany względem poprzednich wydań, dlatego postanowiłem poświęcić jej newsa.
Oto lista najważniejszych zmian:
- Nowe moduły GIO oraz GVFS:
- GIO to warstwa abstrakcji oparta o system typów GObject, pozwalająca dokonywać operacji wejścia/wyjścia na lokalnym systemie plików. Pozwala na synchroniczne i asynchroniczne operacje na plikach, dostęp do metadanych plików, przeglądanie zawartości katalogów czy nawet montowania zasobów.
- GVFS jest zewnętrznym modułem zależnym od GLib i GIO (podobnie jak GObject i GThread) obsługującym wirtualne systemy plików. GVFS ma zastąpić wysłużoną bibliotekę gnome-vfs, która doczekała się wielu słów krytyki. GVFS, w odróżnieniu od gnome-fvs, oferuje abstrakcyjne, jednolite i przyjazne dla programisty API. Dzięki licznym “backendom” będziemy mogli przy pomocy tego modułu korzystać z: FTP, SFTP, CIFS, HTTP i innych protokołów. GFVS wykorzystuje D-Busa do komunikacji pomiędzy procesami.
- Dodatkowe informacje:
- GChesksum pozwala obliczać sumy kontrolne z wykorzystaniem algorytmów: MD5, SHA-1 oraz SHA-256
- GTest – framework do testów
- Ponadto rozszerzono możliwości obecnie dostępnych funkcji, poprawiono wiele błędów (i pewnie popełniono wiele nowych 😉 ) oraz zaktualizowano tłumaczenia.
Z wprowadzeniem z GVFS i GIO związane są istotne zmiany w środowisku GNOME i domyślnej przeglądarce plików Nautiliusie. Wspomniane moduły zastąpią w całości dosyć niefortunne rozwiązanie, jakim jest gnome-vfs. Zmiany w bibliotece GLib powinny poprawić wydajność operacji dyskowych i tym samym zwiększyć wydajność środowiska GNOME.
Ten filmik pokazuje jak zachowuje się Nautilus po integracji z GIO.
Zainteresowani mogą przejrzeć listę zadań, związanych z rozwojem GIO i GVFS oraz ich integracja z innymi projektami.