Újdonságok fejlesztőknek

Az alábbi változások a GNOME 2.28 fejlesztői platformot használó fejlesztők számára fontosak. Ha nem érdeklik a fejlesztőket érintő változások, ugorjon az 6. szakasz ― Nemzetköziség szakaszra.

A GNOME asztali környezethez hasonlóan a GNOME 2.28 a GNOME fejlesztői platformot alkotó API és ABI stabil, keresztplatformos alkalmazások fejlesztésére használható GNU LGPL licencű programkönyvtárak legújabb kiadása is.

Elavult programkönyvtárak használatának felszámolása

A GNOME 3.0 kiadásával a GNOME különböző elavult részei eltávolításra kerülnek. Ezen elavult összetevők közé olyan programkönyvtárak tartoznak, mint a libart_lgpl, libbonobo, libbonoboui, libglade, libgnome, libgnomecanvas libgnomeprint, libgnomeprintui, libgnomeui és libgnomevfs. A GNOME asztali környezet részeként rendelkezésre álló alkalmazásokon az elavult kódok használatának megszüntetése érdekében számos karbantartási feladat került végrehajtásra. Ez segít biztosítani a zökkenőmentes átállást a GNOME 3.0-ra.

A fejlesztőket ezen példa követésére buzdítjuk a saját alkalmazásaikban. Ezen kívül a segíteni kívánó (akár leendő) fejlesztők számára a GNOME goals wikioldal felsorolja a még elvégzendő feladatokat. A JHBuild eszköz által támogatott modulokban hátralévő feladatokat összefoglaló, automatikusan generált és frissített állapotjelentés itt érhető el.

5.1. Platformtisztítás

Jelentős erőfeszítések történtek az elavult modulok és szolgáltatások eltávolítására a GNOME 3.0 felé vezető úton.

A GNOME 2.28-ban már nincsenek az esound, libgnomevfs, libgnomeprint vagy libgnomeprintui programkönyvtáraktól függő alkalmazások.

A GNOME platform egyéb fejlesztései a GNOME 2.28-ban:

  • A libart_lgpl függőség eltávolításra került két modulból (eog és gtkhtml).
  • A libbonobo(ui) függőség eltávolításra került öt modulból (gnome-control-center, gcalctool, gnome-media, gtkhtml és accerciser).
  • A libglade függőség eltávolításra került 28 modulból (accerciser, alacarte, gnome-control-center, dasher, empathy, gcalctool, gnome-games, gnome-netstatus, gnome-nettool, gnome-mag, gnome-menus, gnome-panel, gnome-power-manager, gnome-screensaver, gnome-session, gnome-settings-daemon, gnome-system-tools, gnome-utils, gtkhtml, hamster-applet, libgnomekbd, orca, pessulus, seahorse, vino, vinagre, yelp és zenity).
  • A libgnome függőség eltávolításra került 14 modulból (anjuta, gnome-control-center, dasher, evolution-webcal, gconf, gdl, gdm, gnome-desktop, gnome-media, gnome-system-tools, gok, gtkhtml, vino és yelp).
  • A libgnomecanvas függőség eltávolításra került három modulból (anjuta, gtkhtml és zenity).
  • A libgnomeprint(ui) függőség eltávolításra került egy modulból (gnome-games).
  • A libgnomeui függőség eltávolításra került 16 modulból (anjuta, gnome-control-center, dasher, deskbar-applet, gnome-mag, gnome-media, gnome-settings-daemon, gnome-system-tools, gnome-utils, gok, gtkhtml, hamster-applet, nautilus, orca, vino és yelp).
  • A libgnomevfs függőség eltávolításra került három modulból (dasher, gnome-mag és gnome-utils).
  • Számos modul szebb és tisztább fordítási kimenetet biztosít az AM_SILENT_RULES vagy Shave használatával való fordításkor. További információkért lásd: http://live.gnome.org/GnomeGoals/NicerBuilds
  • Néhány modul elkezdte használni a GIntrospectiont – további részletekért lásd: http://live.gnome.org/GnomeGoals/AddGObjectIntrospectionSupport

Számos alkalmazás eltávolította az elavult GTK+ és GLib szimbólumok használatát és alkalmazta a kizárólag a felső szintű GTK+- és GLib-fejlécek felvételének szabályát.

5.2. GTK+ 2.18

A GTK+ 2.18 a GNOME szívét alkotó GTK+ eszközkészlet legújabb kiadása. A GTK+ 2.18 új szolgáltatásokat biztosít a fejlesztők számára, valamint tartalmaz rengeteg hibajavítást és a GTK+ 3.0 előkészítéseként alapos nagytakarításon esett át.

A fájlválasztó számos tökéletesítésen esett át. Mostantól megjegyzi a rendezési állapotát és jobb alapértelmezéseket tartalmaz, például elrejti a mentési fájlokat és megjeleníti a Méret oszlopot. Az útvonalsávon a kihagyás módja is javult.

A GTK+ számos más fejlesztésen is átesett, ezek:

  • A GtkEntry felületi elemek használhatók folyamatjelző megjelenítésére is.
  • A GtkEntry immár tartalmaz modell-nézet elkülönítést.
  • A GtkLabel képes beágyazott URI-címek megjelenítésére.
  • A nyomtatás támogatja kiválasztott szakasz nyomtatását.
  • Az oldalbeállítási vezérlőelemek beágyazhatók a nyomtatási párbeszédablakba.
  • Az állapotikonok cím tulajdonságot kaptak a jobb akadálymentesítés érdekében.
  • Megjelent a GtkInfoBar nevű felületi elem, amely külön párbeszédablak helyett a főablakban jeleníti meg az üzeneteket.
  • A GTK lefordítható korszerű automake verzióval (az automake 1.7 többé nem szűkséges) és csendes módban a „make V=0” paranccsal.

5.3. GLib

A GNIO a GIO része lett, így mostantól az IPv4 és IPv6 címek kezelésére, gépnevek feloldására, fordított IP-kikeresésre, alacsony szintű foglalat I/O végzésére, valamint hálózati kapcsolatok és szolgáltatások kezelésére használható API-k is elérhetők.

A GArray, GMappedFile és GTree mostantól referenciaszámlálást használ.

A főciklus támogatja a szálankénti alapértelmezett kontextusokat.

Bekerült az írás-olvasás támogatása a GIOStream osztályhoz és alosztályaihoz.

A GLib mostantól tartalmazza a fájlonkénti metaadatok támogatását.

5.4. GNOME dokumentáció

A Yelpben és a gnome-doc-utils csomagban megjelent az új GNOME dokumentációs XML nyelv, a Mallard támogatása.

A dokumentációszerzők számára a Mallard egy teljes XML jelölőnyelv, kifejezetten témakör-központú súgó készítéséhez, a Docbooknál könnyebb tanulási görbével.

Az Empathy súgója az első Mallardban írt dokumentáció és az első dokumentáció, amely Creative Commons Share-Alike 3.0 licenc alá került; a későbbiekben minden GNOME dokumentáció ez alá fog kerülni.

5.5. GNOME Bluetooth

Bekerült a bővítmények támogatása és elérhető az eszközök beállításakor, így támogatva a GNOME alkalmazásokat Bluetooth eszközök használatában.

Korszerű Bluetooth-eszközválasztó felületi elemek jelentek meg.

5.6. Epiphany webböngésző

Az Epiphany Webkitre váltásával számos fejlesztési lehetőség nyílt meg az Epiphany fejlesztői előtt.

A WebKitGTK+ különösen gyors JavaScript-feldolgozást tartalmaz, kevesebb erőforrást igényel, rendelkezik GObject API-val és beépített webmegfigyelővel. Az Epiphany mostantól tartalmazza a Seed (JavaScript) kiterjesztések támogatását, ezzel együtt a Python támogatás eltávolításra került.

Az Epiphany a libsoup-ot használja a HTTP megvalósításához, emiatt a proxyk ugyanúgy működnek, mint a GNOME-ban mindenhol. A libsoup még hiányzó szolgáltatásai a HTTP-gyorsítótár és a tartalomkódolás.

Végül a webnézet helyi menüje még nincs az Epiphanyhoz igazítva, az alapértelmezett WebKit nézetet használja.

5.7. Időnyilvántartó kisalkalmazás

Minden funkció elérhető a megfigyelhető D-Bus API-n keresztül.

5.8. GNOME-Media

A GNOME-Media már nem támogatja a hangerősség-mérőt, a CDDB-t és a GNOME-CD-t.

5.9. Totem

A xine-lib háttérprogram eltávolításra került a Totemből, valamint aszinkron feldolgozási API került hozzáadásra.

5.10. Vinagre

A Vinagre, a GNOME távoliasztal-megjelenítője új bővítményrendszerrel bővült. Az új protokollok támogatása mindössze egy Vinagre bővítmény írását igényli. A Vinagre új, a VNC és SSH protokollokat támogató bővítményeket kapott.

5.11. Brasero

A Brasero programkönyvtára és segédprogramjai szétválasztásra kerültek a libbrasero-burn és libbrasero-utils alá.