新しくなったこと 〜開発者向け〜

次に示す内容は GNOME 2.32 のプラットフォームを利用する開発者には知っておいてもらいたい重要な変更点です。この内容に特に興味がないのであれば、このセクションを飛ばして次の「セクション 5 - 国際化」をご覧ください。

この GNOME 2.32 はデスクトップだけではなく開発者向けのプラットフォームとしてもまた最新版です。GNU LGPL の下で利用できる API や ABI が安定した一連のライブラリは、クロス・プラットフォームのアプリケーション開発に利用できます。

非推奨のライブラリの利用

GNOME 3.0 から、非推奨な (Deprecated) さまざまな GNOME のパーツが削除されます。対象となるコンポーネントには libart_lgpllibbonobolibbonobouilibgladelibgnomelibgnomecanvaslibgnomeprintlibgnomeprintuilibgnomeuilibgnomevfs といったライブラリが含まれています。GNOME デスクトップの一部として提供されているアプリケーションに対しては「整理すべき項目の一覧」に従って、廃止になったコードの使用を無くしていく予定です。これにより GNOME 3.0 へのスムーズな移行を実現します。

開発者は自分のアプリケーションについて、このルールに従うことが強く求められています。なお、 この作業に関して何か手伝いたいと考えている開発者 (または挑戦してみたいと考えている開発者) のために、GNOME goals の Wiki には未だ完了していない作業の一覧が用意されています。JHBuild ビルド・ツールでサポートされているモジュールについては、残っている作業の概要が自動生成・更新されており、ここで見ることができます。

4.1. Glib 2.26

Glib 2.26 では、GConf を置き換える GSettings と GDBus のサポートを含んでいます。日付と時刻の API が GDateTime で利用可能です。Glib では dtrace や systemtap の静的マーカを新しくサポートしました。libexo などの GObject のプロパティ・バインディング、GSocket での proxy サポートです。他の改良点としては、ボックス化した型やポインタ型を実装するのに便利な新しいマクロ G_DEFINE_[BOXED|POINTER]_TYPE や、g_object_notify よりも高速な新しい関数 g_object_notify_by_pspec があります。

4.2. Anjuta

機能が多いソフトウェア開発スタジオで、IDE である Anjuta のプロジェクト管理、対話的デバッガ、ソースエディタ、バージョンコントロール GUI デザイナなどが更新され、新しい機能が追加されました。

Python および Vala が今や完全に Anjuta でサポートされ、calltips や 自動補完 ("インテリセンス") がサポートされました。

Anjuta のデバッガではプリティ・プリンティングがサポートされました。デバッグの際、既知のオブジェクトはユーザフレンドリな方法によって、GObject や C++ のクラスのように表示されます。最後に、シンボルデータベースが大幅に高速化されました。

4.3. その他の開発者向けの更新

GNOME 2.32 開発プラットフォームで更新された他の点としては、Empathy のメタコンタクト機能をサポートするライブラリである libfolks が追加されました。Devhelp では特定のブックを無効にすることができるようになりました。GTK+ ロードマップ が更新され、GTK+ 3.0 用のアプリケーションを準備できるようにするために開発者にとって必要なアクセサ関数が GTK+ 2.22 に追加されました。