What's New for Developers

The following changes are important for developers using the GNOME 2.30 developer platform. If you're not interested in changes for developers, you can skip forward to Раздел 6 ― Интернационализация.

As well as the GNOME Desktop, GNOME 2.30 is the latest release of the GNOME Developer Platform, a set of API- and ABI-stable libraries available under the GNU LGPL which can be used for the development of cross-platform applications.

Исключение устаревших библиотек

Starting with GNOME 3.0, various deprecated parts of GNOME will be removed. These deprecated components include libraries such as libart_lgpl, libbonobo, libbonoboui, libglade, libgnome, libgnomecanvas, libgnomeprint, libgnomeprintui, libgnomeui, and libgnomevfs. For applications that ship as part of the GNOME Desktop, a number of cleanup tasks have been carried out to ensure no deprecated code is used. This will ensure a smooth transition to GNOME 3.0.

Разработчикам настоятельно рекомендуется следовать этому примеру в своих приложениях. Кроме того, для любых разработчиков (или потенциальных разработчиков), которые хотят нам помогать, на вики-странице цели GNOMEulink> / ulink>.

5.1 Очистка платформы

На пути к GNOME 2.30 были приложены большие усилия по удалению устаревших модулей.

Многие приложения перестали использовать устаревшие символы GTK+ и GLib и используют новую политику: включать заголовки GTK+ и GLib только верхних уровней.

5.2 GTK+ 2.20

GTK+ 2.20 is the latest release of the GTK+ toolkit, which is at the heart of GNOME. GTK+ 2.20 includes new features for developers, as well as extensive bug fixing and housecleaning for the upcoming GTK+ 3.0.

В GTK+ также были внесены и другие улучшения:

  • A throbber widget, GtkSpinner, and cell renderer, GtkCellRendererSpinner have been added.
  • GtkToolPalette is a new container to show tool items in collapsible groups.
  • GtkNotebook can now have action widgets next to tabs.

5.3 Empathy

libempathy and libempathy-gtk have been removed and developers should use telepathy-glib instead.

5.4 Anjuta

Anjuta features improved code completion, including completion of ., -> and :: in C and C++.

Code completion is now completely asynchronous so it won't disturb you any more while you are typing.

Anjuta now supports Vala symbols in the symbol manager; full JavaScript support including code completion, debugging and building; and basic support for non-automake projects.

5.5 GNOME Platform Improvements

Other GNOME Platform improvements in GNOME 2.30 include:

  • Evolution and Evolution-Data-Server have completely removed Bonobo in anticipation of GNOME 3.0. Evolution-Data-Server now uses D-Bus behind the same client-side APIs.
  • Brasero now has GObject-introspection support for libbrasero-media and libbrasero-burn.
  • The GNOME Magnifier, gnome-mag, supports D-Bus as Bonobo support is deprecated.
  • Devhelp now has a fullscreen mode and will look for symbols on library.gnome.org when the symbols are not found locally.
  • GLib has added GConverter, a generic interface for streaming data conversion. Threads are now enabled automatically when g_type_init() is called.
  • gnome-keyring has implemented a new "Secret Service" cross-desktop password storage D-Bus API.