Neues für Entwickler
Die folgenden Änderungen sind wichtig für Entwickler, welche die Entwicklungsplattform von GNOME 2.30 verwenden möchten. Wenn Sie dies nicht interessiert, können Sie direkt bei Abschnitt 6 ― Internationalisierung weiterlesen.
So wie für die GNOME-Arbeitsumgebung ist GNOME 2.30 auch die neueste Version der GNOME-Entwicklerplattform, einer Sammlung von API- und ABI-stabilen Bibliotheken, welche unter der GNU LGPL lizenziert sind und zur Entwicklung plattformübergreifender Anwendung genutzt werden können.
Ab GNOME 3.0 werden zahlreiche veraltete Teile von GNOME entfernt. Diese veralteten Komponenten sind unter anderem Bibliotheken wie libart_lgpl, libbonobo, libbonoboui, libglade, libgnome, libgnomecanvas, libgnomeprint, libgnomeprintui, libgnomeui und libgnomevfs. Für Anwendungen, die Bestandteil der GNOME-Arbeitsumgebung sind, wurden mehrere Aufräumaufgaben erstellt, um sicher zu stellen, dass kein veralteter Quelltext mehr verwendet wird. Dadurch wird ein reibungsloser Übergang zu GNOME 3.0 ermöglicht.
Allen Entwicklern wird empfohlen, diesem Beispiel bei ihren eigenen Anwendungen zu folgen. Weiterhin listet die Wiki-Seite GNOME goals verschiedene Aufgaben für Entwickler (oder potenzielle Entwickler) auf, die noch erledigt werden müssen. Eine automatisch erstellte und aktualisierte Übersicht über die noch verbleibende Arbeit bei Modulen, welche vom Skriptwerkzeug jhbuild verwendet werden, können auf einer extra Internet-Seite gefunden werden.
- 5.1. Plattformsäuberung
- 5.2. GTK+ 2.20
- 5.3. Empathy
- 5.4. Anjuta
- 5.5. Verbesserungen der GNOME-Plattform
5.1. Plattformsäuberung
Große Anstrengungen wurden unternommen, um veraltete Module und Funktionen in Vorbereitung auf GNOME 3.0 zu entfernen.
In vielen Modulen wurde weiterhin die Verwendung veralteter GTK+- und GLib-Symbole entfernt und die Richtlinie zum Verwenden der Top-Level-Header von GTK+ und GLib umgesetzt.
5.2. GTK+ 2.20
GTK+ 2.20 ist die aktuelle Version des GTK+-Toolkit, welches das Herz von GNOME bildet. Neben dem Hinzufügen einer Reihe neuer Funktionen für Entwickler wurden in GTK+ 2.20 zahlreiche Fehler behoben und eine Grundreinigung vorgenommen, um den Wechsel auf das anstehende GTK+ 3.0 zu vereinfachen.
Weitere Verbesserungen in GTK+ sind:
- Ein pulsierendes Widget, GtkSpinner, und die Zellendarstellung GtkCellRendererSpinner wurden hinzugefügt.
- GtkToolPalette ist ein neuer Container zur Anzeige von Werkzeugobjekten in einklappbaren Gruppen.
- GtkNotebook kann nun Aktions-Widgets neben den Karteireitern anzeigen.
5.3. Empathy
libempathy und libempathy-gtk wurden entfernt. Entwickler sollten stattdessen telepathy-glib verwenden.
5.4. Anjuta
Anjuta bringt nun eine verbesserte Code-Vervollständigung mit, einschließlich der Vervollständigung von ., -> und :: in C und C++.
Die Code-Vervollständigung läuft nun vollkommen asynchron ab, so dass Sie beim Tippen nicht mehr gestört werden.
Anjuta verfügt nun über Unterstützung für Vala-Symbole in der Symbolverwaltung, volle Unterstützung für Javascript einschließlich Code-Vervollständigung, Fehlerdiagnose und Erstellung, sowie grundlegende Unterstützung für Projekte, die nicht auf Automake basieren.
5.5. Verbesserungen der GNOME-Plattform
Weitere Verbesserungen an der Plattform von GNOME 2.30 sind:
- Aus Evolution und Evolution-Data-Server wurde Bonobo im Zuge der Zuarbeitung auf GNOME 3.0 vollständig entfernt. Evolution-Data-Server verwendet jetzt D-Bus für die gleichen Client-seitigen APIs.
- Brasero verfügt nun über Gobject-introspection-Unterstützung für libbrasero-media und libbrasero-burn.
- Die GNOME-Bildschirmlupe, gnome-mag, unterstützt D-Bus, da die Bonobo-Unterstützung veraltet ist.
- Devhelp verfügt nun über einen Vollbildmodus und und sucht auf library.gnome.org nach Symbolen, wenn diese lokal nicht gefunden werden konnten.
- Zu glib wurde GConverter hinzugefügt, eine generische Schnittstelle zur Umwandlung von Datenströmen. Threads werden nun automatisch aktiviert, wenn g_type_init() aufgerufen wird.
- Der GNOME-Schlüsselbunddienst verfügt nun über eine Plattform übergreifende, auf D-Bus basierende Speicher-API namens »Secret Service«.