http://www.gtk.org/
Information about mailing lists can be found at
- http://www.gtk.org/mailinglists.html
+ http://www.gtk.org/mailing-lists.html
To subscribe: mail -s subscribe gtk-list-request@gnome.org < /dev/null
(Send mail to gtk-list-request@gnome.org with the subject "subscribe")
See the file 'INSTALL'
+Notes about GLib 2.32
+=====================
+
+* It is no longer necessary to use g_thread_init() or to link against
+ libgthread. libglib is now always thread-enabled. Custom thread
+ system implementations are no longer supported (including errorcheck
+ mutexes).
+
+* The thread and synchronisation APIs have been updated.
+ GMutex and GCond can be statically allocated without explicit
+ initialisation, as can new types GRWLock and GRecMutex. The
+ GStatic_______ variants of these types have been deprecated. GPrivate
+ can also be statically allocated and has a nicer API (deprecating
+ GStaticPrivate). Finally, g_thread_create() has been replaced with a
+ substantially simplified g_thread_new().
+
+* The g_once_init_enter()/_leave() functions have been replaced with
+ macros that allow for a pointer to any gsize-sized object, not just a
+ gsize*. The assertions to ensure that a pointer to a correctly-sized
+ object is being used will not work with generic pointers (ie: (void*)
+ and (gpointer) casts) which would have worked with the old version.
+
+* It is now mandatory to include glib.h instead of individual headers.
+
+* The -uninstalled variants of the pkg-config files have been dropped.
+
+* For a long time, gobject-2.0.pc mistakenly declared a public
+ dependency on gthread-2.0.pc (when the dependency should have been
+ private). This means that programs got away with calling
+ g_thread_init() without explicitly listing gthread-2.0.pc among their
+ dependencies.
+
+ gthread has now been removed as a gobject dependency, which will cause
+ such programs to break.
+
+ The fix for this problem is either to declare an explicit dependency
+ on gthread-2.0.pc (if you care about compatibility with older GLib
+ versions) or to stop calling g_thread_init().
+
+Notes about GLib 2.30
+=====================
+
+* GObject includes a generic marshaller, g_cclosure_marshal_generic.
+ To use it, simply specify NULL as the marshaller in g_signal_new().
+ The generic marshaller is implemented with libffi, and consequently
+ GObject depends on libffi now.
+
+Notes about GLib 2.28
+=====================
+
+* The GApplication API has changed compared to the version that was
+ included in the 2.25 development snapshots. Existing users will need
+ adjustments.
+
+Notes about GLib 2.26
+=====================
+
+* Nothing noteworthy.
+
+Notes about GLib 2.24
+=====================
+
+* It is now allowed to call g_thread_init(NULL) multiple times, and
+ to call glib functions before g_thread_init(NULL) is called
+ (although the later is mainly a change in docs as this worked before
+ too). See the GThread reference documentation for the details.
+
+* GObject now links to GThread and threads are enabled automatically
+ when g_type_init() is called.
+
+* GObject no longer allows to call g_object_set() on construct-only properties
+ while an object is being initialized. If this behavior is needed, setting a
+ custom constructor that just chains up will re-enable this functionality.
+
+* GMappedFile on an empty file now returns NULL for the contents instead of
+ returning an empty string. The documentation specifically states that code
+ may not rely on nul-termination here so any breakage caused by this change
+ is a bug in application code.
+
Notes about GLib 2.22
=====================
Notes about GLib 2.20
=====================
-^ The functions for launching applications (e.g. g_app_info_launch() +
+* The functions for launching applications (e.g. g_app_info_launch() +
friends) now passes a FUSE file:// URI if possible (requires gvfs
with the FUSE daemon to be running and operational). With gvfs 2.26,
FUSE file:// URIs will be mapped back to gio URIs in the GFile
Otherwise, enter a new bug report that describes the patch,
and attach the patch to that bug report.
-Patches should be in unified diff form. (The -up option to GNU
-diff.)
+Patches should be in unified diff form. (The -up option to GNUdiff.)