-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi Gnucash developers,
Josselin Mouette announced to the Debian Developers the upcoming changes regarding the move to GTK 3.0 and Gnome 3. Apart from the Debian specific details his announcement contains several interesting bits relevant to the future of Gnucash too (read on the forwarded message below). What are the plans regarding the preparation of Gnucash for GTK 3.0 and GNOME 3? I think we should outline a schedule for a GTK 3.0 / GNOME 3 transition now. For this purpose we need to identify the needed changes and decide what is going to happen when -- maybe as release targets for the upcoming Gnucash releases. Or is anybody working on it already? Regards Micha - -------- Original Message -------- Subject: Preparing for GTK 3.0 and GNOME 3 Date: Mon, 06 Apr 2009 16:34:59 +0200 From: Josselin Mouette <j...@debian.org> To: debian-devel-annou...@lists.debian.org [ Re-posting to d-d-a so that everyone concerned gets the announcement.] Hi, although for various reasons (mostly ongoing transitions) we are quite late in packaging GNOME 2.26 in Debian, we should also look at the future. GTK+ 3.0 is planned around march 2010, and GNOME 3.0 a little while later. With them comes the final deprecation of many GNOME 2.X interfaces. It took a very long time (8 years!) to get rid of GTK+ 1.2 and the process is in its final stage now. I’d like to avoid this horrible mess for GTK+ 2.X and for the GNOME libraries that will stop being maintained upstream after the 3.0 release. Fortunately, GTK+ 3.0 is an evolutionary change, not a revolutionary one. Which means for some applications there will be zero porting work, and for most of them there will only be minor changes required. For GNOME libraries, the changes will be more radical. This concerns less applications, but several libraries will simply disappear. What you can do right now is start to work on packages using the GNOME library stack. For affected packages, you can start working on patches right now, or at least pester your upstream so that they do. Now for the various pieces. GLIB The changes in GLib will mostly concern in removing deprecated APIs. If your packages build with -DG_DISABLE_DEPRECATED -DG_DISABLE_SINGLE_INCLUDES, they are most likely to build with GLib 3.0 with only compilation changes. Removed functions have replacements described in the API documentation. GDK / GTK+ Same as GLib. If you can build your package with GTK+ 2.16 using -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES, it is very likely that your package can build with GTK+ 3.0. ESOUND Applications still using EsounD should be ported to using libcanberra (for sound events) or GStreamer (for the rest). GCONF There are plans to replace GConf by dconf, but it is quite certain that there will be at least a GConf compatiliby layer, so there is nothing to be done here. GNOME-VFS GnomeVFS has been deprecated for a while in favor of GIO, but porting is not something trivial. The GIO API documentation has some notes on how to port from GnomeVFS. LIBART It is now preferred to draw custom objects directly using Cairo, using the gdk_cairo_* API. LIBBONOBO / LIBBONOBOUI This part is completely going away, and it’s not easy. Replacing it generally means revamping parts of the application to use D-Bus for communication instead. LIBIDL / ORBIT ORBit will stay as a general-purpose CORBA implementation, but it is not meant to be used in GNOME applications anymore – currently its primary users are GConf and Bonobo. LIBGLADE Libglade is going away in favor of GtkBuilder. LIBGNOME This collection of random APIs with various uses is completely going away. The replacements are scattered among various libraries now: * GnomeProgram => GLib, libunique * gnome_execute_* => GLib (g_spawn) * gnome_gconf => GConf * gnome_help, gnome_url => GIO (g_app_info) * gnome_sound => libcanberra * Various stuff in GLib * More information: http://live.gnome.org/LibgnomeMustDie LIBGNOMEUI Same issue as with libgnome, the replacements depend on what the API is originally about. * gnome_init => GLib (GOption) * GnomeClient => Session management will be added to GTK+, it’s still missing AFAIK * The various widgets have replacements in GTK+ now. LIBGNOMECANVAS Deprecated in favor of libcairo. LIBEEL It has never been a widely used library, and it will be gone after 2.24. Replacements can be found in GTK+ for some widgets, for some others you will have to look at how it is now done in Nautilus. GTKSOURCEVIEW GtkSourceView 1.X is already deprecated, you should upgrade to GtkSourceView 2.X now. LIBGNOMEPRINT / LIBGNOMEPRINTUI Both deprecated in favor of gtk-unix-print (in GTK+) which is based on Cairo. LIBNAUTILUS-BURN It is going to be replaced with libbrasero-burn which has a very similar API. Now let’s get to work. FWIW, the end of the evolution transition should be tonight, so you’re going to see things move in the GNOME area really soon. Cheers, - -- .''`. Debian 5.0 "Lenny" has been released! : :' : `. `' Last night, Darth Vader came down from planet Vulcan and told `- me that if you don't install Lenny, he'd melt your brain. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAknbDEwACgkQWN0/4pnhQbSmXACg46DEjFh15pCGPRR8w3GWuP20 JtgAmwf2RIIL58AQb+7QISBzA6ix7XEt =xvde -----END PGP SIGNATURE----- _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel