THIS FILE IS RESERVED FOR TELLING USERS ABOUT MINOR API CHANGES WHICH
HAVE NOT RESULTED IN A NEW BINARY VERSION OF C++-GTK-UTILS BEING
ISSUED (A NEW BINARY VERSION WILL ALWAYS BE PROVIDED IF ABI
COMPATIBILITY MIGHT BE BROKEN OR IF ANY API CHANGE IS LIKELY TO HAVE
PRACTICAL EFFECTS).

VERSION 1.2.14

From version 1.2.14, by default './configure' will prepare the library
for compilation against GTK+3.  To compile the library against GTK+2,
use './configure-gtk2'.

VERSION 1.2.12

operator==(), operator!=() and operator<() for smart pointers
-------------------------------------------------------------

From version 1.2.12, operator==(), operator!=() and operator<() are
available for the comparison of GobjHandle, GvarHandle, IntrusivePtr,
SharedHandle, SharedLockHandle, SharedPtr and SharedLockPtr objects.

If user code provides such operators for these smart pointers itself,
a duplicated function definition will arise.  Because of this, these
functions will only be provided if the library is compiled with the
--with-smart-ptr-comp option, or if the user code defines the symbol
CGU_USE_SMART_PTR_COMPARISON before the header file for the smart
pointer is first parsed.  This does not affect binary compatibility
(version 1.2.12 onwards of the library is binary compatible with
earlier versions in the 1.2 series either with or without this option)

VERSION 1.2.10

Cgu::Callback::make() and Cgu::Callback::make_val()
---------------------------------------------------

From version 1.2.10, CallbackArg, FunctorArg and EmitterArg objects
can be constructed representing functions which are to take more than
one unbound argument using a TypeTuple struct.  Binary compatibility
of the library is maintained.

However, there are some corner cases where this may affect template
resolution using the Callback::make() and Callback::make_val()
functions, requiring user code to call static_cast<> in order
explicitly to disambiguate the function calls concerned.  (See
http://cxx-gtk-utils.sourceforge.net/TypeTuple.html for further
details.)

In order to allow code relying on the previous behaviour to continue
to compile without being modified to provide this disambiguation, with
version 1.2.10 onwards the library can be compiled with the
--with-type-tuple-args=no (or --without-type-tuple-args) option.  This
does not affect binary compatibility (version 1.2.10 onwards of the
library is binary compatible with earlier versions in the 1.2 series
either with or without this option), but if that option is used, the
number of unbound arguments with which Callback::CallbackArg objects
will be able to be called will be one.

VERSION 1.2.6

Cgu::basic_fdostream<>::close() and Cgu::basic_fdistream<>::close()
-------------------------------------------------------------------

Prior to version 1.2.6, these methods did not report a failure when
closing a stream.  From version 1.2.6, if the close fails then failbit
is set by calling std::basic_ios<>::setstate(std::ios_base::failbit).
This in turn means that if std::basic_ios<>::exceptions() has been
called to require std::ios_base::failure to be thrown on failbit, then
calling close() may result in a std::ios_base::failure object being
thrown, but not if exceptions() has not been called.

Cgu::basic_fdostream<>::attach() and Cgu::basic_fdistream<>::attach()
---------------------------------------------------------------------

From version 1.2.6, if any stream state flags were set when the attach
methods were entered (eofbit, failbit or badbit), then the attach()
methods will clear them.  Prior to that version, the user had to call
clear() explicitly in order to do so.

VERSION 1.2.2

Cgu::present_instance()
-----------------------

Users should be aware of one user-level change made in version 1.2.2.
Prior to version 1.2.2, Cgu::present_instance() would return 1 both in
a case of a dbus error (say, it was not possible to obtain a
connection on the session message bus) and in a case where the
PresentFunc callback returned FALSE.  From version 1.2.2, if the
PresentFunc callback returns FALSE (indicating an error in bringing
the program up), then Cgu::present_instance() returns 2.
