2.21.5 (unstable):

    This release is a release candidate for 2.22.0.  As such, some unfinished
    API has been disabled (notably the network IO classes that we were not able
    to finish in time).  Also, a few documentation-related fixes.

    Daniel Elstner (5):
          Remove sigc from the Doxygen excluded symbols
          Sanitize the Glib::Cond usage example
          Officially deprecate GLIBMM_CHECK_PERL macro
          Delete obsolete MAINTAINERS file
          Implement Gio::Socket ctors using Gio::Initable

    Jonathon Jongsma (2):
          Add Network I/O classes to new documentation module
          disable network io stuff.  punt to next release


2.21.4.2 (unstable):

    This release corrects a mistake in the build setup which prevented
    the installation of the gmmproc code generation support files.

    Daniel Elstner (1):
          Always build tools/ subdirectory (bgo #593518, Vincent Untz)

2.21.4.1 (unstable):

    Daniel Elstner (4):
          Reenable hierarchy graphs for each class
          Remove header and footer HTML fragments
          Use shared mm-common Doxygen style sheet

2.21.4 (unstable):

    Daniel Elstner (59):
          Transition to new mm-common build infrastructure

    José Alburquerque (1):
          Correct the if condition in Gio::MemoryInputStream::add_data().


2.21.3 (unstable):

    David King (1):
          Only compile the properties example if properties are enabled.

    Jonathon Jongsma (10):
          fix release target to use correct tagging scheme
          Bug 587173 - Fails to install when bootstrapped with Automake 1.11
          add _IGNORE() for a eject_with_operation() which is hand-written
          add get_start_stop_type() and Gio::DriveStartStopType enum
          add overloads for resolver methods without a cancellable object
          add async versions of Resolver methods
          Added a simple example showing how to resolve an internet address from a hostname
          Fix MemoryInputStream::addData (Bug #589683)
          Fix a build error in MemoryInputStream
          Add Glib::ObjectBase::freeze_notify()/thaw_notify.  Fixes Bug #575533

    José Alburquerque (1):
          Repair Glib::KeyFile docs with regard to exceptions. Bug# 587766.

    Krzesimir Nowak (1):
          Wrapped several ISO 8601 related functions.

    Murray Cumming (1):
          Corrected the ChangeLog to mention changes that I accidentally committed in last month, but which I did want to commit some time.

2.21.2 (unstable):

Glib:
    Daniel Elstner (1):
          Treat empty Glib::spawn*() working dir as unset

    Jonathon Jongsma (1):
          Add OptionGroup::add_entry(.., double&)

Gio:
    Daniel Elstner (1):
          Remove stray semicolons

    Jonathon Jongsma (9):
          Fix build with glib from master
          wrap a couple added GDrive methods
          Wrap g_drive_eject_with_operation() and related functions
          implement GDrive::stop-button signal
          implement Gio::InetAddress::get_native_size()
          Implement Gio::Mount::mount/eject_with_operation()
          implement Gio::Volume::eject_with_operation()
          fix accidental bug in Gio::Drive::eject() that the compiler warned me about
          implement Gio::VolumeMonitor::drive-stop-button

2.21.1 (unstable):

Glib:
* Date: Constructor: Check for invalid dates.
  (José Alburquerque)
* Added Glib::ValueArray, for use in gstreamermm.
  (José Alburquerque)
* Added Glib::file_set_contents().
  (Jonathon Jongsma)
* gmmproc:
  - Avoid problems with spaces in _DEFS() calls.
  (Hubert Figuiere) Bug #586785.
  - Improve guessing of the *_get_type() function names from enum names. 
	(José Alburquerque) Bug #575870.
  
Gio:
* Cancellable: Added connect() and disconnect().
* Added FileIOStream.
* Added InetAddress.
* Added Initable.
* Added IOStream.
* Added NetworkAddress.
* Added NetworkService.
* Added Resolver
* Added Socket.
* Added SocketAddress.
* Added SocketConnectable.
* Added SrvTarget.
  (Jonathon Jongsma)
* File::load_contents() Added overload without the etag_out parameter. 
  (Hubert Figuiere) Bug #581349.

Windows Build:
* General Windows fixes.
* Fix the build directly from git.
(Armin Burgmeier)
  
2.20.0 (stable):

* Documentation fixes (Daniel Elstner)

2.19.8 (unstable):
(2.19.4 to 2.19.8 were skipped)

* Added FILE_CREATE_REPLACE_DESTINATION enum value.
* Added Error::TOO_MANY_OPEN_FILES error code.
* Fix some compiler warnings about extra ;s.
  (Murray Cumming)

2.19.3 (unstable):

* New API:
  * BufferedInputStream: buffer_size property
  * BufferedOutputStream: buffer_size, auto_grow properties
  * DataInputStream: byte_order, newline_type properties
  * DataOutputStream: byte_order property
  * FilterInputStream: close_base_stream property, get/set_close_base_stream()
  * FilterOutputStream: close_base_stream property, get/set_close_base_stream()
  * UnixInputStream: fd and close_fd properties, get_fd(), get/set_close_fd()
  * UnixOutputStream: fd and close_fd properties, get_fd(), get/set_close_fd()
* Make licenses consistent with eachother (library gpl vs. lesser gpl, etc)
  (Deng Xiyue)
* Fixed some problems when building with exceptions disabled (Murray Cumming)
* Build fixes (Theppitak Karoonboonyanan)

2.19.2 (unstable):

* File: Added make_directory_with_parents() method overload with no parameter.
  Bug #566003 (Philip Belemezov).
* NoteTree: Do not use a non-ASCII dash character in a comment, to 
  avoid the MSVC++ warning C4819 with Visual Studio 2008.
  (Tao Wang) Bug #568072
* spawn_*() functions: Added alternative API for when 
  GLIBMM_EXCEPTIONS_ENABLED is not enabled. (Murray Cumming)
  Bug #565487 (Jonathon Jongsma)
* uri_*() functions: Fix memory leak.
  (Jonathan Jongsma) Bug #566845 (Jason Kasper)
* ustring: Add an overload which takes only a format string and no arguments 
  to be substituted. (Daniel Elstner) Bug #506394.

2.19.1 (unstable):

 * Fix accidental ABI breakage in 2.19.0 caused by adding default handlers for
   new Gio::Drive signals

2.19.0 (unstable):

 * wrapped new glib 2.19.x API
   * Gio::AppInfo: get_commandline(), can_delete(), do_delete(),
     reset_type_associations(), launch_default_for_uri()
   * Gio::Drive: new signals changed, disconnected, and eject_button
   * Gio::Icon: create(std::string), to_string()(),
   * Gio::Mount: guess_content_type_sync(), is_shadowed(), shadow(), unshadow()
   * Gio::content_type_from_mine_type();
   * Gio::DesktopAppInfo: create_from_keyfile()
   * Gio::Emblem: new class
   * Gio::EmblemedIcon: new class
   * Gio::MemoryOutputStream: new class
 * Bugs Fixed:
   * 555743 - warning in glibmm
   * 562716 - warning fixing cause more warnings.
   * 396963 - Add Glib::signal_idle().connect_once()
 * Thanks to contributions from Przemysław Grzegorczyk, Dave Foster, Hubert
   Figuiere, and Jonathon Jongsma for changes in this release

2.18.1 (stable):

 * Many windows build improvements
 * Bugs fixed:
   * 506410 - Call of overloaded Stringify is ambiguous
   * 529496 - Gio::Error::HOST_NOT_FOUND clashes with a netdb.h #define
   * 539891 - Can't use doxygen commands in *_override.xml
   * 555576 - name clash in fileinfo.h with winbase.h from VS2005
   * 556315 - Extra defs generation utility forgets to generate signals for inter...
   * 556387 - FileEnumerator::next_file reference counting problems
 * Thanks to contributions from Armin Burgmeier, Jonathon Jongsma, José
   Alburquerque, Murray Cumming, and Szilárd Pfeiffer

2.18.0 (stable):

 * Bug #550789: Fixed a licensing issue with some of the tools distributed with
   the source tarball (Murray Cumming)

2.17.3 (unstable):

 * More Glib::NodeTree improvements (Szilárd Pfeiffer, Murray Cumming)
 * Windows build fixes (Armin Burgmeier)

2.17.2 (unstable):

 * Changes to API that was added in this unstable series:
   * Glib::Tree (wrapper around GNode) renamed to Glib::NodeTree  to avoid
     confusion with GTree
   * pass the node to the traversal the callback (Szilárd Pfeiffer)
   * Move TraverseFlags inside the NodeTree class (Murray Cumming)
 * New API:
   * Added the drive_eject_button signal (Murray Cumming)
 * Bug Fixes:
   * #423990: glibmm et al don't recognize new GNU m4 (Damien Carbery)
   * #529496: Gio::Error::HOST_NOT_FOUND clashes with a netdb.h #define (Murray
     Cumming)
   * #523043: Initialization of Glib::ObjectBase for derived types should be
     mentioned in documentation (Moritz Ulrich)
   * #506410: Call of overloaded Stringify is ambiguous (Szilárd Pfeiffer,
     Murray Cumming)

2.17.1 (unstable):

  * New API: (Murray Cumming)
    * Gio::File: make_directory_with_parents(), query_file_type(), monitor().
    * Gio::FileEnumerator: get_container().
    * Gio::Mount: guess_content_type() and guess_content_type_finish().
    * Gio:ThemedIcon: prepend_name().
    * Gio::Volume: get_activation_root().
  * Bug Fixes:
    * #512348: provide documentation about threadsafety of
      Glib::Thread::create() when the slot object is of type sigc::trackable (Chris Vine)
    * #538803: minor fixes to Glib::Tree (Levi Bard)
    * #540656: Pass NULL in a couple functions instead of an empty string allow
      files to be overwritten (Armin Burgmeier)
    * #540875: add documentation for Glib::OwnershipType (Johannes Schmid)
    * #542929: Fix some compiler warnings (Benjamin Herr)
    * Fix AppLaunchContext::get_display(),
      AppLaunchContext::get_startup_notify_id() to use a list of Gio::File, not
      filepath string.  properly documented we know that this is correct. It's an
      API break but this function could nothave worked before. (Murray)
    * Bug #543292: Fix visual studio project file (Jens Georg)
  * Added Keyfile example (Murray Cumming)

2.17.0 (unstable):

  * Added copy constructor and assignment operator, made GDate constructor visible (José
    Alburquerque)
  * Added Glib::Tree, a wrapper for GNode, providing an N-ary tree container, more or
    less like a standard C++ container (Levi Bard)
  * Bug #529648 - give helpful warning message when library user forgets to initialize the
    library (Jonathon Jongsma)
  * Bug #529533 - Fix bug that prevented for Gio::Mount, Gio::Drive, and Gio::Volume from
    being wrapped for some backend implementations (Jonathon Jongsma)

2.16.2 (stable):

 * Bug 526831 – G_OPTION_REMAINING no longer works with OptionEntry (Murray
   Cumming)
 * Bug 527687 – ustring::erase(iterator) incorrect for non ascii character
   (Murray Cumming)
 * add API documentation for spawn_* functions (Murray Cumming)
 * fix possible memory leak in OptionEntr (Murray Cumming)

2.16.1 (stable):

* Reference-counting bugfix in Gio::File::create() and Gio::File::replace()
  (Murray Cumming)
* Include Gio::Error header in headers that have API that can throw this
  exception (Murray Cumming)
* Improve documentation (Murray Cumming)
* Build fixes for giomm on win32 (Jonathon Jongsma)
* fix warning with g++ 4.3 (Tim Retout)

2.16.0 (stable):

Changes compared to glibmm 2.14:

* New Gio API. Check for giomm-2.4 with pkg-config to use this.
  (Marko Anastasov, Jonathon Jongsma, José Alburquerque, Murray Cumming)
* New Glib::Checksum class.
  (Naveen Verma, Murray Cumming)
* New uri helper functions: uri_unescape_string(), uri_parse_scheme(), 
  uri_escape_string().
  (Murray Cumming)

2.15.8 (unstable):

* File: load_contents(), load_contents_finish(),  load_partial_contents_finish(): 
  Use char*& instead of char** for contents.
  Use std::string& instead of char**  for etag_out.
  Added method overloads without cancellable.
  (Murray Cumming)
* Improved documentation: Mention exceptions instead of errors.

2.15.7 (unstable):

* File:
  - Added query_filesystem_info_async() and 
  query_filesystem_info_finish() because these were added to the C API.
  (Murray Cumming)
  - Renamed contains_file() to file_has_prefix() because this was changed in the 
  C API.
  (Wouter Bolsterlee)
* ThemedIcon: Added append_name() because this was added to the C API.
  (Murray Cumming)

Glib:
* Renamed uri_get_scheme() to uri_parse_scheme() because this was changed 
  in the C API.
  (Wouter Bolsterlee)

Documentation:
* Corrections to the .devhelp file generation.
  (Jonathon Jongsma. Bug #518673)


2.15.6 (unstable):

Gio:
* Removed most vfuncs, because they are not useful to application developers, 
  and are a likely source of errors. (Murray Cumming)
* DesktopAppInfo:
  - Added Added create(), create_from_file(),
    is_hidden() and set_desktop_env()
    Renamed new_from_file() to create_from_file().
    (José Alburquerque)
* File: equal(), get_relative_file(), contains_file(): Take const File 
  parameters.
* FileAttributeInfoList: Added dup().
* MemoryInputStream: Added add_data(const void* data, gssize len).
* Mount: Really added signals.
* MountOperation: Wrapped the ask-question signal.
  (Murray Cumming)
* Volume:
  - Added should_automount().
    (Marko Anastasov)
  - Really added signals.
    (Murray Cumming)
* UnixOutputStream, DataOutputStream, DataInputStream: Made constructors 
  protected.
  (Marko Anastasov)


Documentation:
* Install a devhelp file like the existing gtkmm one.
  (Jonathon Jongsma)

2.15.5 (unstable)

Gio:
* File, Mount, Volume:
  Updated for latest gio API changes, adding a MountFlags parameter to some 
  methods.
  (Jonathon Jongsma)
* Volume, VolumeMonitor, Added some vfuncs, though we might remove these 
  later as they seem useless and likely to be sources of problems.
  (Murray Cumming)

Glib:
* Actually install gi18n-lib.h
  (Takao Fujiwara. Bug #515133)

2.15.4 (unstable):

Glib:

* AppInfo: Added  vfuncs.
  (Jonathon Jongsma)
* Added BufferedOutputStream, DataInputStream and DataOutputStream, and 
  FilterOutputStream.
  (Jonathon Jongsma)
* Cancellable: Added the signal.
  (Murray Cumming)
* Added ContentType functions.
  (Jonathon Jongsma)
* File:
  - Added overloads of create_file(), remove(), trash(), 
    make_directory(), make_symbolic_link(), query_settable_attributes(), 
    query_writable_namespaces(), query_filesystem_info(),  
    query_default_handler() and mount_mountable(() without cancellable 
    parameters.
    (Murray Cumming)
  - Added copy_attributes(), added mount_enclosing_volume(), 
    mount_enclosing_volume_finish(), find_enclosing_mount(), and 
    find_enclosing_mount_finish().
    (Murray Cumming)
  - set_attributes_from_info(): Reordered parameters so we can have default 
    values.
    (Murray Cumming)
  - Added copy_async(), with overloads without slot_progress. copy_finish(), 
    query_default_handler().
    (Marko Anastasov)
  - find_enclosing_mount(), append_to(): Reordered parameters and added 
    overloads without cancellable.
    (Murray Cumming)
  - Added non-cancellable set_attribute_string(), set_attribute_byte_string(), 
    set_attribute_{uint32, int32, uint64, int64}.
    (José Alburquerque)
* Added FilenameCompleter.
  (Murray Cumming)
* LoadableIcon:
  - Derive from Icon, and no longer derive FileIcon from Icon directly.
  (Murray Cumming)
  - Wrapped some vfuncs and some extra methods.
  (Jonathon Jongsma)
* Added MemoryInputStream.
  (Jonathon Jongsma)
* Added ThemedIcon
  (Murray Cumming)
* Added UnixInputStream, UnixOutputStream, and DesktopAppInfo, available only 
  on Unix/Linux.
  (José Alburquerque, Murray Cumming)
* Volume: Added get_mount(), get_identifier(), enumerate_identifiers().
  (Marko Anastasov)
* VolumeMonitor: Added signals and properties. 
  (Murray Cumming)

Build:
* Use local gmmproc files again, instead of only installed ones.
  (Murray Cumming)
* Fix compile with GCC 4.3.
  (Kjartan Maraas)


2.15.3 (unstable):

Gio:
* FilterInputStream: Really wrap this.
* VolumeMonitor: Workaround a crash in gio due to the 
  eccentric use of the GType system to discover GVolumeMonitor 
  implementations. See gio bug #511814.
* Added Gio::Error exception.
* Added more method overloads without optional parameters, and 
  reordered more parameters to allow default values. 
  (Murray Cumming)
* giomm.h: Added includes.
  (Jonathan Jongsma)

* Note that there are some examples in the gtkmm-documentation module.


2.15.2 (unstable):

Glib:

* Checksum: New class, wrapping GChecksum.
  (Naveen Verma. Bug #510235)
* ObjectBase: Added connect_property_changed_with_return() 
  because connect_property_changed() does not return a sigc::connection.
  Bug #433984 (Philip Langdale, Kalle Vahlman).
* enums.pl .defs generator: Handle parantheses.
  (Marko Anastasov. Bug #498621)

Gio:
* Added FilterInputStream, Mount, FileMonitor, VolumeMonitor.
  (Marko Anastasov, Murray Cumming)
* Many methods' parameters have been reordered so we can 
  add default parameter values.
* Many methods now have overloads with less parameters.
  (Murray Cumming, José Alburquerque, Marko Anastasov)


2.15.1 (unstable):

Gio:
* Actually build the giomm library.
* Added API reference documentation.
  (Murray Cumming)
* Added AppInfo and AppLaunchContext.
* Drive:
  - Added poll_for_media() and poll_for_media_finish().
  - Added capability-checking functions.
  (Marko Anastasov)
* File: Renamed create() to create_file(), 
  create_async() to create_file_async() and 
  create_finish() to create_file_finish() to slightly 
  reduce confusion with the static create*() methods.
* FileInputStream, FileOutputStream: Derive from Seekable.
  (Murray Cumming)
* FileInputStream, InputStream, Volume: Modified *_finish 
  functions to take a const AsyncResult.
  (Marko Anastasov)
* Added LoadableIcon.
  (Murray Cumming)
* MountOperation: Added MountOperationResult enumeration and make 
  reply() take this instead of a bool.
  (Jonathon Jongsma)

  (Murray Cumming)
 
Glib:
* Added uri_unescape_string(), uri_get_scheme() and uri_escape_string().
  (Murray Cumming


2.15.0 (unstable):

* New giomm library (check for giomm-2.4 with pkg-config) 
  in the glibmm tarball. This wraps the new gio API in glib 2.15/16.
  However, this API could change considerably before the stable 
  glibmm 2.16 is released.
  (Marko Anastasov)
* ustring:
  - Added compose() to substitute placeholders in a format string, as an 
  equivalent to sprintf(), to help internationalization/translation.
  - Added format() to simplify the common task of converting a value 
  (such as a number) to a string, with optional stream formatting 
  parmatters. This uses the regular C++ stream API in its implementation.
  (Daniel Elstner, Openismus)
* Glib::RefPtr: Deprecate clear(), replacing it with 
  reset(), because people often do treemodel.clear() when they 
  mean treemodel->clear(). reset() is consistent with std::auto_ptr<>.
  But the method is still there so the compiler still can't help 
  you to avoid the mistake.
  (Murray Cumming)
* KeyFile: set_integer_list(),  set_boolean_list(), set_double_list() 
  actually work now without crashing.
  (Daniel Elstner, Openismus)
* gmmproc:
  - Refuse to generate a wrapper for a construct-only 
  property which is also write-only, and display a warning.
  (Daniel Elstner, bug #436789)
  - Added _DERIVES_INITIALLY_UNOWNED to sink floating 
  references in constructor of classes that wrap 
  GInitiallyUnowned-derived GTypes. Plus _INITIALLY_UNOWNED_SINK 
  for hand-written constructors.
  (Murray Cumming)
* Build:
- Fix build for glib 2.15 by including 
  gtestutils.h instead of gmessages.h to get g_assert(), 
  though I am angry that this API break has been allowed.
  (Murray Cumming)
- Fix build for pre-releases of gcc 4.3 - also an include 
  issue. (Sebastien Bacher, #498438)

2.14.2:

* Build: Hopefully fix the build on NetBSD-4.99.6/amd64.
  Bug #386990. (was already in 2.12.7) (Murray Cumming)
* gmmproc: Added support for the new _CONFIGINCLUDE() macro.
  (Armin Burgmeier)

2.14.1:

* Glib::wrap(): Don't fail when wrapping an interface that 
  is implemented by an unrecognized type.
  gmmproc-generated code now uses the new wrap_auto_interface(), 
  so newly-generated source code will require this latest glibmm 
  version.
* Increase version number check for glib.
  (Rémi Cardona)

2.14:

Changes sinze 2.12:

* New Regex class, allowing string searching with regular expressions.
  (Murray Cumming, Daniel Elstner)
* New KeyFile class.
  (Rob Page, Jonathan Jongsma, Murray Cumming)
* Main: Added SignalTimeout::connect_seconds().
  (Murray Cumming)
* OptionContext: Added get/set_summary(), get/set_description(), 
  set_translation_domain() and set_translate_func().
  (Jonathan Jongsma)
* Added Glib::get_user_special_dir(), get_user_data_dir(),
  get_user_config_dir(), and get_user_cache_dir().
  (Jonathan Jongsma, Murray Cumming)
* Improved documentation.
  (Johannes Schmid, Jonathan Jongsma, Ralf Stephan)

2.14.0:

* Regex:
  - Add escape_string().
  - match_full(): Rename to match().
  - match_all_full(): Rename to match_all().
  - split_full(): Rename to split().

2.13.9:

* KeyFile: Added Added get_double(), set_double(), get_double_list() 
  and set_double_list().
  (Murray Cumming)

2.13.8:

* OptionContext: Added get/set_summary(), get/set_description(), set_translation_domain(),
  and set_translate_func().
  (Jonathon Jongsma)
* Documenation:
  Added RegEx class documentation. (Johannes Schmid)
  Show new API in 2.14.

2.13.7:

* Regex: Added a create() method and added default parameter values.
  Added a simple example.
* Added  SignalTimeout::connect_seconds(), in addition to the existing 
  SignalTimeout::connect(), as a wrapper of g_timeout_add_seconds().
  Improveed the documentation.
* Added get_user_special_dir().
  (Murray Cumming)

2.13.6:

* Added Glib::Regex, an API for doing regular expression search/matching.
  This is not fully wrapped yet, but the simple versions of the API are there.
  We need to write an example for this.
  (Murray Cumming)

2.13.5:

* Correctly ifdef-out initialization of deprecated classes.
  (Johannes Schmid, Openismus)
* Build: Cope with newer m4 versions. (Yselkowitz)

2.13.4:

* Correct initialization when using --disable-deprecated for reduced code-size 
  on embedded devices. (Johannes Schmid, Openismus)
* Glib::ObjectBase::is_derived_() is now public, though it is still only for 
  internal use. This allows us to do some optimization of default signal handlers and 
  vfuncs.
  (Armin Burgmeier, Openismus)
* Options: Don't overwrite default arguments. This change was lost in 
  March 2006, but now it is back.
  (Armin Burgmeier)
* Dispatcher: Several minor implementation improvements. (Daniel Elstner)
* ustring: Minor improvements. (Daniel Elstner)
* Documentation: Actually use the signals documentation again.
  (Armin Burgmeier, Openismus)
* Build:
  - Fix code generation when using the latest m4, and functions named 
  mkstemp, as experienced on Ubuntu Feisty.
  Bug #397167 (Dodji Seketeli, Daniel Elstner)
  - helperlist.h: Avoid warnings about a shadowed member.
  Bug #420316 from Bradley Bell.
  - utility.h: Avoid a warning about a redundant declaration.
  Bug #420339 from Bradley Bell.

2.13.3:


* Glib::ObjectBase::is_derived_() is now public, though it is still only for 
  internal use. This allows us to do some optimization of default signal handlers and 
  vfuncs.
  (Armin Burgmeier, Openismus)
* Build:
  - helperlist.h: Avoid warnings about a shadowed member.
  Bug #420316 from Bradley Bell.
  - utility.h: Avoid a warning about a redundant declaration.
  Bug #420339 from Bradley Bell.
* gmmproc improvements:
  - gmmproc: Allow () in property and signal docuemntation.
  - gmmproc: Do not try to remove a common prefix from the 
  C enam values, if there is no common prefix.
  - enum.pl: Allow whitespace in front of an enum typedef. 
  (Daniel Elstner)
  - enum.pl: Fix an infinite loop.
* ObjectBase: Added connect_property_changed(), 
  as an alternative to use when the property proxies are not 
  available because GLIBMM_PROPERTIES_ENABLED is not defined.
  (Murray Cumming)
* Value: When registering float parameters, use 
  G_MAXFLOAT as the minimum, instead of G_MINFLOAT.
  Likewise for doubles.
  (Oliver Nittka)

2.13.2:

*Build:
 - Fix for api-default-signal-handlers option.
   Bug #357830 (Matt Hoosier)
 - win32: Remove unused source file from Visual Studio project.
   (Cedric Gustin)

2.13.1:

* KeyFile class added, wrapping GKeyFile, 
  for parsing of .ini-style files.
  (Rob Page)
* Added get_user_data_dir(), get_user_config_dir(), and 
  get_user_cache_dir().
  (Jonathon Jongsma)
* Support optional ifdef parameters in the .hg macros, 
  to allow, for instance the --enable-atk=no option, 
  to disable the build and use of the atkmm API, 
  for use in embedded environments.
  (Johannes Schimd, Murray Cuming, Openismus)
* Documentation: 
  - Small ustring reference documentation improvement.
  (Ralf Stephan)

2.12.0:

Changes sinze 2.10:
* Added the --enable-api-default-signal-handlers option, for use in 
  embedded environments that have reduced resources. See configure --help 
  for the other subsets.
* Value: Added init(const GValue*), so we can copy GValue instances 
  of any type at runtime. Needed by the new branch of libgdamm.

2.11.3:

* Build: Added the --enable-api-default-signal-handlers option, for use in 
  embedded environments that have reduced resources. See configure --help 
  for the other subsets.

2.11.2:

* Date: Fix implementation of Glib::Date::set_time_current() so
  that it doesn't set the date to Dec 31, 1969.
  (Jonathon Jongsma)
* Value: Added init(const GValue*), so we can copy GValue instances 
  of any type at runtime. Needed by the new branch of libgdamm.
  (Murray Cumming)
* Added a #warning to warn about including X11/Xlib.h before a glibmm header, 
  which would break things. Bug #316726 from Mert Tugcu and Javeed Shaikh.
  (Murray Cumming)
* Build: 
  - Quote some m4 macros to avoid warnings. Bugs (with patches) #347076 
  and #347077
  (Kevin McBride).
  - Fix exporting of get/set_property() on mingw32-gcc.
  (Cedric Gustin)




2.10.1

* Windows Build:
 - Define GLIBMM_DLL when building with mingw32 or cygwin, 
   because it is needed by gtkmm. Bug #309030
 (Cedric Gustin)
* OptionGroup: Allow default values, by not initializing them all.
  (Armin Burgmeier)
* Slight code size reduction by marking private functions as static.
  (Murray Cumming)

2.10.0:

* Windows Build:
 - ustring.h: Tag npos with GLIBMM_API, in order to
   dllexport it on win32. Bug #332438.
 - Updated MSVC++ build files and README, for MS Visual Studio 2005.
 (Cedric Gustin)
* gmmproc code generator: 
 - WRAP_METHOD() Take an extra optional argument: deprecated deprecationtext - 
  so that we can insert the appropriate doxygen tag in the documentation, where 
  the C documentation does not do it for us.

2.9.1:

* Date:
  - Added set_time(time_t), set_time(GTimeVal), and deprecated  
    set_time(GTime)
  - Added set_time_current().
  (Murray Cumming)
* Build: Added --enable-deprecated-api  option. When set to disabled, 
  it does not build deprecated API. This reduces the size of the 
  library, and might be useful for embedded devices.
  (Murray Cumming)

2.8.2:

* Solaris build fix: Correct the detection 
  of make. (Mark Rouchal)

2.8.1:

* Build: Check for glib 2.8.

2.8.0:

API additions since glibmm 2.6:

* GModule: Add BIND_LOCAL enum value.
  (Bug #172748 from Phillip Neiswanger).
* MainContext Added signal_child_watch()
  and examples/child_watch.
  (Yair Hershkovitz)
* OptionEntry: Added FLAG_NO_ARG, FLAG_FILENAME, 
  FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values.
  (Murray Cumming)

2.7.3:

* Updated reference documentation from glib documentation.

2.7.2:

* OptionEntry: Added FLAG_NO_ARG, FLAG_FILENAME, 
  FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values.
* build_filename() and build_path(): Now use the implementation 
  from glib.

2.7.1:

* GModule: Add BIND_LOCAL enum value.
  (Bug #172748 from Phillip Neiswanger).
* MainContext Added signal_child_watch()
  and examples/child_watch.
  (Yair Hershkovitz)
* Fixes from 2.6.2.

2.6.1:

* Interface::add_interface(): Disabled the check for a second call, 
  introduced in 2.6.0, for now, because it stops some valid uses.
  (Bryan Forbes)

2.6.0:

New stable version. Changes compare to glibmm 2.4.x:

* Added Option, OptionContext, OptionGroup for parsing of command-line arguments.
* Added filename_display_basename() and filename_display_name().
* Added setenv() and unsetenv().
* add_interface() methods will no longer give warnings if you 
  call them twice.
* gmmproc:
  - Now reuses C properties documentation.

2.5.6:

* add_interface() methods will no longer give warnings if you 
call them twice.
* gmmproc: Output properties documentation taken from the .defs.
* examples now build on AIX.
  (Murray Cumming)
* MSVC++ .Net 2003 build fix. (Cedric Gustin)

2.5.5:

* Now builds with the following compilers, in addition to 
the existing GNU g++, and Intel compilers:
- SUN Forte CC 5.5
- IBM AIX xlC v7
- Tru64 C++ V6.5-042
- IRIX MIPSpro 7.4.2m
  (Older versions of all these compilers might also work.)
  (Murray Cumming, www.thewrittenword.com)
* Now builds with MSVC++ .Net 2003 (gtkmm 2.4 already did).
  (Cedric Gustin)
  
2.5.4:

Options:
* Added Option(GOptionGroup* cast_item) constructor,
  needed by Gtk::Main.
* Added reference documentation.
(Murray Cumming)

2.5.3:

* Options:
  - Allow parsing of boolean arguments (arguments with no value).
  - Really use the short names.  
  (Daniel Holbach, Murray Cumming)
* Added filename_display_basename() and filename_display_name().
  (Murray Cumming)
* Added setenv() and unsetenv(). (Murray Cumming)
* Use static keyword to prevent exporting private API.
  (Benoît Dejean)
* input example: Improvements and simplification. (Chris Vine) 

2.5.2:

* OptionEntry: Remove useless enum. (Murray Cumming)
* Documentation:
  - examples: Added iochannel_stream example. (Chris Vine)
  - reference: Generate more reference API from the C documentation, and
    try to use the libstdc++ doxygen tags file to link to their 
    documentation. (Murray Cumming)

2.5.1:

* OptionContext, OptionGroup, OptionEntry: Made the add_entry() methods 
  type-safe and fixed several problems memory-management problems. This 
  API is now worth looking at.

2.5.0:

* Added OptionContext, OptionGroup, and OptionEntry classes, for
  parsing of command-line options. See examples/options/

2.4.4:

* Signals: Avoid crashes when disconnecting a signal when handling that signal.
  (Murray Cumming, Martin Schulze)
* 
2.4.3:

* Minor improvements to reference documentation. (Daniel Elstner)
* Minor Glib::Dispatcher improvements (Daniel Elstner)

2.4.2:

* Glib::Dispatcher: win32 implementation rewritten, and hopefully, improved.
  (Daniel Elstner)
* Glib::ustring:
  - Optimization and code-cleanup. (Daniel Elstner)
  - Added reference documentation for constuctors. (Murray Cumming)
* Fixed some compiler warnings.
  (Daniel Elstner)
* gmmproc: Some improvements for libgdamm. (Murray Cumming)


2.4.1:

* Build fixes for gcc 3.4.0.
* Doxygen not required when building from tarballs.
  (Murray Cumming)


2.4.0:

Changes since 2.2.0:

* Now separate from gtkmm, so you can use things like Glib::ustring without depending on gtkmm. This glibmm 2.4 API installs in parallel with gtkmm 2.0/2.2, so you can install applications which use either.
* When using pkg-config, you should check for "glibmm-2.4".
* Glib::ObjectBase inherits virtually from SigC::Object, allowing multiple inheritance with other classes that inherit from SigC::Object.
* RefPtr:
  - is_null() was removed, to encourage you to use "== 0" instead.
  - operator=(CppObject*) was removed.
* The gtkmmproc code-generator is now gmmproc, and has several improvements to support gtkmm 2.4.
* Now uses improved libsigc++ 2.0 API.
* Added i18n.h and i18n-lib.h, which include the relevant
  glib headers, which declare internationalization 
  macros such as _().
* New methods:
  Glib::spawn_close_id(), Glib::MainLoop::depth(),
  Glib::Date::clamp_min(),  Glib::Date::clamp_max(). 
* Improved documentation.

 
2.3.8:

* Fix crash when using Glib::Main signals.
  (Martin Schulze)
* Corrected the configure-time SUN compiler check.
  (Murray Cumming, Alexander Nedotsukov)

2.3.7:

* Added configure macros to detect SUN compiler oddities.
* Various SUN Forte C+ and g++ 3.4 (cvs) build fixes.
  (Murray Cumming)
* gmmproc: Improved parsing of C docs.
  (Hagen Moebius)

2.3.6:

* Added i18n.h and i18n-lib.h, which include the relevant
  glib headers, which declare internationalization 
  macros such as _(). (Murray Cumming)
* Added Glib::spawn_close_id(). (Murray Cumming)
* Added Glib::MainLoop::depth(). (Murray Cumming)
* Documentation: corrections to CHANGES (Martin Schulze).
* gmmproc: Can now handle "const const_iterator& iter"
  parameter names without getting confused by 2 consts.
  (Murray Cumming)

2.3.5:

* glibmm now uses libsigc++ 2 rather than libsigc++ 1.2.
 
2.3.4:

* ListHandle/SListHandle (intermediate container types):
  - Added a const_cast<> to allow lists of const elements.
* gmmproc: _WRAP_SIGNAL(): Added optional custom_c_callback 
  parameter.
  (Murray Cumming)
* WIN32: Build fixes, mostly merged from the 2.2 branch.
  (Cedric Gustin) 
 
2.3.3:

* gmmproc (code generator)
  - properties: Make read-only properties have const accessors,
    and add a second read-only const accessor for normal
    properties. Wrap construct-only properties as read-only,
    instead of ignoring them.
  - vfuncs: Really generate const vfuncs when requested. Put
    the method declaration directly into the .h file, so that
    the doxygen documentation can be next to it.
  - documentation:
    - Remove mergecdocs configure option - always
    merge the C docs, to avoid any risk of uploading or
    releasing empty documentation. Just delete the *_docs.xml
    files to make building from cvs faster.
    - Install a GLIBMM_CHECK_PERL() macro, for use by gtkmm
    and other *mm projects, to get the perl path needed by
    doxygen.
    - Install beautify_docs.pl so it can be reused in gtkmm
    and other *mm projects, instead of having lots of copies.
* Glib::ObjectBase: The default constructor, never before used,
  now generates a custom GType, for use when creating new
  implementations of Glib::Interfaces - for instance, see the
  new custom tree model example in gtkmm.
* Glib::Date: Added clamp_min() and clamp_max().
  (Murray Cumming)

* Documentation:
  - Added reference documentation for MainLoop, MainContext, 
    Source, and Date. (Alberto Paro)
  
2.3.2:

* gmmproc (code generator):
  - signal proxies have extra space to avoid << with templates.
  - Added WRAP_METHOD_DOCS_ONLY() for reusing documentation even
    when the method is hand-coded.
  - _WRAP_SIGNAL(): Added optional no_default_handler parameter,
    because some of the new GTK+ signals have no public default 
    handler vfunc.
* Added Glib::init(), for use by non-GUI apps which need to 
  use Glib::wrap().
* PropertyProxy: Can now be used with Interfaces.
* Documentation improvements, so that gtkmm docs link to glibmm
  docs.
  (Murray Cumming)

2.3.1:

* gmmproc changes needed by gtkmm 2.3.0
  (Murray Cumming)
* examples updated and buildable and working,
  without gtkmm code.
  (J. Abelardo Gutierrez)

Changes in glibmm 2.3.0:

* Now separate from gtkmm, so you can use things like Glib::ustring without depending on gtkmm.
  This glibmm 2.4 API installs in parallel with gtkmm 2.0/2.2, so you can install this unstable library 
  without the risk of breaking existing application.
* This does not yet require glib 2.3 because there has been no tarball release of that yet. For now, you
  can use glibmm 2.3.0 with glib 2.2.x.
* When using pkg-config, you should check for "glibmm-2.4".
* Glib::ObjectBase inherits virtually from SigC::Object, allowing multiple inheritance with other
  classes that inherit from SigC::Object.
* RefPtr:
  - is_null() was removed, to encourage you to use "== 0" instead.
  - operator=(CppObject*) was removed.
* gtkmmproc is now gmmproc.
* All the glibmm bugfixes in gtkmm 2.2.x.
