"Fossies" - the Fresh Open Source Software Archive

Member "glibmm-2.74.0/NEWS" (19 Sep 2022, 160611 Bytes) of package /linux/misc/glibmm-2.74.0.tar.xz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes reports for "NEWS": 2.73.2_vs_2.74.0 or 2.72.1_vs_2.74.0.

    1 2.74.0 (stable):
    2 
    3 Gio:
    4 * ListStore: Add find()
    5 * File: Add create_tmp()
    6   (Kjell Ahlstedt)
    7 
    8 Documentation:
    9 * File: Document create_for_parse_name()
   10   (Kjell Ahlstedt)
   11 
   12 
   13 2.73.2 (unstable):
   14 
   15 Glib:
   16 * ustring: Add release()
   17   (Kjell Ahlstedt) Issue #101 (PBS)
   18 
   19 Gio:
   20 * ListStore: Don't derive a gtkmm__GListStore GType
   21   (Kjell Ahlstedt) Issue glib#2661
   22 * DBus::Proxy: get_connection(), get_interface_info(): Add refreturn
   23   (Kjell Ahlstedt) Issue #102 (우정모)
   24 * AppInfo: Add get_default_for_type_async/finish(),
   25   get_default_for_uri_scheme_async/finish()
   26 * File: Add make_symbolic_link_async/finish()
   27 * ListStore: Add property_n_items()
   28 * Resolver: Add lookup_by_name_with_flags(),
   29   lookup_by_name_with_flags_async/finish()
   30   (Kjell Ahlstedt)
   31 
   32 Documentation:
   33 * Glib::RefPtr: Improve the documentation
   34   (Kjell Ahlstedt) Issue gtkmm#119 (David Marceau)
   35 * Gio::Action: Improve the documentation
   36   (Kjell Ahlstedt) Issue #100 (Diederik van Lierop)
   37 
   38 gmmproc:
   39 * Improved handling of final types
   40   (Kjell Ahlstedt) Issue glib#2661
   41 * Improve handling of gi-docgen syntax in C documentation
   42   (Kjell Ahlstedt)
   43 
   44 Build:
   45 * Meson build: Avoid unnecessary configuration warnings
   46   (Kjell Ahlstedt)
   47 * Meson/MSVC: Add more warnings to ignore
   48   (Chun-wei Fan)
   49 * NMake Makefiles: Ensure g[lib|io]mm[config.h|.rc] are created
   50   (Chun-wei Fan) Issue #99 (Martin Ammermüller)
   51 * Require glib-2.0 >= 2.73.2
   52   (Kjell Ahlstedt)
   53 
   54 
   55 2.72.1 (stable):
   56 
   57 Glib:
   58 * ustring_Iterator: Don't declare copy constructor =default.
   59   A fix in the 2.72.0 release broke ABI.
   60   (Kjell Ahlstedt) Issue #98 (Scotty Trees)
   61 
   62 
   63 2.72.0 (stable):
   64 
   65 Glib:
   66 * MainContext: Add create(MainContextFlags flags)
   67   (Kjell Ahlstedt)
   68 
   69 Gio:
   70 * Add AppInfoMonitor
   71   (Kjell Ahlstedt, technic93) Issue #97
   72 * DBus::Proxy: signal_signal() accepts a signal name
   73 * File: Add move_async() and move_finish()
   74 * SocketClient: Deprecate set/get/property_tls_validation_flags()
   75 * TlsCertificate: Add properties private_key, private_key_pem,
   76 pkcs11_uri, private_key_pkcs11_uri. Fix the create*() methods.
   77 * TlsClientConnection.hg: Deprecate set/get/property_validation_flags()
   78   (Kjell Ahlstedt)
   79 
   80 gmmproc:
   81 * Add "ignore_deprecations" argument in _WRAP_METHOD()
   82   (Kjell Ahlstedt)
   83 
   84 Build:
   85 * Require glib-2.0 >= 2.71.2
   86   (Kjell Ahlstedt)
   87 * MSVC build: Support VS2022 builds
   88   (Chun-wei Fan)
   89 * Meson build: Specify 'check' option in run_command()
   90   Require Meson >= 0.55.0
   91   (Kjell Ahlstedt)
   92 
   93 
   94 2.70.0 (stable):
   95 
   96 Glib:
   97 * Timer: Add resume() and is_active()
   98   (Kjell Ahlstedt) Issue #87 (chamignoom)
   99 * Add the Environ class
  100   (Kjell Ahlstedt) Issue #89 (Alexander Shaduri)
  101 * Binding: Add dup_source(), dup_target().
  102     Deprecate get_source(), get_target().
  103   TimeZone: Add operator bool(), create_identifier(). Deprecate create().
  104   (Kjell Ahlstedt)
  105 
  106 Gio:
  107 * FileInfo: Add get/set_access_date(), get/set_creation_date().
  108   Notification: Add set_category().
  109   TlsCertificate: Add property/get_not_valid_before(),
  110     property/get_not_valid_after(), property/get_subject_name(),
  111     property/get_issuer_name().
  112   TlsConnection: Add property/get_protocol_version(),
  113     property/get_ciphersuite_name().
  114   (Kjell Ahlstedt)
  115 
  116 Tests:
  117 * Add test of Glib::Environ
  118   (Kjell Ahlstedt) Issue #89 (Alexander Shaduri)
  119 
  120 gmmproc:
  121 * Handle gi-docgen syntax in C documentation
  122   (Kjell Ahlstedt)
  123 
  124 Build:
  125 * Require glib-2.0 >= 2.69.1
  126   (Kjell Ahlstedt)
  127 
  128 
  129 2.68.2 (stable):
  130 
  131 Glib:
  132 * Replace all g_quark_from_static_string() by g_quark_from_string()
  133   (Kjell Ahlstedt) Issue #96 (小太)
  134 
  135 Gio:
  136 * FileEnumerator: Remove refreturn to avoid memory leak
  137   (talisein) Merge request !53
  138 * ListModel::get_object(): Make it work for interface classes
  139   (Kjell Ahlstedt) Issue #93 (pumkinpal)
  140 * AppInfo::get_all(): Avoid a crash on Windows
  141   (Kjell Ahlstedt) Issue #94 (Lawrence37)
  142 
  143 Build:
  144 * MSVC build: Remove extraneous GLIBMM_API in Glib::ustring
  145   (Kjell Ahlstedt) Issue #92 (Christoph Reiter)
  146 
  147 
  148 2.68.1 (stable):
  149 
  150 Glib:
  151 * Variant: Fix template constructors so they work with C++20
  152   (Magne Oestlyngen) Merge request !50
  153 
  154 Build:
  155 * Meson build: Use relative paths to untracked/
  156   (Kjell Ahlstedt) Merge request gtkmm!61 (Mingli Yu)
  157 * [gio|glib]mmconfig.h.*: Don't dllimport on MinGW
  158   (Chun-wei Fan) Issue gtkmm#90 (Lukas K.)
  159 * Meson build: examples and tests: Add dependency('threads')
  160   (Kjell Ahlstedt)
  161 * Meson build: Make it possible to use glibmm as a subproject
  162   (Kjell Ahlstedt)
  163 * Meson build: No implicit_include_directories
  164   (Kjell Ahlstedt)
  165 * Meson build: Make quiet installations possible
  166   (Kjell Ahlstedt)
  167 * MSVC build: Avoid exporting classes with std::string members
  168   (Chun-wei Fan) Merge reqest !51
  169 
  170 Tests:
  171 * glibmm_ustring_compare: Fix so it works for C++20
  172   (Kjell Ahlstedt) Merge request !50 (Magne Oestlyngen) 
  173 
  174 
  175 2.68.0 (stable):
  176 This is the first stable release in the glibmm-2.68 ABI series.
  177 It is parallel-installable with the glibmm-2.4 ABI.
  178 
  179 The tarball for 2.68.0 has been created with 'meson dist'.
  180 If you build with Autotools from the tarball, please read the relevant
  181 part of the README file.
  182 
  183 Glib:
  184 * PropertyProxyConnectionNode::connect_changed():
  185   Fix using without property name
  186   (Daniel Boles) Issue #74 (wswfc), merge request !35
  187 * Remove BalancedTree
  188   (Kjell Ahlstedt)
  189 
  190 Gio:
  191 * ListStore: Accept interfaces
  192   (Andreas Persson) Merge request !38
  193 * MenuModel: Make MenuAttribute and MenuLink enum class
  194   (Kjell Ahlstedt)
  195 * Add TlsClientConnectionImpl and TlsServerConnectionImpl
  196   (Kjell Ahlstedt)
  197 * SocketClient::signal_event(): Fix wrapping of 'connection' parameter
  198   (Kjell Ahlstedt) Issue #73 (smilingthax)
  199 
  200 gmmproc:
  201 * Add optional decl_prefix parameter to _WRAP_GERROR and _WRAP_ENUM
  202   Used for adding GLIBMM_API or similar for MS Visual C++
  203   (Chun-wei Fan) Merge request !32
  204 * Allow decorating comparison operators (for Visual Studio builds)
  205   (Chun-wei Fan) Merge request !33
  206 * _CLASS_BOXEDTYPE, _CLASS_OPAQUE_COPYABLE: Fix move assignment
  207   (Kjell Ahlstedt) Issue #76 (misos1)
  208 * Decorate private generated classes with __declspec when building
  209   with Visual Studio
  210   (Chun-wei Fan) Merge request !39, !41
  211 * generate_wrap_init.pl.in: Use g_type_ensure(SomeClass::get_type())
  212   to ensure that get_type() is called
  213   (Kjell Ahlstedt)
  214 
  215 Build:
  216 * Use __declspec(dllexport) consistently when building glibmm with
  217   Visual Studio
  218   (Chun-wei Fan) Merge request !32
  219 * Meson build: Set default value of the 'warnings' option to 'min'
  220   (Kjell Ahlstedt)
  221 * Improve NMake support
  222   (Chun-wei Fan)
  223 * Improve Visual Studio support
  224   (Chun-wei Fan) Merge request !37
  225 * docs/reference/: Update for Doxygen >= 1.8.16
  226   (Kjell Ahlstedt)
  227 * Meson build: Fix versioning on macOS
  228   (Kjell Ahlstedt) Pull request libsigcplusplus#65 (Tom Schoonjans)
  229 * Meson build: Fix detection of macOS
  230   (Tom Schoonjans) Merge request !43
  231 * Change the ABI to glibmm-2.68
  232   (Kjell Ahlstedt)
  233 
  234 Documentation:
  235 * Meson build: Add missing Glib::Value and Variant documentation
  236   (Kjell Ahlstedt)
  237 
  238 
  239 2.65.3: (unstable):
  240 Distro packagers should probably not package this yet.
  241 
  242 Tests:
  243 * glibmm_buildfilename: Add some tests
  244   (Kjell Ahlstedt) Issue #71 (Kalev Lember)
  245 
  246 Build:
  247 * Meson build: Install generate_extra_defs.h
  248   (Kjell Ahlstedt) Issue #70 (Jan Alexander Steffens)
  249 
  250 
  251 2.65.2: (unstable):
  252 Distro packagers should probably not package this yet.
  253 
  254 Glib:
  255 * Add missing #includes
  256   (Kjell Ahlstedt) Issue #69 (Kalev Lember)
  257 
  258 
  259 2.65.1: (unstable):
  260 Distro packagers should probably not package this yet.
  261 
  262 Glib:
  263 * Add get_user_runtime_dir()
  264   (scx) Issue #57, merge request !14
  265 * Add get_host_name()
  266   (scx) Issue #58, merge request !15
  267 * MainContext: Add push/pop/get_thread_default()
  268   (Kjell Ahlstedt) Issue #56 (Yackie-Yang)
  269 * Add StdStringView and UStringView
  270   Use them in build_filename() and other functions
  271   (Thomas Holder, Kjell Ahlstedt) Issue #34
  272   (Thomas Holder) Issue #64, #65
  273 * Regex::match(): Avoid using string after deletion
  274   (Thomas Holder) Issue #66, merge request !25
  275 * Add Glib::canonicalize_filename()
  276   (Kjell Ahlstedt) Issue #59 (Patrick Storz)
  277 * Binding: get_source() and get_target() return ObjectBase*
  278   (Kjell Ahlstedt) Issue #63 (Daniel Boles)
  279 * ustring: Fix insert(iterator, In, In)
  280   (Thomas Holder) Merge request !19
  281 * Value: Adding static_assert() for template parameter
  282   (Pavlo Solntsev) Merge request !23
  283 * Error: Derive from std::exception, remove Glib::Exception
  284   (Kjell Ahlstedt) Issue #23 (Daniel Boles)
  285 * Binding: Keep a binding alive even without a RefPtr
  286   (Kjell Ahlstedt) Issue #62 (Daniel Boles)
  287 
  288 Gio:
  289 * DBus::Connection: Make the wrap() function thread-safe
  290   (Kjell Ahlstedt) Issue #56 (Yackie-Yang)
  291 * SettingsSchemaSource: Add list_schemas()
  292   Add a create(), wrapping new_from_directory()
  293   (Daniel Boles) Issue #19, merge request !20
  294 * DBus::Message::get_unix_fd_list(): Add refreturn
  295   (Kjell Ahlstedt) Issue #68 (kr.woaini)
  296 
  297 Tests:
  298 * Add glibmm_ustring_compare test
  299   (Thomas Holder) Issue #65
  300 * Add glibmm_regex test
  301   (Thomas Holder) Issue #66, merge request !25
  302 * Add glibmm_binding test
  303   (Daniel Boles) Merge request !18
  304 
  305 gmmproc:
  306 * Add optional decl_prefix parameter to _CLASS_BOXEDTYPE,
  307   _CLASS_BOXEDTYPE_STATIC, _CLASS_GOBJECT, _CLASS_INTERFACE,
  308   _CLASS_OPAQUE_COPYABLE, _CLASS_OPAQUE_REFCOUNTED, _WRAP_GERROR
  309   Used for adding GLIBMM_API or similar for MS Visual C++
  310   (Chun-wei Fan)
  311 
  312 Build:
  313 * Change the ABI to glibmm-2.66
  314   (Kjell Ahlstedt)
  315 * Add Meson support
  316   (Chun-wei Fan, Kjell Ahlstedt) Merge request !27
  317 * Drop gendef from Windows builds
  318   (Chun-wei Fan) Issue #12 (Mikhail Titov), merge request !29
  319 
  320 Documentation:
  321 * Correct spelling of spawn_async_with_pipes()
  322   (Mike Fleetwood) Merge request !16
  323 * Glib::Binding: Several doc improvements
  324   (Daniel Boles) Merge request !18
  325 * Glib::Binding: Explain why SlotTransform takes GValue*
  326   (Kjell Ahlstedt) Issue #61 (Daniel Boles)
  327 * Gio::AsyncResult: Improve the class description 
  328   (Kjell Ahlstedt) Issue #27 (Alberto Mardegan)
  329 
  330 
  331 2.63.1: (unstable):
  332 Distro packagers should probably not package this yet.
  333 
  334 Glib:
  335 * ustring: Fix memory leak in make_valid()
  336   Use convert_return_gchar_ptr_to_*() in a couple of methods
  337   (Martin Ejdestig) Merge request !11
  338 * Add ustring::sprintf(), wrapping g_strdup_printf()
  339   (Daniel Boles) Issue #21
  340 * Fix callback races in glibmm when GSource is destructed
  341   (Dainis Jonitis) Issue #41
  342 * Checksum, Datetime, TimeZone: Declare as _CLASS_BOXEDTYPE
  343   (Kjell Ahlstedt)
  344 * Property: Add const get_proxy() returning ReadOnly
  345   Getting Proxy from ReadOnly is const
  346   (Daniel Boles) Issue #44
  347 * Property: Update for compatibility with Gtk::Builder
  348   (Kjell Ahlstedt)
  349 * Fix memory leak in Variant<std::tuple<>>::create()
  350   (Van de Bugger, Kjell Ahlstedt) Issue #48
  351 * Remove TimeVal
  352   (Kjell Ahlstedt)
  353 
  354 Gio:
  355 * Add Application::add_option_group()
  356   (Kjell Ahlstedt Issue #46 (Patrick Storz)
  357 * DBus::Object: Fix refcounts in some vfuncs
  358   (Kjell Ahlstedt)
  359 * Gio::DBus: Add ObjectProxy, ObjectSkeleton, ObjectManager,
  360   ObjectManagerClient, ObjectManagerServer
  361   (Kjell Ahlstedt) Issue #43 (Martin Ejdestig)
  362 * Drive, MountOperation, ThemedIcon, TlsDatabase, VolumeMonitor:
  363   Fix ownership of some lists and arrays (Fixes memory leaks
  364   and dangling pointers)
  365   (Kjell Ahlstedt) Issue #50 (Gary Wang)
  366 * Add SocketControlMessage::add_deserialize_func()
  367   (Kjell Ahlstedt) Issue #52 (Ankur deep jaiswal)
  368 
  369 gmmproc:
  370 * Update for new glib deprecation macros
  371   (Kjell Ahlstedt)
  372 
  373 Build:
  374 * Doxyfile.in: Remove unused configuration constants
  375   (Kjell Ahlstedt) Issue #22
  376 * Require glib-2.0 >= 2.61.2
  377   (Kjell Ahlstedt)
  378 * Change the ABI to glibmm-2.64
  379   (Kjell Ahlstedt)
  380 
  381 Documentation:
  382 * Glib::init(), Gio::init(): Improve the documentation
  383   (Kjell Ahlstedt) Issue #49 (Van de Bugger)
  384 * Glib::ustring can't always replace std::string
  385   (Kjell Ahlstedt) Issue #47 (Patrick Storz)
  386 
  387 
  388 2.61.1: (unstable):
  389 Distro packagers should probably not package this yet.
  390 
  391 Glib:
  392 * Add DateTime::get_timezone()
  393   Add KeyFile::get_locale_for_key()
  394   Add TimeZone::get_identifier()
  395   (Kjell Ahlstedt)
  396 * KeyFile: Make it a refcounted class
  397   (Kjell Ahlstedt)
  398 * Add Value_RefPtrBoxed<>
  399   Add Value<std::vector<string>> specializations and other Value
  400   specializations that are necessary for _WRAP_PROPERTY
  401   (Kjell Ahlstedt)
  402 
  403 Gio:
  404 * Put _WRAP_VFUNC in protected sections
  405   (Kjell Ahlstedt)
  406 * Add AppInfo::launch_uris_async() and launch_uris_async()
  407   Add DBusConnection::get_flags()and property_flags()
  408   (Kjell Ahlstedt)
  409 * TlsClientConnection: Remove property_accepted_cas()
  410   (Kjell Ahlstedt)
  411 * ThemedIcon: Add create(const std::vector<Glib::ustring>& iconnames)
  412   (Kjell Ahlstedt)
  413 * Remove NO_GTYPE from some _WRAP_ENUMs
  414   (Kjell Ahlstedt) Issue #37 (Jan Tojnar)
  415 * TlsConnection: Remove rehandshake API
  416   (Kjell Ahlstedt)
  417 * Application: Add signal_name_lost()
  418   (Kjell Ahlstedt)
  419 
  420 Glib and Gio:
  421 * Use {} for function arguments initialisation
  422   (Tapasweni Pathak) Merge request !9
  423   Issue #20 (Daniel Boles)
  424 
  425 gmmproc:
  426 * generate_wrap_init.pl.in: Don't exclude any Gtk classes
  427   (Kjell Ahlstedt)
  428 * _WRAP_PROPERTY: generate a static_assert() that checks if
  429   the data type is acceptable
  430   (Kjell Ahlstedt)
  431 * Add _IS_REFCOUNTED_BOXEDTYPE
  432   (Kjell Ahlstedt)
  433 * _WRAP_ENUM and _WRAP_GERROR: Add gtype_func parameter
  434   (Kjell Ahlstedt)
  435 
  436 Build:
  437 * glibmmconfig.h.in: Remove unused configuration constants
  438   (Kjell Ahlstedt) Issue #22
  439 * Require glib-2.0 >= 2.59.2
  440   (Kjell Ahlstedt)
  441 * Change the ABI to glibmm-2.62
  442   (Kjell Ahlstedt)
  443 
  444 Documentation:
  445 * README: Add installation instructions
  446   (Tapasweni Pathak) Merge request !10
  447 * Don’t use @retval on out args, use @param[out]
  448   (Daniel Boles) Merge request !6
  449 
  450 
  451 2.59.1: (unstable):
  452 Distro packagers should probably not package this yet.
  453 
  454 Glib:
  455 * ustring: Fix wchar conversion on macOS with libc++
  456   (Clemens Lang) Bug #795338
  457 * Avoid compiler warnings from function pointer conversions
  458   (Kjell Ahlstedt) Issue libsigcplusplus#1 (sharkcz)
  459   (Kjell Ahlstedt) Issue libsigcplusplus#8 (db0451)
  460 * ustring: Simplify format() using C++17 fold expression.
  461   (Daniel Boles) Merge request !4
  462 
  463 Gio:
  464 * Application: Add set_option_context_parameter_string(),
  465   set_option_context_summary(), set_option_context_description().
  466   (Kjell Ahlstedt)
  467 * DesktopAppInfo: Add get_locale_string()
  468   (Kjell Ahlstedt)
  469 * SocketClient: Take copy in RefPtrs for signal args
  470   (Daniel Boles) Issue #28 (Jens Mühlenhoff)
  471 * Make SignalProxy_async_callback() available to e.g. gtkmm
  472   (Kjell Ahlstedt)
  473 
  474 gmmproc:
  475 * _WRAP_METHOD: Accept ":" in slot_callback parameter
  476   (Kjell Ahlstedt)
  477 
  478 Build:
  479 * Require C++17.
  480   (Murray Cumming)
  481 * Require glib-2.0 >= 2.55.1
  482   (Kjell Ahlstedt) Issue #29 (Mart Raudsepp)
  483 * Replace the Visual Studio project files with MSVC NMake project files
  484   (Chun-wei Fan) Merge request !2
  485 * Change the ABI to glibmm-2.60
  486   (Kjell Ahlstedt)
  487 
  488 Documentation:
  489 * Use libsigc++-3.0.tag for libsigc++ documentation
  490   (Kjell Ahlstedt)
  491 
  492 
  493 2.57.1: (unstable):
  494 Distro packagers should probably not package this yet.
  495 
  496 Gio:
  497 * DataOutputStream::put_string(): Don't pass std:string by value
  498   (Kjell Ahlstedt)
  499 
  500 gmmproc:
  501 * Add _MEMBER_SET_STR() macro
  502   (Pavlo Solntsev) Bug #793778
  503 
  504 Build:
  505 * Change the ABI to glibmm-2.58
  506   (Kjell Ahlstedt)
  507 
  508 
  509 2.55.2: (unstable):
  510 Distro packagers should probably not package this yet.
  511 
  512 Glib:
  513 * IOCondition: Add an IO_ prefix to the enumerator names
  514   (Kjell Ahlstedt)
  515 * TimeoutSource: Use monotonic time consistently
  516   (Kjell Ahlstedt) Bug #792524 (Dainis Jonitis)
  517 * Source: Remove get_current_time().
  518   (Kjell Ahlstedt)
  519 * KeyFile, OptionContext, Regex: Add exception specs to errthrow.
  520   (Kjell Ahlstedt)
  521 * ustring:
  522   - Replace 8×format() with 1 variadic template.
  523   - Replace 9×compose() with 1 variadic template.
  524   - Use std::initializer_list instead of pointer + size
  525   (Daniel Boles) Bug #784211
  526 * VariantBase:
  527   - Add operator==() and operator!=().
  528   (Kjell Ahlstedt) Bug #789330 (Daniel Boles)
  529   - cast_dynamic(): Remove noexcept(false).
  530   (Kjell Ahlstedt)
  531 
  532 Glib::Gio:
  533 * AppInfo: Update the name of the AppLaunchContext parameters
  534   (Kjell Ahlstedt)
  535 * Action: Add exception specs to errthrow.
  536   (Kjell Ahlstedt)
  537 * Application: Fix property_resource_base_path()'s type
  538   (Kjell Ahlstedt)
  539 * Credentials, et al.: Add exception specs to errthrow.
  540   (Kjell Ahlstedt)
  541 * DataInputStream:
  542   - Remove read_until*().
  543   - Fix the documentation of read_line_utf8().
  544   (Kjell Ahlstedt)
  545 * InetSocketAddress, ProxyAddress: No guint16 in _WRAP_PROPERTY().
  546   (Kjell Ahlstedt)
  547 * Settings: set_int() and friends shall return bool.
  548   (Kjell Ahlstedt) Bug #784211
  549 * TlsClientConnection: Remove get/set/property_use_ssl3().
  550   (Kjell Ahlstedt)
  551 
  552 gmmproc:
  553 * Warn if parameter lists are not compatible
  554   (Kjell Ahlstedt)
  555 * _WRAP_METHOD: Accept optional list of exceptions in errthrow
  556   (Kjell Ahlstedt)
  557 * _WRAP_METHOD_DOCS_ONLY: Optionally suppress @return section.
  558   (Kjell Ahlstedt) Bug #787978
  559 * docextract_to_xml.py: Add --exclude-file option.
  560   (Kjell Ahlstedt)
  561 * Suppress the @return section if return type is void.
  562   (Kjell Ahlstedt)
  563 * generate_extra_defs.cc:
  564   - Write signal flags to .defs files.
  565   - Write default values of properties to .defs files.
  566   - Write default values of properties to generated documentation.
  567   (Kjell Ahlstedt) Bug #785895 (Daniel Boles)
  568 * Warn for unmatched deprecations in signals and properties.
  569   (Kjell Ahlstedt)
  570 
  571 Documentation:
  572 * Glib::ObjectBase: Don't mention GtkObject in comments.
  573   (Kjell Ahlstedt)
  574 * Glib::Variant: Hide namespace Glib::detail from Doxygen
  575   (Kjell Ahlstedt) Bug #787698 (Daniel Boles)
  576 * Glib::Variant: Slightly elaborate Variant<Variant> docs.
  577   (Daniel Boles) Bug #778219 (Daniel Boles)
  578 
  579 
  580 2.55.1: (unstable):
  581 Distro packagers should probably not package this yet.
  582 
  583 Glib:
  584 * Object: Value_Pointer class should take only one template argument.
  585   (Marcin Kolny)
  586 * Variant: Improved support for D-Bus object paths and signatures.
  587   (Kjell Ahlstedt) Bug #785700 (Johannes Dohmen)
  588 * Glib::Value_Flags<>: static_cast to correct type.
  589   (Kjell Ahlstedt)
  590 
  591 Gio:
  592 * Derive all interfaces directly from Glib::Interface
  593   (Kjell Ahltedt) Bug #776537
  594 * Application: OptionType: Make this an enum class.
  595   (Kjell Ahlstedt)
  596 * BufferedInputStream, BufferedOutputStream, DataOutputStream:
  597   Implement Seekable.
  598 * CharsetConverter: Implement the Gio::Initable interface.
  599   and call Initable::init() from CharsetConverter's constructor.
  600   (Kjell Ahlstedt) Bug #776537
  601 * Add FileDescriptorBased interface and make GUnixInputStream and
  602   GUnixOutputStream implement it.
  603 * MemoryInputStream, UnixInputStream: Implement PollableInputStream.
  604   (Kjell Ahlstedt)
  605 * MemoryOutputStream, UnixOutputStream: Implement PollableOutputStream.
  606   (Kjell Ahlstedt)
  607 * TlsDatabase: create_certificate_handle_vfunc():
  608   Fix memory leak, and correctly return nulltpr.
  609   (Kjell Ahlstedt) Bug #783360
  610 
  611 gmmproc:
  612 * Accept curly braces in default values in _WRAP macros
  613   (Khell Ahlstedt) Bug #783216 comment 13
  614 * Don't accept unpaired double quotes.
  615   (Khell Ahlstedt)
  616 * gmmproc: Fix _WRAP_ENUM for enumerators with apostrophes.
  617   (Khell Ahlstedt)
  618 * gmmproc, _WRAP_ENUM: Add optional CONV_TO_INT parameter.
  619   (Khell Ahlstedt)
  620 
  621 Build:
  622 * Change the ABI to glibmm-2.56.
  623   (Murray Cumming)
  624 * Really exclude DesktopAppInfo from wrap_init.cc on MacOS.
  625   (Kjell Ahlstedt) Bug #781947
  626 
  627 Documentation:
  628 * miscutils: Update docs of get_*_name() from GLib.
  629   (Daniel Boles)
  630 * Fix documentation of enum Glib::IOCondition.
  631   (Khell Ahlstedt)
  632 
  633 
  634 2.53.2 (unstable):
  635 Distro packagers should probably not package this yet.
  636 
  637 Glib:
  638 * ConstructParams: Do not increment allocation size twice
  639   (Daniel Elstner)
  640 
  641 Gio:
  642 * ActionMap: Really fix add_action_with_parameter().
  643   (Daniel Boles) Bug 774444#c31
  644 * UnixSocketAddress::create(): Remove a default value to avoid ambiguity.
  645   (Kjell Ahlstedt) Bug #782592
  646 
  647 Gio::DBus
  648 * Proxy: Wrap call() and call_sync() methods.
  649   (Vyacheslav Yurkov) Bug #781818
  650 
  651 gmmproc:
  652 * Use of static_cast<> instead of C-style casts.
  653   (Murray Cumming)
  654 
  655 Build:
  656 * Fix the build on MacOS, where glib doesn't have gdesktopinfo.
  657   (John Ralls) Bug #781947
  658 * Really use desktopappinfo.hg to fix the build.
  659   (Murray Cumming)
  660 
  661 Documentation:
  662 * Glib, Gio: Update documentation of in-class enums.
  663   (Kjell Ahlstedt)
  664 * ActionMap: Improve add_action_with_parameter docs
  665   (Daniel Boles)
  666 
  667 
  668 2.53.1.1 (unstable):
  669 
  670 Glib:
  671 * Use C++11 enum classes instead of old-style enums, and put many enums
  672   inside relevant class declarations:
  673   - Glib::NodeTree: Move enums into class.
  674   - Glib::BindingFlags is now Glib::Binding::Flags.
  675   - Glib::KeyfileFlags is now Glib::Keyfile::Flags.
  676   - Glib::ModuleFlags is now Glib::Module::Flags.
  677   - Glib::ChecksumType is now Glib::Checksum::Type.
  678   - Glib::Regex: Move enums inside class.
  679   - Glib::Resource: Move enums into class.
  680   (Murray Cumming, Kjell Ahlstedt)
  681 * RefPtr: Make this an alias for std::shared_ptr<> instead.
  682   - Use std::dynamic_pointer_cast<>() instead of RefPtr<>::cast_dynamic().
  683   - Use std::static_pointer_cast<>() instead of RefPtr<>::cast_static().
  684   - Use std::const_pointer_cast<>() instead of RefPtr<>::cast_const().
  685   - When creating RefPtr directly, instead of using create() methods,
  686     use Glib::make_refptr_for_instance() so the std::shared_ptr<> has the
  687     necessary Deleter.
  688   (Murray Cumming) Bug #755037
  689 * Remove Glib::WeakRef. Use std::weak_ref<> instead.
  690   (Murray Cumming) Bug #755037
  691 * Object: Use g_object_new_with_properties() instead of (deprecated)
  692   g_object_newv() and (deprecated) GParameter.
  693   (Murray Cumming)
  694 * IOChannel: Avoid creating a RefPtr to this.
  695   (Murray Cumming) Bug #755037
  696 * SignalProxy:
  697   connect(): Signals with non-void return values now have no default value
  698   for the "after" parameter, forcing application developers to think about
  699   whether they should connect before or after already-connected signal
  700   handlers, and default signal handlers. This is awkward but necessary.
  701   Just provide "true" to get the previous behaviour, or use connect_notify().
  702   connect_notify(): Signals with void return values have no connect_notify(),
  703   because it is not useful with those signals.
  704   (Kjell Ahlstedt) Bug #126213.
  705 
  706 Gio:
  707 * Use C++11 enum classes instead of old-style enums, and put many enums
  708   inside relevant class declarations:
  709   - Gio::Drive: Move enums into class.
  710   - Gio::TlsDatabase: Move enums into class.
  711   - Gio::UnixSocketAddressType is now Gio::UnixSocketAddress::Type.
  712   - Gio::Mount: Move enums into class.
  713   - Gio::TlsPasswordFlags is now Gio::TlsPassword::Flags.
  714   - Gio::IOStreamSpliceFlags is now Gio::IOStream::SpliceFlags.
  715   - Gio::SettingsBindFlags is now Gio::Settings::BindFlags.
  716   - Gio::ResolverRecordType is now Gio::Resolver::RecordType.
  717   - Gio::Socket: Move enums into class.
  718   - Gio::File: Move some flags enums into the class.
  719   - Gio::OutputStreamSpliceFlags is now Gio::OuputStream::SpliceFlags.
  720   - Gio::CredentialsType is now Gio::Credentials::Type.
  721   - Gio::NotificationPriority is now Gio::Notification::Priority.
  722   - Gio::FileMonitorEvent is now Gio::FileMonitor::Event.
  723   - Gio::FileAttributeInfoFlags is now Gio::FileAttributeInfo::Flags.
  724   - Gio::EmblemOrigin is now Gio::Emblem::Origin.
  725   - Gio::Converter: Put enums inside class.
  726   - Gio::ConverterFlags is now Gio::Converter::Flags.
  727   - Gio::ConverterResult is now Gio::Converter::Result.
  728   - Gio::AppInfoCreateFlags is now Gio::AppInfo::CreateFlags.
  729   - Gio::ApplicationFlags is now Gio::Application::Flags.
  730   (Murray Cumming, Kjell Ahlstedt)
  731 * Remove duplicate ErrorEnum declaration.
  732   (Kjell Ahlstedt)
  733 * ConstructParams:
  734   - Remove (hopefully really unnecessary) copy constructor.
  735   - C++11: =delete the operator=, instead of making it private.
  736   (Murray Cumming)
  737 * Value:
  738   - Remove the CType alias, which should be unnecessary.
  739   - value_custom: Replace a template parameter with C++11 type traits.
  740   - Value<RefPtr<T>>: Only use this specialization if T has get_base_type().
  741   (Murray Cumming) Bug #755037
  742 * Variant:
  743   - operator bool(): Simplify to avoid clang++ warnings.
  744   - C++11: Variant: Replace throw(std::bad_cast) with noexcept(false).
  745     See https://bugzilla.redhat.com/show_bug.cgi?id=1438766
  746   (Murray Cumming)
  747 * Socket: Avoid creating a RefPtr to this.
  748   (Murray Cumming) Bug #755037
  749 
  750 Gio:DBus:
  751 * Use C++11 enum classes instead of old-style enums, and put many enums
  752   inside relevant class declarations:
  753   - Gio::DBus::InterfaceSkeletonFlags is now Gio::DBus::InterfaceSkeleton::Flags.
  754   - Gio::DBus::ServerFlags is now Gio::DBus::Server::Flags.
  755   (Murray Cumming, Kjell Ahlstedt)
  756 
  757 gmmproc:
  758 * _WRAP_ENUM(): Generate C++ enum classes instead of enums, and let the enums
  759   be inside class declarations.
  760   (Kjell Ahlstedt) Bug #86864
  761 
  762 Build
  763 * Windows:  Visual Studio builds: Update ABI version
  764   (Chun-wei Fan)
  765 
  766 
  767 2.53.1 (unstable):
  768 
  769 Glib:
  770 * OptionGroup:
  771   - Don't allow copy or move.
  772   - Remove the OptionGroup& parameter in on_pre_parse(), on_post_parse() and
  773     on_error().
  774   (Kjell Ahlstedt)
  775 * IOChannel, StreamIOChannel: Remove deprecated parts.
  776   (Kjell Ahlstedt)
  777 * ustring: Add make_valid().
  778   (Krzysztof Piecuch) Bug #780075
  779 * Remove (unused) Sequence and sequence().
  780   (Murray Cumming)
  781 * Remove ListHandle, SListHandle, ArrayHandle, SArrayHandle, and
  782   StringArrayHandle, replacing them with std::vector in API.
  783   (Murray Cumming)
  784 
  785 gmmproc:
  786 * _WRAP_METHOD(): Some more use of auto in generated code.
  787   (Murray Cumming)
  788 
  789 Build:
  790 * Change the ABI to glibmm-2.54.
  791   (Murray Cumming)
  792 * Add some #include directives.
  793   (Kjell Ahlstedt)
  794 * Visual Studio: Require Visual Studio 2017 and update the glibmm project.
  795   (Chu-wei Fan)
  796 
  797 
  798 2.51.5
  799 
  800 Gio:
  801 * Application: get_default(): Correct the reference counting.
  802   (KJell Ahlstedt) Bug #779936 (James Legg)
  803 * Add PropertyAction.
  804   (Kjell Ahlstedt)
  805 
  806 Glib:
  807 * Remove Glib::unconst() because it is unused and unnecessary.
  808   (Kjell Ahlstedt)
  809 * Variant: Add template specialization for std::tuple,
  810   and a test.
  811   (Alexander Rössler, Kjell Ahlstedt) Bug #777791
  812 
  813 
  814 2.51.2 (unstable):
  815 Distro packagers should probably not package this yet.
  816 
  817 Glib:
  818 * Object construction: Add custom class init and instance init functions
  819   An extra class init function is useful in Gtk::WidgetCustomDraw and
  820   Gtk::WidgetCustomSnapshot.
  821   (Kjell Ahlstedt) Bug #775348
  822 
  823 Gio:
  824 * Action: #include <glibmm/variant.h>, for convenience.
  825   (Daniel Boles) Bug #777953
  826 * SimpleAction: Make set_state() public.
  827   (Daniel Boles) Bug #777953
  828 
  829 Documentation:
  830 * Glib::Variant: Explain how to create "maybe" type.
  831   (Daniel Boles) Bug #778219
  832 
  833 
  834 2.51.1.2 (unstable):
  835 Distro packagers should probably not package this yet.
  836 
  837 Glib:
  838 * Remove some deprecated API
  839   (Kjell Ahlstedt)
  840 * Variant: Remove the string specializations of cast_dynamic.
  841   (Kjell Ahlstedt)
  842 * Glib::VariantType: Add get_item_types(), removing first() and
  843   next().
  844   (Kjell Ahlstedt) Bug #775741
  845 
  846 
  847 Gio:
  848 * init(): Set the global locale.
  849   (Kjell Ahlstedt) Bug #661588
  850 * ActionBase: get_state_hint_variant() now returns VariantContainerBase.
  851   (Kjell Ahlstedt)
  852 * ActionMap: add_action_with_parameter(): Register the parameter type,
  853   to make this work.
  854   (Daniel Boles) Bug #774444
  855 * ActionResult: Add is_tagged_vfunc().
  856   (Kjell Ahlstedt)
  857 * Glib::Dispatcher: Implement the pimpl idiom
  858   (Kjell Ahlstedt) Bug #651942
  859 * File, FileInfo, FileIOStream, FileOutputStream: Use Glib::ustring for
  860   (UTF-8) file attributes of string type.
  861   (Kjell Ahlstedt) Bug #615950
  862 * NetworkMonitor: Derive from Gio::Initable.
  863   (Kjell Ahlstedt)
  864 * RemoteActionGroup: Rename some vfuncs to add _full().
  865   (Murray Cumming)
  866 
  867 Documentation:
  868 * ActionMap:
  869   - ActivateSlot: Mention add_action_bool().
  870   - ActivateWithParameterSlot: Be more specific.
  871   (Daniel Boles) Bug #774444
  872 
  873 Build:
  874 * Update the Visual Studio project files.
  875   (Chun-wei Fan)
  876 * Some minor cppcheck fixes.
  877   (Murray Cumming)
  878 
  879 
  880 2.51.1.1 (unstable):
  881 
  882 General:
  883 * Remove no_default_handler in some _WRAP_SIGNAL()s
  884   This allows application developers to simply override
  885   the default on_*() signal handlers for these signals too,
  886   as they can already with most other signals.
  887   If you are using, for instance, the -Wsuggest-override
  888   compiler option, watch out for new compiler warnings suggesting
  889   that your existing signal handler should now be marked with the
  890   override keyword - that means you should do so but you should
  891   also stop connecting the signal handler in your code.
  892   (Kjell Ahlstedt)
  893 * Build: examples/Makefile.am: Re-insert the dispatcher examples
  894   (Kjell Ahlstedt)
  895 
  896 Glib:
  897 * Dispatcher: Don't cast a HANDLE to an int on Windows.
  898   (Kjell Ahlstedt) Bug #772074
  899 * ObjectBase:
  900   - Remove connect_property_changed_with_return()
  901   and let connect_property_changed() return a sigc::connection.
  902   (Kjell Ahlstedt)
  903   - Use std::forward_list for interface class pointers.
  904   (Kjell Ahlstedt)
  905   - Replace extra_object_base_data map by instance data.
  906   (Kjell Ahlstedt)
  907 * ObjectBase: overload get_property().
  908   (Marcin Kolny)
  909 * Main, IOSource: autodeduce type of fd field.
  910   (Marcin Kolny) Bug #770274
  911 * Settings: Add property_settings_schema(), and update
  912   signal_changed().
  913   (Kjell Ahlstedt)
  914 * Settings: Make set_enum() + set_flags() usable
  915   (djb) Bug #774647
  916 * SettingsSchemaKey: Add missing value/range methods
  917   (Daniel Boles) Bug #774903
  918 * SignalProxyNormal: Remove connect_() and connect_notify_(),
  919   adding connect_impl().
  920   (Kjell Ahlstedt)
  921 * Rename SignalProxyDetailed to SignalProxyDetailedBase, and
  922   SignalProxyDetailedAnyType to SignalProxyDetailed.
  923   Remove SignalProxyDetailed# aliases (# = 0..6).
  924   (Kjell Ahlstedt)
  925 * Source: Replace extra_source_data by instance data.
  926   (Kjell Ahlstedt) Bug #561885
  927 
  928 Gio:
  929 * ActionMap::add_action_vfunc(): Const correction.
  930   (Murray Cumming)
  931 * Application: Add dbus_register/unregister_vfunc.
  932   (Ritesh Khadgaray, Kjell Ahlstedt) Bug #762191
  933 * Menu: insert/prepend/add_item(): Const correction.
  934   (Murray Cumming)
  935 * MenuAttributeIter: get_value(): Const correction.
  936   (Murray Cumming)
  937 * MenuModel: get_item_atribute(): const correction.
  938   (Murray Cumming)
  939 * RemoteActionGroup: Derive from Gio::ActionGroup.
  940   (Murray Cumming)
  941 
  942 Gio::Dbus:
  943 * Proxy: Fix memory leak in get_cached_property_names().
  944   (Kjell Ahlstedt) Bug #775210
  945 * Proxy: Derive from (and implement) Gio::DBus::Interface.
  946   (Murray Cumming)
  947 
  948 
  949 2.51.1 (unstable):
  950 
  951 This is the first release of the glibmm-2.52 API/ABI.
  952 It installs in parallel with the gtkmm-2.4 API/ABI, of which
  953 the most recent version is glibmm 2.50. We know that is a bit
  954 confusing. We are taking the opportunity to do this glibmm ABI
  955 break while GTK+ (and therefore gtkmm) is also doing an ABI
  956 break. But we cannot call this glibmm-3.0 because there is no
  957 glib 3.0.
  958 
  959 Build:
  960 * Require C++14.
  961   (Murray Cumming)
  962 * Use libsigc++-3.0 instead of libsigc++-2.0.
  963   https://www.murrayc.com/permalink/2016/03/07/libsigc-3-0-very-variadic/
  964   (Murray Cumming)
  965 * Remove lots of deprecated API.
  966   (Kjell Ahlstedt)
  967 
  968 Gio:
  969 * BufferedInputStream, InputStream, OutputStream: Add vfuncs,
  970   allowing implementation in C++.
  971   (Krzysztof Kosiński, Kjell Ahlstedt) Bug #572471
  972 * SettingsSchemaSource::get_default(): Correct the reference count.
  973   (Marcin Kolny) Bug #774593
  974 * Settings: Fix type of 'key' parameter of writable-change-event signal
  975   (Marcin Kolny) Bug #773977
  976 
  977 Glib:
  978 * ustring: Add cbegin() and cend().
  979 
  980 
  981 2.50.0:
  982 
  983 No changes since 2.49.7.
  984 
  985 2.49.7:
  986 
  987 Gio
  988 * AppInfo: Add launch_default_for_uri_async().
  989   (Murray Cumming)
  990 * Application::get_busy(): return the bool.
  991   (Murray Cumming) Bug #770304
  992 * Drive: Add is_removable().
  993   (Murray Cumming)
  994 * Settings:
  995   - set_uiint(): Deprecate for set_uint().
  996   - Add get/set_uint64().
  997   - Add get/set_int64().
  998   (Murray Cumming)
  999 * giomm.h: Add include for settingsschemasource.h
 1000   (Murray Cumming)
 1001 
 1002 Documentation:
 1003 * Glib::OptionGroup: Improve the documentation of add_entry()
 1004   (Kjell Ahlstedt)
 1005 
 1006 
 1007 2.49.5:
 1008 
 1009 Glib:
 1010 * OptionContext: Wrap g_option_context_parse_strv()
 1011   (Kjell Ahlstedt)
 1012 
 1013 gmmproc:
 1014 * Add DocsParser::remove_c_memory_handling_info()
 1015   (Kjell Ahlstedt)
 1016 * Add missing objects to glib/gio_extra_objects.defs
 1017   (Kjell Ahlstedt)
 1018 * Remove DocsParser::non_object_method_name()
 1019   (Kjell Ahlstedt)
 1020 * swap() implementations: Use std::swap().
 1021   (Murray Cumming)
 1022 
 1023 Documentation:
 1024 * Gio::SocketService: Update the class documentation
 1025   (Kjell Ahlstedt)
 1026 
 1027 2.49.4:
 1028 
 1029 glib:
 1030 * Replace some use of some deprecated libsigc++ API.
 1031   (Murray Cumming)
 1032 
 1033 Build:
 1034 * Really enable silent builds.
 1035   (Sebastian Geiger) Bug #768797
 1036 
 1037 2.49.2:
 1038 
 1039 Gio:
 1040 * FilterInputStream: Added a constructor.
 1041   (Krzysztof Kosiński, Kjell Ahlstedt) Bug #572471
 1042 * FilterOutputStream:
 1043   - Correct the property_base_stream() return type.
 1044   (Krzysztof Kosiński) Bug #572471
 1045   (Krzysztof Kosiński, Kjell Ahlstedt) Bug #572471
 1046 * InputStream: Added a constructor, is_closed(), has_pending(),
 1047   set_pending(), clear_pending()
 1048   (Krzysztof Kosiński, Kjell Ahlstedt) Bug #572471
 1049 * OutputStream: Added a constructor, is_closed(), is_closing(),
 1050   has_pending(), set_pending(), and clear_pending().
 1051   (Krzysztof Kosiński, Kjell Ahlstedt) Bug #572471
 1052 * Pollable, InputStream, OutputStream: Return -1 on error in vfuncs.
 1053   (Kjell Ahlstedt)
 1054 
 1055 gmmproc:
 1056 * Make h2def.py recognize some GDK_PIXBUF macros
 1057   (Kjell Ahlstedt)
 1058 * Add optional argument err_return_value in _WRAP_VFUNC
 1059   (Kjell Ahlstedt)
 1060 
 1061 Build:
 1062 * Visual Studio build files: Update projects
 1063   (Chun-wei Fan)
 1064 
 1065 2.49.1:
 1066 
 1067 gmmproc:
 1068 * Discard unused m4 sections.
 1069   (Kjell Ahlstedt)
 1070 * Add 'deprecated' option in _WRAP_ENUM and _WRAP_GERROR
 1071   (Kjell Ahlstedt)
 1072 * _CLASS_GOBJECT(): Allow custom move operation implementations with
 1073   _CUSTOM_MOVE_OPERATION().
 1074   (Marcin Kolny) Bug #756593
 1075 
 1076 Gio:
 1077 * Added ListModel, ListStoreBase and ListStore<>, and tests.
 1078   (Kjell Ahlstedt, Murray Cumming, Marcin Kolny)
 1079   Bug #755307
 1080 * SocketAddress: Correct the constructor's implemention.
 1081   (Murray Cuming) Bug #766150 (Vladimir)
 1082 
 1083 Gio:DBus:
 1084 * Proxy: allow using GDBusProxy* conversion outside DBus namespace
 1085 
 1086 Glib:
 1087 * FileAtrributeInfoList, Checksum, Module, RefPtr:
 1088   Make operator bool explicit.
 1089   (Murray Cumming)
 1090 * Property: Allow to set property nick, blurb, and flags.
 1091   (Marcin Kolny) Bug #755256
 1092 * VariantBase: Add explicit operator bool(), deprecating
 1093   operator const void*.
 1094   (Murray Cumming)
 1095 
 1096 Documentation:
 1097 * Examples: Use libsigc++ 2.9/10 and its slot/signal<R(Args...)> syntax.
 1098   (Murray Cumming)
 1099 
 1100 2.48.1:
 1101 
 1102 Build:
 1103 * MacOS X: Add alternative #ifdefed code when thread_local
 1104   is not supported by the compiler.
 1105   (Tom Schoonjans) Bug #759791
 1106 * Replace most typedefs with the C++11 using keyword.
 1107 
 1108 2.48.0:
 1109 
 1110 * No major changes compared to 2.47.92.
 1111 
 1112 2.47.92:
 1113 
 1114 * Adapt to libsigc++-2.0 2.8:
 1115   - using only the non-deprecated sigc::mem_fun() API.
 1116   (Kjell Ahlstedt)
 1117   - using std::ref instead of deprecated sigc::ref.
 1118   (Murray Cumming)
 1119   -  Correct bad uses of sigc::bind<1>.
 1120   (Murray Cumming)
 1121 
 1122 
 1123 gmmproc:
 1124 * defs generation: Mark deprecated signals and properties as such in the
 1125   generated .defs file.
 1126 * gmmproc: Check if signals and properties are deprecated appropriately
 1127   (Kjell Ahlstedt)
 1128 
 1129 Build:
 1130 * MSVC builds: Look for includes in include/gio-win32-2.0.
 1131   (Chun-wei Fan)
 1132 
 1133 2.47.6:
 1134 
 1135 Glib:
 1136 * Add and uses Glib::c_str_or_nullptr().
 1137   (Kjell Ahlstedt) Bug #755245
 1138 * Add some connect() overloads that move the sigc::slot.
 1139   (Kjell Ahlstedt)
 1140 * Fix definition of VARIANT_TYPE_DICT_ENTRY to match header declaration
 1141   (Aurelien Jacobs) Bug #761046
 1142 * Replace, via deprecation, ScopedPtr with make_unique_ptr_gfree().
 1143   (Murray Cumming) Bug #760223
 1144 * SignalProxy: use variadic templates.
 1145   (Marcin Kolny)
 1146 * ustring: Add move operators.
 1147   (Kjell Ahlstedt) Bug #760282
 1148 *  Put deprecation ifdefs around aleady-deprecated GLIBMM_INITIALIZE_STRUCT.
 1149   (Murray Cumming)
 1150   
 1151 Gio:
 1152 * FileInfo::list_attributes(): Make name_space optional.
 1153   (Murray Cumming)
 1154 * Icon: Add serialize(), deserialize() and documentation of create().
 1155   (Kjell Ahlstedt)
 1156 * PropertyBase: Make custom properties more flexible
 1157   (Kjell Ahlstedt) Bug #731484.
 1158 * SocketConnectable: Add to_string().
 1159   (Kjell Ahlstedt)
 1160 
 1161 Gio::DBus::
 1162 * Connection: Pass an empty bus name as nullptr.
 1163 
 1164 gmmproc:
 1165 * Fix errthrow in _WRAP_VFUNC
 1166   (Kjell Ahlstedt) Bug #762437
 1167 * Add NULL option to _WRAP_METHOD
 1168   (Kjell Ahlstedt)
 1169 * h2def.py: Accept parameter names beginning with const.
 1170   (Kjell Ahlstedt)
 1171 
 1172 Build:
 1173 * Use some more minor C++11 features.
 1174   (Murray Cumming)
 1175 * Threads example: Fix build on Visual Studio
 1176   (Chun-wei Fan) Bug #760612
 1177 * glibmmconfig.h.in: Fix Visual Studio 2013 builds.
 1178   (Chun-wei Fan) Bug #760612
 1179 * Glib::ustring: fix -Wmisleading-indentation gcc 6 warning in public header.
 1180   (Aurelien Jacobs) Bug #760641.
 1181 
 1182 Other:
 1183 * Reformat our hand-written C++ code with clang-format.
 1184   (Murray Cumming)
 1185 
 1186 
 1187 2.47.4:
 1188 
 1189 Glib::
 1190 * ustring: Don't allow comparison to 0.
 1191   (Kjell Ahlstedt) Bug #572978 (Armin Burgmeier)
 1192 
 1193 Gio:
 1194 * ActionMap: Fix the ref count in lookup_action_vfunc().
 1195   (Kjell Ahlstedt) Bug #758813 (Aurimas Černius)
 1196 
 1197 Build:
 1198 * Dispatcher: #include <mutex> in Windows builds.
 1199   (T Sailor) Bug #758894
 1200 * Gio::Application: Destructor: Use noexcept in the implementation too.
 1201   (Murray Cumming) Bug #758798 (Émeric MASCHINO)
 1202 * Fix the build with --disable-deprecated-api.
 1203   (Kjell Ahlstedt)
 1204 
 1205 2.47.3.1:
 1206 
 1207 * Use thread_local instead of (deprecated) Glib::Threads::Private.
 1208   (Murray Cumming, Kjell Ahlstedt) 
 1209 
 1210 2.47.3:
 1211 
 1212 * Deprecate all of Glib::Threads, including Mutex, Lock, Thread, etc.
 1213 * Deprecated Glib::ThreadPool.
 1214   (Murray Cumming, Kjell Ahlstedt) 
 1215 
 1216 2.46.2:
 1217 
 1218 * ObjectBase, Object, Interface: Correct move constructors and move assignment
 1219   operators.
 1220   (Kjell Ahlstedt) Bug #756962
 1221 
 1222 
 1223 Changes in 2.46 compared to 2.44:
 1224 
 1225 General:
 1226 * Use, and require C++11, using features such as move operations, noexcept
 1227   auto, = delete, nulltpr, override.
 1228   (Murray Cumming, Kjell Ahlstedt))
 1229 
 1230 Glib::
 1231 * RefPtr:
 1232   - Make it possible to stop use of RefPtr with certain classes.
 1233   (Kjell Ahlstedt)
 1234   - Make methods noexcept (C++11).
 1235   (Murray Cumming)
 1236   - Add move operations.
 1237   (Murray Cumming, Marcin Kolny, Kjell Ahlstedt)
 1238   * Add release():
 1239   (Marcin Kolny)
 1240 * ObjectBase: Don't use std::auto_ptr (deprecated in C++11).
 1241   (Kjell Ahlstedt)
 1242 * ObjectBase, Object, Interface, IOChannel, Markup: Add move operations
 1243   (Murray Cumming) Add C++11 move operations.
 1244   (Murray Cumming)
 1245 * HelperList: fix iterator check in operator[]
 1246   (Maks Naumov)
 1247 * Add SettingsSchema, SettingsSchemaKey and SettingsSchemaSource.
 1248   (Murray Cumming)
 1249 * Add Glib::format_size().
 1250   (Kjell Ahlstedt)
 1251 * Add get_user_special_dir(UserDirectory), deprecating 
 1252   get_user_special_dir(GUserDirectory directory).
 1253   (Kjell Ahlstedt)
 1254 * Threads::Thread: Use GThread only via a pointer.
 1255   Kjell Ahlstedt
 1256 * VariantBase: Add is_castable_to().
 1257 * VariantContainerBase: get_iter(): Accept casts of complicated types
 1258   containing object paths and DBus type signatures to Variant<> types
 1259   containing Glib::ustring and std::string.
 1260   (Kjell Ahlstedt)
 1261 * Variant: Wrap handles and add get_data_as_bytes()
 1262   (Kjell Ahlstedt)
 1263 * Added SignalProxyDetailed.
 1264 
 1265 Gio:
 1266 * Application: Add the shutdown signal.
 1267   (Murray Cumming)
 1268 * NetworkMonitor: Add get_network_metered() and property.
 1269   (Murray Cumming)
 1270 * Settings: Add signal_changed(key).
 1271   (Kjell Ahlstedt, Murray Cumming)
 1272 * Added SimpleIOStream.
 1273   (Kjell Ahlstedt)
 1274 * SocketService: Add active property.
 1275   (Murray Cumming)
 1276 * TlsClientConnection: Add copy_session_state().
 1277   (Murray Cumming)
 1278 
 1279 Gio::Dbus:
 1280 * Connection::signal_subscribe(): Pass nullptr instead of "".
 1281   (Murray Cumming)
 1282 
 1283 gmmproc:
 1284 * Generate C++11 move operations.
 1285   (Murray Cumming)
 1286 * Mark all _CLASS_OPAQUE_REFCOUNTED classes as final (C++11).
 1287   (Murray Cumming)
 1288 * generate_wrap_init.pl: Allow use of nested namespaces for whole module.
 1289   (Marcin Kolny)
 1290 * _WRAP_METHOD: deprecated: Use G_GNUC_[BEGIN|END]_IGNORE_DEPRECATIONS
 1291   per function, instead of one big undef [G|GDK|GTK]_DISABLE_DEPRECATED.
 1292   (Kjell Ahlstedt)
 1293 * Add _IGNORE_PROPERTY() and _IGNORE_CHILD_PROPERTY() macros.
 1294   (Kjell Ahlstedt)
 1295 * Add support for 'newin "n,m"' in some _WRAP macros.
 1296   (Kjell Ahlstedt)
 1297 * _WRAP_SIGNAL: Add support for detail_name.
 1298   (Kjell Ahlstedt)
 1299 * Fetch property documentation from the docs.xml file, if available there.
 1300   (Kjell Ahlstedt)
 1301 
 1302 Build:
 1303 * MSVC Builds: Many improvements
 1304   (Chun-wei Fan)
 1305 * Add missing GLIBMM_API for Interface
 1306   (Mikhail Titov)
 1307 
 1308 
 1309 2.46.1 (stable):
 1310 
 1311 * gmmmproc: _CLASS_GOBJECT():
 1312   Move the "= delete"ed constructor and operator= to public, instead of private.
 1313   (Murray Cumming)
 1314 
 1315 2.46.0 (stable):
 1316 
 1317 Glib::
 1318 * RefPtr: Make it possible to stop use of RefPtr with certain classes.
 1319   (Kjell Ahlstedt) Bug #755048
 1320 * WeakRef: Use noexcept.
 1321   (Kjell Ahlstedt) Bug #583399.
 1322 
 1323 Gio:
 1324 * Application: Remove bind/unbind_busy_property() because they are not
 1325   quite ready.
 1326   (Murray Cumming)
 1327 
 1328 Gio::Dbus:
 1329 * Connection::signal_subscribe(): Pass nullptr instead of "".
 1330   (Murray Cumming)
 1331 
 1332 2.45.80 (unstable):
 1333 
 1334 Gio:
 1335 * Application: Add bind/unbind_busy_property() and set_state_hint().
 1336   (Murray Cumming)
 1337 * TlsClientConnection: Add copy_session_state().
 1338   (Murray Cumming)
 1339 
 1340 Build:
 1341 * MSVC Builds: Require MSVC.Net 2013 for C++11 support.
 1342   (Chun-wei Fan) Bug #753271.
 1343 * MSVC Builds: Adapt for recent source code changes.
 1344   (Chun-wei Fan) Bug #753271.
 1345 * MSVC Builds: Improve Build Speed and Debugging Experience
 1346   (Chun-wei Fan)
 1347 
 1348 
 1349 2.45.70 (unstable):
 1350 
 1351 Glib:
 1352 * C++11: Add move operations to ObjectBase and Object.
 1353   (Murray Cumming)
 1354 * C++11: RefPtr: Make methods noexcept.
 1355   (Murray Cumming)
 1356 
 1357 gmmproc:
 1358 * C++11: Generate move operations.
 1359   (Murray Cumming)
 1360 * C++11: IOChannel: move operations: Call the base sigc::trackable.
 1361   (Murray Cumming)
 1362 * C++11: Markup: Add move operations
 1363   (Murray Cumming)
 1364 * C++11: More use of = delete instead of private copy operations.
 1365   (Murray Cumming)
 1366 * C++11: Use std::stoul instead of strtoul.
 1367   (Murray Cumming)
 1368 
 1369 Documentation:
 1370 * Update configuration for Doxygen 1.8.9.1.
 1371   (Daniel Elstner)
 1372 * Exclude bogus documentation symbols.
 1373   (Daniel Elstner)
 1374 * Generate documentation for API all platforms.
 1375   (Daniel Elstner)
 1376 
 1377 
 1378 2.45.52 (unstable):
 1379 
 1380 Glib::
 1381 * C++11: Glib::ObjectBase, Object, Interface: Add move operators.
 1382   (Murray Cumming)
 1383 * C++11: Mark all _CLASS_OPAQUE_REFCOUNTED classes as final.
 1384   (Murray Cumming)
 1385 
 1386 Gio:
 1387 * FileIcon: Remove unncessary IMPLEMENTS_INTERFACE.
 1388   (Murray Cumming)
 1389 
 1390 gmmproc:
 1391 * _CLASS_GOBJECT(): Generate move operations.
 1392 * _CLASS_INTERFACE(): Generate move operations.
 1393 * _CLASS_BOXEDTYPE_STATIC(): Add move operations.
 1394 * _CLASS_BOXEDTYPE_STATIC: Add explicit copy operations.
 1395 * _CLASS_OPAQUE_COPYABLE(): Add move operations.
 1396 * _CLASS_OPAQUE_COPYABLE: Generate static swap().
 1397 * _CLASS_OPAQUE_REFCOUNTED: Use = delete for the default constructor.
 1398 (Murray Cumming)
 1399 
 1400 
 1401 2.45.50 (unstable):
 1402 
 1403 Glib:
 1404 * RefPtr:
 1405   * Add move constructor and move assignment operator for castable types.
 1406     (Marcin Kolny) Bug 752812
 1407   * Add release():
 1408     (Marcin Kolny) Bug 752812
 1409   * move assignment operator: Use swap().
 1410     (Murray Cumming) Bug 752812
 1411 
 1412 Gio:
 1413 * NetworkMonitor: Add get_network_metered() and property.
 1414   (Murray Cumming)
 1415 * SocketService: Add active property.
 1416   (Murray Cumming)
 1417 
 1418 General:
 1419 * C++11: Boxed types: Declare move operations as noexcept.
 1420   (Murray Cumming)
 1421 
 1422 Build:
 1423 * Update Visual Studio project to Visual Studio 2013,
 1424   for C++11 support.
 1425   (Chun-wei Fan)
 1426 * Improve gen_scripts.
 1427   (Kjell Ahlstedt)
 1428 
 1429 gmmproc:
 1430 * generate_wrap_init.pl: Allow use of nested namespaces for whole module.
 1431   (Marcin Kolny) Bug 753013
 1432 
 1433 
 1434 2.45.41 (unstable):
 1435 
 1436 Glib:
 1437 * Undeprecate HelperList and List_Iterator because gtkmm-2.4 uses these
 1438   in its undeprecated API. However, all of gtkmm-2.4 is deprecated, so
 1439   you (Inkscape) shouldn't be using it anyway.
 1440   Bug #752797 (Adam Williamson)
 1441   (Murray Cumming)
 1442 
 1443 2.45.40 (unstable):
 1444 
 1445 Glib:
 1446 * RefPtr: Add move constructor and move assignment operator.
 1447   (Murray Cumming)
 1448 
 1449 Gio:
 1450 * Application: Add the shutdown signal.
 1451   (Murray Cumming) Bug #752600 (Ben)
 1452 
 1453 Build:
 1454 * C++11: Use noexcept instead of throw().
 1455   (Murray Cumming)
 1456 * C++11: Use "= delete" instead of private copy constructors/operator=.
 1457   (Murray Cumming)
 1458 * C++11: Use nullptr instead of 0.
 1459   (Murray Cumming)
 1460 * C++11: Use the override keyword.
 1461 
 1462 
 1463 2.45.31 (unstable):
 1464 
 1465 Glib:
 1466 * HelperList: fix iterator check in operator[]
 1467   (Maks Naumov) Bug #751530.
 1468 
 1469 Build:
 1470 * Use (and require) C++11.
 1471   (Murray Cumming, Kjell Ahlstedt)
 1472 * Use some simple C++11 syntax.
 1473   (Murray Cumming)
 1474 * Fix the build with -Wshadow.
 1475   (Murray Cumming)
 1476 
 1477 gmmproc:
 1478 * Generate code that uses some simple C++11 syntax.
 1479   (Murray Cumming)
 1480 * _WRAP_SIGNAL: Accept apostrophes in a preceding comment.
 1481   (Kjell Ahlstedt)
 1482 
 1483 
 1484 2.45.3 (unstable):
 1485 
 1486 * Add SettingsSchema, SettingsSchemaKey and SettingsSchemaSource.
 1487   (Murray Cumming)
 1488 * Deprecate HelperList and SArray because nothing uses them.
 1489   (Murray Cumming)
 1490 
 1491 Build:
 1492 * Don't disable more deprecation warnings than necessary
 1493   (Kjell Ahlstedt) Bug #750379.
 1494 
 1495 gmmproc:
 1496 * _WRAP_METHOD: deprecated: Use G_GNUC_[BEGIN|END]_IGNORE_DEPRECATIONS
 1497   per function, instead of one big undef [G|GDK|GTK]_DISABLE_DEPRECATED.
 1498   (Kjell Ahlstedt) Bug #750379
 1499 * Remove GP_LIST, because nothing uses it.
 1500   (Murray Cumming)
 1501 
 1502 
 1503 2.45.2 (unstable):
 1504 
 1505 Glib:
 1506 * Add Glib::format_size().
 1507   (Kjell Ahlstedt) Bug #747311 (Zsolt Bölöny)
 1508 * Add get_user_special_dir(UserDirectory), deprecating 
 1509   get_user_special_dir(GUserDirectory directory).
 1510   (Kjell Ahlstedt) Bug #747311
 1511 * Threads::Thread: Use GThread only via a pointer.
 1512   Kjell Ahlstedt (Bug #746533)
 1513 * VariantBase: Add is_castable_to().
 1514 * VariantContainerBase: get_iter(): Accept casts of complicated types
 1515   containing object paths and DBus type signatures to Variant<> types
 1516   containing Glib::ustring and std::string.
 1517   (Kjell Ahlstedt) Bug #747508.
 1518 * Variant: Wrap handles and add get_data_as_bytes()
 1519   (Kjell Ahlstedt)
 1520 * Added SignalProxyDetailed.
 1521 
 1522 Gio:
 1523 * Settings: Add signal_changed(key).
 1524   (Kjell Ahlstedt, Murray Cumming) Bug #749034.
 1525 * Added SimpleIOStream.
 1526   (Kjell Ahlstedt)
 1527 
 1528 Documentation:
 1529 * API Reference: Remove generated " "You rarely need to use properties".
 1530   Some new glib and gtk+ classes (GSimpleIOStream, GtkModelButton,
 1531   GtkPopoverMenu) have no public set/get methods for their properties.
 1532   (Kjell Ahlstedt)
 1533 * API Reference: Fix the version numbers in some @newin Doxygen commands.
 1534   (Kjell Ahlstedt)
 1535 
 1536 gmmproc:
 1537 * Add _IGNORE_PROPERTY() and _IGNORE_CHILD_PROPERTY() macros.
 1538   (Kjell Ahlstedt)
 1539 * Add support for 'newin "n,m"' in some _WRAP macros.
 1540   (Kjell Ahlstedt) Bug #748856 (Andrew Potter)
 1541 * _WRAP_SIGNAL: Add support for detail_name.
 1542   (Kjell Ahlstedt) Bug #749034
 1543 *  Fetch property documentation from the docs.xml file, if available there.
 1544   (Kjell Ahlstedt)
 1545 * docextract_to_xml.py: Distinguish sections from properties.
 1546   (Kjell Ahlstedt)
 1547 * docextract_to_xml.py: Add support for the --no-recursion option.
 1548   (Kjell Ahlstedt)
 1549 
 1550 Build:
 1551 * Glib::ObjectBase: Don't use std::auto_ptr (deprecated in C++11).
 1552   (Kjell Ahlstedt) Bug #748630 (Hubert Figuiere)
 1553 * Add missing GLIBMM_API for Interface
 1554   (Mikhail Titov) Bug #748719.
 1555 
 1556 
 1557 2.44:
 1558 
 1559 API additions since 2.42:
 1560 
 1561 Glib:
 1562 * Add Binding.
 1563   (Kjell Ahlstedt) Bug #738663.
 1564 * OptionContext: Add get/set_strict_posix().
 1565   (Murray Cumming)
 1566 
 1567 Gio:
 1568 * Application:
 1569   - Add get/set/unset_resource_base_path() and property.
 1570   - Add get_is_busy() and property.
 1571   (Murray Cumming)
 1572 * File: Add replace_contents_bytes_aync().
 1573   (Murray Cumming)
 1574 * InputStream: Add read_all_async() and read_all_finish().
 1575   (Murray Cumming)
 1576 * MemoryInputStream: Add add_bytes().
 1577   (Murray Cumming)
 1578 * Added NetworkMonitor.
 1579   (Murray Cumming)
 1580 * Notification: Add set_priority() and enum NotificationPriority.
 1581   (Kjell Ahlstedt)
 1582 * OutputStream: Add write_all_async() and write_all_finish().
 1583   (Murray Cumming)
 1584 * Add Resource.
 1585   (Kjell Ahlstedt)
 1586 * Add TcpWrapperConnection.
 1587   (Murray Cumming)
 1588 
 1589 Gio::DBus
 1590 * InterfaceInfo: Add cache_build() and cache_release().
 1591   (Murray Cumming)
 1592 
 1593 
 1594 2.44.0 (stable):
 1595 
 1596 Gio:
 1597 * Action, ActionGroup: Avoid memory leaks in funcs.
 1598   (Kjell Ahlstedt) Bug #705124
 1599 
 1600 gmmproc:
 1601 * _WRAP_VFUNC(): Add keep_return parameter.
 1602   (Kjell Ahlstedt) Bug #705124
 1603 
 1604 
 1605 2.43.91 (unstable):
 1606 
 1607 Glib:
 1608 * OptionContext: Add get/set_strict_posix().
 1609   (Murray Cumming)
 1610 
 1611 Gio:
 1612 * Application:
 1613   - Add get/set/unset_resource_base_path() and property.
 1614   - Add get_is_busy() and property.
 1615   (Murray Cumming)
 1616 * File: Add replace_contents_bytes_aync().
 1617   (Murray Cumming)
 1618 * InputStream: Add read_all_async() and read_all_finish().
 1619   (Murray Cumming)
 1620 * MemoryInputStream: Add add_bytes().
 1621   (Murray Cumming)
 1622 * OutputStream: Add write_all_async() and write_all_finish().
 1623   (Murray Cumming)
 1624 
 1625 Gio::DBus
 1626 * InterfaceInfo: Add cache_build() and cache_release().
 1627   (Murray Cumming)
 1628 
 1629 
 1630 
 1631 2.43.90 (unstable):
 1632 
 1633 Glib:
 1634 * Error::register_init(): Call Glib::wrap_register_init().
 1635   (Kjell Ahlstedt) Bug #743466 (Mike Fleetwood).
 1636 * OptionGroup:
 1637   - Fix enable/disable bool option pairs.
 1638   (Kjell Ahlstedt) Bug #744854 (Tom Schoonjans)
 1639   - Fix memory leaks
 1640   (Kjell Ahlstedt) Bug #745173.
 1641   - Don't use deprecate g_option_group_free().
 1642   (Kjell Ahlstedt) 
 1643 * Value: Deprecate Value<char>, add Value<signed char>.
 1644   Because g_value_[get,set]_char() are deprecated in favour of
 1645   g_value_[get,set]_schar().
 1646   (Kjell Ahlstedt)
 1647 
 1648 Gio:
 1649 * Application: Deprecate property_action_group().
 1650   (Kjell Ahlstedt)
 1651 * Notification: Add set_priority() and enum NotificationPriority.
 1652   (Kjell Ahlstedt)
 1653 * Add TcpWrapperConnection.
 1654   (Murray Cumming)
 1655 * UnixSocketAddress: Deprecate property_abstract().
 1656   (Kjell Ahlstedt)
 1657 
 1658 gmmproc:
 1659 * Fix error messages in glib and gio by removing unnecessary _IGNORES().
 1660   (Kjell Ahlstedt)
 1661 * h2def.py: Remove *_DEPRECATED_IN_*_*_FOR(*) prefixes with white space.
 1662   (Kjell Ahlstedt)
 1663 * Put DOXYGEN_SHOULD_SKIP_THIS around *_Class prototypes.
 1664   To workaround a doxygen bug, to fix the genereated DevHelp search index.
 1665   (Murray Cumming) Bug #743918
 1666 
 1667 
 1668 2.43.3 (unstable):
 1669 
 1670 Glib:
 1671 * Binding: Rename and change BindingTransformSlot to SlotTransform.
 1672   (Kjell Ahlstedt) Bug #738663.   
 1673 * Add SlotSpawnChildSetup.
 1674   (Kjell Ahlstedt) Bug #528285.   
 1675 
 1676 Documentation:
 1677 * Resource: Suppress incorrect doxygen links.
 1678   (Kjell Ahlstedt)  
 1679 
 1680 
 1681 2.43.2 (unstable):
 1682 
 1683 Gio:
 1684 * Added NetworkMonitor.
 1685   (Murray Cumming)
 1686 * UnixFDList, UnixFDMessage: Correct array lengths in steal_fds()
 1687   (Kjell Ahlstedt) Bug #741365 (Matthew Balkam)
 1688 
 1689 gmmproc:
 1690 * Don't make one very long line for the enum documentation.
 1691   (Kjell Ahlstedt)
 1692 * Improve the conversion of Since to @newin.
 1693   (Kjell Ahlstedt)
 1694 * Add an empty line after @newin where it's missing
 1695   (Kjell Ahlstedt)
 1696 
 1697 
 1698 2.43.1 (unstable):
 1699 
 1700 gmmproc:
 1701 * Tidy up the generation of enum docs
 1702   (Kjell Ahlstedt)
 1703 * _WRAP_GERROR: Add documentation to the generated enum Code.
 1704   (Kjell Ahlstedt)
 1705 * Change messages that MS Visual Studio can misunderstand.
 1706   (Kjell Ahlstedt)
 1707 * Warn when an ignored method or signal doesn't exist.
 1708   (Marcin Kolny) Bug #737212.
 1709   
 1710 Glib:
 1711 * Add Binding.
 1712   (Kjell Ahlstedt) Bug #738663.
 1713 * Checksum::ChecksumType: Remove erroneous documentation
 1714   (Kjell Ahlstedt)
 1715 * Property: Add some documentation.
 1716   (Kjell Ahlstedt) Bug #523043.
 1717 
 1718 Gio:
 1719   Add Resource.
 1720   (Kjell Ahlstedt)
 1721 
 1722 
 1723 2.42:
 1724 
 1725 API additions since 2.40:
 1726 
 1727 * Add Permission and SimplePermission.
 1728   (Juan R. García Blanco) Bug #732436
 1729 * Add support for GtkContainer child properties.
 1730   (Juan R. García Blanco)
 1731 
 1732 
 1733 2.42.0 (stable):
 1734 
 1735 Gio:
 1736 * Notification: Deprecate set_urgent().
 1737   (Murray Cumming)
 1738 
 1739 Tools:
 1740 *  h2def.py: fixed generator in case of inline functions.
 1741    (Marcin Kolny) Bug #736427
 1742 
 1743 Build:
 1744 * Update and overhaul of Visual Studio 2005 project build files.
 1745  (Chun-wei Fan)   
 1746 * Fixes for  Visual Studio 2008 and 2010 project build files.
 1747  (Chun-wei Fan)
 1748 * Fix ustring for Visual Studio Builds.
 1749  (Chun-wei Fan) Bug #736720
 1750 * Visual Studio Builds: Add "install" project.
 1751   (Chun-wei Fan)
 1752 * Fix tests in Visual Studio.
 1753   (Chun-wei Fan) Bug #736778
 1754 
 1755 2.41.4 (unstable):
 1756 
 1757 gmmproc:
 1758 * Added parameter exception_handler in _WRAP_VFUNC().
 1759   (Marcin Koln) Bug #735132
 1760 * Better error checks in some _WRAP_* macros.
 1761   (Kjell Ahlstedt)
 1762 
 1763 Build:
 1764 * Update and overhaul of Visual Studio 2010 and Visual Studio 2008
 1765   project build files.
 1766   (Chun-wei Fan)
 1767 * Gio::DBus: Don't use parameter name 'interface' to fix the build with MinGW.
 1768   (Kjell Ahlstedt) Bug #735137.
 1769 
 1770 
 1771 2.41.3 (unstable):
 1772 
 1773 Documentation:
 1774 * Network example:
 1775   - Use Glib::OptionEntry and friends
 1776   (Kjell Ahlstedt)
 1777   - Network example: Add --use-ipv6 command line option
 1778   (Shashank) Bug #734094.
 1779 
 1780 2.41.2 (unstable):
 1781 
 1782 Gio:
 1783 * Menu: Allow detailed_action == null
 1784   (Kjell Ahlstedt) Bug #733203 (Hubert Figuiere)
 1785 * Add Permission and SimplePermission.
 1786   (Juan R. García Blanco) Bug #732436
 1787 
 1788 Glib:
 1789 * Make custom interface properties instance data.
 1790   (Kjell Ahlstedt) Bug #732746
 1791 * PropertyBase: Use g_object_notify_by_pspec() instead of g_object_notify()
 1792   (Povilas Kanapickas) Bug #731484
 1793 
 1794 gmmproc:
 1795 * Add support for GtkContainer child properties.
 1796   (Juan R. García Blanco)
 1797 *  _WRAP_METHOD: Allow multi-word parameter types such as unsigned int.
 1798   (Kjell Ahlstedt)
 1799 
 1800 
 1801 2.41.1 (unstable):
 1802 
 1803 Gio:
 1804 * Application: Deprecate set_action_group().
 1805   (Kjell Ahlstedt)
 1806 * DesktopAppInfo: Deprecate set_desktop_env().
 1807   (Kjell Ahlstedt)
 1808 * Settings:  Deprecate list_schemas(), range_check() and
 1809   property_schema().
 1810   (Kjell Ahlstedt)
 1811 * TlsConnection: Deprecate [set|get]_use_system_certdb()
 1812   and property_use_system_certdb().
 1813   (Kjell Ahlstedt)
 1814 * VolumeMonitor: Deprecate adopt_orphan_mount().
 1815   (Kjell Ahlstedt)
 1816 
 1817 Glib:
 1818 * Keyfile: Deprecate one of the load_from_dirs() methods.
 1819   (Kjell Ahlstedt)
 1820 * ValueArray: Deprecated.
 1821   (Kjell Ahlstedt)
 1822 
 1823 tests:
 1824 * Test custom properties and an interface with properties.
 1825   (José Alburquerque) Bug #697229
 1826 
 1827 Documentation:
 1828 *  Add a blank line after @deprecated and @newin to help doxygen.
 1829   (Kjell Ahlstedt)
 1830 
 1831 
 1832 2.41.0 (unstable):
 1833   
 1834 Gio:
 1835 * Application:
 1836   - Add add_main_option_entry() and enum OptionType.
 1837   (Kjell Ahlsted) Bug #727822.
 1838   - Add add_main_option_entry() taking a slot parameter
 1839   (Kjell Ahlsted) Bug #727822.
 1840 * Add SocketSource, SignalSocket and Socket::create_source().
 1841   (Kjell Ahlsted) Bug #725281.
 1842 
 1843 Documentation:
 1844 * examples/network: Use SocketSource and SignalSocket.
 1845   (Kjell Ahlstedt)
 1846 
 1847 Build:
 1848 * gmmproc: Don't interpret a comma as the end of a deprecation message.
 1849   (Kjell Ahlstedt)
 1850 
 1851 
 1852 2.40:
 1853 
 1854 API additions since 2.38:
 1855 
 1856 Glib:
 1857 * Keyfile: Add save_to_file().
 1858   (Murray Cumming)
 1859 * Add VariantDict.
 1860   (Murray Cumming)
 1861 
 1862 Gio:
 1863 * Action: Add parse_detailed_name() and parse_detailed_name_variant().
 1864   (Kjell Ahlstedt)
 1865 * Application: Add the handle-local-options signal.
 1866   (Murray Cumming)
 1867 * ApplicationCommandline: Add get_options_dict().
 1868 * MenuModel: Add signal_items_changed()
 1869   (Kjell Ahlstedt)
 1870 * MemoryInputStream: Add add_data() taking a sigc::slot,
 1871   with a test.
 1872   (Kjell Ahlstedt) Bug #609946 (Daniel Elstner)
 1873 * Add Notification.
 1874   (Kjell Ahlstedt) Bug #722896.
 1875 * Settings: Add get_user_value() and get_default_value().
 1876   (Murray Cumming)
 1877 * Socket: Add get/set_option().
 1878   (Murray Cumming)
 1879 * TlsInteraction: Add invoke_request_certificate(),
 1880   request_certificate(), request_certificate_async() and
 1881   request_certificate_finish().
 1882   (Murray Cumming)
 1883 
 1884 
 1885 2.40.0 (stable):
 1886 
 1887 * VariantType: Fix typo in VARIANT_TYPE_BYTESTRING_ARRAY value.
 1888   (Murray Cumming)
 1889 * gmmproc: Small improvement of enum documentation
 1890   (Kjell Ahlstedt)
 1891 * Windows Update the visual Studio build files.
 1892   (Chun-wei Fan)
 1893 
 1894 2.39.93 (unstable):
 1895 
 1896 Glib:
 1897 * Keyfile: Add save_to_file().
 1898   (Murray Cumming)
 1899 * Add VariantDict.
 1900   (Murray Cumming)
 1901 * Variant: Remove the now-unnecessary local g_variant_parse_error_quark().
 1902   (Murray Cumming) Bug #727554 (Antoine Jacoutot)
 1903 
 1904 Gio:
 1905 * Application: Add the handle-local-options signal.
 1906 * ApplicationCommandline: Add get_options_dict().
 1907 * Settings: Add get_user_value() and get_default_value().
 1908   (Murray Cumming)
 1909 * Socket: Add get/set_option().
 1910   (Murray Cumming)
 1911 * TlsInteraction: Add invoke_request_certificate(),
 1912   request_certificate(), request_certificate_async() and
 1913   request_certificate_finish().
 1914   (Murray Cumming)
 1915 
 1916 Build:
 1917 * h2def.py:
 1918   - Handle *_DEPRECATED_IN_* and AVAILABLE_IN_* with 0 digits.
 1919   - Also strip *_DEPRECATE_IN_*_FOR () without a space.
 1920   (Murray Cumming)
 1921 * Visual Studio Projects: Update giomm Projects.
 1922   (Chun-wei Fan)
 1923 
 1924 
 1925 2.39.92 (unstable):
 1926 
 1927 Gio:
 1928 * Application: Add add_main_option_entry() and add_option_group().
 1929   (Murray Cumming)
 1930 
 1931 Documentation:
 1932 * Glib::ustring: Say more clearly that it must be only UTF-8.
 1933   (Kjell Ahlstedt) Bug #681560 (vurentjie)
 1934 
 1935 Build:
 1936 * win32: Surround content_type_get_symbolic_icon() with ifdefs.
 1937   (Giuseppe Penone)
 1938 
 1939 
 1940 2.39.91 (unstable):
 1941 
 1942 Documenation:
 1943 * Improve Gio::Socket documentation.
 1944   (Tomasz Jankowski, Murray Cumming)
 1945 
 1946 2.39.3 (unstable):
 1947 
 1948 Gio
 1949 * Action:
 1950   - Add parse_detailed_name() and parse_detailed_name_variant().
 1951     (Kjell Ahlstedt)
 1952   - Fix activate(const Glib::Variant<T_Value>& value).
 1953     (Kjell Ahlstedt) Bug #722896
 1954 * MenuModel: Add signal_items_changed()
 1955   (Kjell Ahlstedt)
 1956 * MemoryInputStream: Add add_data() taking a sigc::slot,
 1957   with a test.
 1958   (Kjell Ahlstedt) Bug #609946 (Daniel Elstner)
 1959 * MenuModel: Add signal_items_changed()
 1960   (Kjell Ahlstedt)
 1961 * Add Notification.
 1962   (Kjell Ahlstedt) Bug #722896.
 1963     
 1964 Documentation:
 1965 * Fix some doxygen warnings.
 1966   (Kjell Ahlstedt)
 1967 * Don't change NULL to 0 in docs, when it's part of a longer name.
 1968   (Kjell Ahlstedt)
 1969 * OptionContext: Add API documentation based on the C docs.
 1970   (Murray Cumming)
 1971 
 1972 
 1973 2.39.3 (unstable):
 1974 
 1975 * Documentation improvements.
 1976   (Kjell Ahlstedt)
 1977 * Fix a test on IPv6 systems.
 1978   (Adam Sampson)
 1979 
 1980 
 1981 2.38.1 (stable):
 1982 
 1983 Build:
 1984 * Gio::ActionGroup: Remove a nonsensical check that
 1985   clang complains about, correctly.
 1986   (Murray Cumming) Bug #709963 (Johannes Meng, David Evans)
 1987 
 1988 Documentation:
 1989 * Gio::content_type_*(): Add a link from Gtk::AppChooser.
 1990   (Kjell Ahlstedt)
 1991 * giomm_tls_client test: Add some comments
 1992   (Kjell Ahlstedt)
 1993 
 1994 
 1995 Changes in 2.38 compared to 2.36:
 1996 
 1997 Glib:
 1998 * Object: Add interfaces to custom types before class_init.
 1999   This deprecates the use of Glib::Object as a base class
 2000   anywhere but in the last in the list of base classes when
 2001   implementing an interface, such as TreeModel or 
 2002   CellRenderer.
 2003   Having it, for instance, as the first base class,
 2004   is unfortunately likely to break with glib 3.40.
 2005   (Kjell Ahlstedt) Bug #697229
 2006 * Use std::memset() instead of GLIBMM_INITIALIZE_STRUCT
 2007   (Because it causes compiler warnings with --std=c++ with g++,
 2008   because that defines __STRICT_ANSI__.) and deprecate
 2009   GLIBMM_INITIALIZE_STRUCT.
 2010   (Kjell Ahlstedt)
 2011 * ByteArray:
 2012   - Fix refcount problems.
 2013     (Krzesimir Nowak)
 2014   - ByteArray: Add some tests for methods returning self.
 2015     (Krzesimir Nowak)
 2016 * DateTime: Fix compare() and equal().
 2017   (Kjell Ahlstedt) Bug #704639 (Aurimas Černius)
 2018 * Regex: Add get_max_lookbehind().
 2019   (Murray Cumming)
 2020 * Variant: Fix memory leaks.
 2021   (Kjell Ahlstedt) Bug #704851 (xanm)
 2022 
 2023 Gio:
 2024 * Action:
 2025   - get_state() and get_state_hint() now return something.
 2026     We choose not to consider this an ABI break because these
 2027     methods were impossible to use for anything useful before.
 2028    (Andrew Potter) Bug #690134.
 2029   - Add get_state_bool() and change_state(bool),
 2030     to make it easier to deal with toggle actions.
 2031     However, we might add a whole derived convenience class for these
 2032     instead.
 2033     (Murray Cumming, Kjell Ahlstedt)
 2034   - Add create_radio_string() and create_radio_integer() for
 2035     radio items, though we might change this API lots.
 2036     (Murray Cumming)
 2037   - Add name_is_valid() and print_detailed_name().
 2038     (Murray Cumming)
 2039   - Add an activate() method that takes no parameter.
 2040     (Murray Cumming)
 2041   - print_detailed_name(): Remove the action_name parameter.
 2042     (Murray Cumming)
 2043   - print_detailed_name() Make this templated.
 2044    (Murray Cumming)
 2045   - Make get_state() templated.
 2046     (Murray Cumming)
 2047   - get_state_hint(): Correct a check.
 2048     (Murray Cumming)
 2049   - Add templated change_state() and activate().
 2050     (Murray Cumming)
 2051 * Application: Add mark/unmark_busy().
 2052   (Murray Cumming)
 2053 * ActionGroup:
 2054   - Add templated getters.
 2055     (Murray Cumming)
 2056   - activate_action(): Add a method overload
 2057     that takes no parameter parameter.
 2058     (Murray Cumming)
 2059 * ActionMap:
 2060   - Add add_action(name, slot).
 2061     This is a convenience method similar to
 2062     g_action_map_add_action_entries() in C.
 2063     (Murray Cumming, Kjell Ahlstedt)
 2064   - Add add_action_radio_string() and add_action_radio_integer()
 2065     for radio items, though we might change this API lots.
 2066     (Murray Cumming)
 2067 * DesktopInfo: Add list_actions(), launch_action() and get_action_name().
 2068   (Murray Cumming)
 2069 * File:
 2070   - Add measure_disk_usage() and measure_disk_usage_async().
 2071     (Murray Cumming)
 2072   - Add trash_async(), trash_finish(), make_directory_async()
 2073     and make_directory_finish().
 2074     (Murray Cumming)
 2075 * Menu: Add remove_all().
 2076   (Murray Cumming)
 2077 * MenuItem:
 2078   - Add set/unset_icon().
 2079     (Murray Cumming)
 2080   - Reimplement the constructors.
 2081     (Murray Cumming) Bug #705199 (Pete Woods)
 2082   - Add set_action(), unset_target() and
 2083     unset_action_and_target().
 2084     (Murray Cumming)
 2085   - MenuItem: get/set_attribute(): Deprecated for
 2086     get/set_attribute_value() methods.
 2087     (Murray Cumming)
 2088   - Add insert/append/prepend_section() with no label parameter.
 2089    (Murray Cumming) Bug #702456 (Aurimas Černius)
 2090 * Settings:
 2091   - Add create_action().
 2092     (Murray Cumming)
 2093   - Add get/set_uint().
 2094     (Murray Cumming)
 2095 * SimpleAction:
 2096   - Make set_state() protected.
 2097     (Murray Cumming)
 2098   - add_action() now takes a slot with no parameter.
 2099     Added add_action_with_parameter().
 2100     (Murray Cumming)
 2101   - set_enabled(): Add default parameter value.
 2102     (Murray Cumming)
 2103   - Add constructors and create_bool() methods that take a bool instead of
 2104     a VariantBase for the state, to make it easier to deal with toggle actions.
 2105     However, we might add a whole derived convenience class for these
 2106     instead.
 2107     (Murray Cumming)
 2108 * SimpleActionGroup:
 2109   - lookup(): Add a const version and use refreturn.
 2110     (Murray Cumming)
 2111   - Deprecate all methods, because they just call methods in
 2112     the base ActionMap. The C functions are now deprecated too.
 2113     See glib bug #705600 .
 2114     (Murray Cumming)
 2115 * Add VariantParseError.
 2116   Because it is thrown by GtkBuilder, at least for now.
 2117   (Murray Cumming
 2118 
 2119 Gio::DBus:
 2120 * Add InterfaceSkeleton.
 2121   (José Alburquerque)
 2122 
 2123 Build:
 2124 * Port tools/defs_gen to Python 3.
 2125   (Kjell Ahlstedt) Bug #690969
 2126 * tools/h2def.py: Handle functions with Handle *_DEPRECATED_IN_*_FOR (*).
 2127   (Murray Cumming)
 2128 * Update Visual Studio Projects
 2129   (Chun-wei Fan)
 2130 * Glib::TypeTraits<>: Avoid warnings when compiling with -Wcast-qual.
 2131   (Kjell Ahlstedt) Bug #704640 (Aurimas Černius)
 2132 * enums.pl: fixed multi-argument defines as enum values.
 2133   (Marcin Kolny) Bug #705113
 2134 * Move to a generated ChangeLog.
 2135   (José Alburquerque)
 2136 
 2137 gmmproc:
 2138 * Pass NULL to C function calls for optional empty strings.
 2139   (José Alburquerque) Bug #686909. Bug #702456
 2140 * Add parameter return_value in _WRAP_VFUNC.
 2141   (Marcin Kolny) Bug #705699.
 2142 * Fix _WRAP_SIGNAL with 'ifdef' and 'deprecated'.
 2143   (Kjell Ahlstedt)
 2144 * docextract_to_xml.py: Add '&rArr;' to the list of escape sequences.
 2145   (José Alburquerque)
 2146 * Add _WRAP_ENUM_DOCS_ONLY() and simplify enum docs process.
 2147   (José Alburquerque) Bug #703155
 2148 *  gmmproc: Use GMMPROC_RETURN_MISMATCHES environment variable.
 2149   (José Alburquerque)
 2150 * Write glibmm version in generated files.
 2151   (Kjell Ahlstedt) Bug #697835 and Bug #700495
 2152     
 2153 Documentation:
 2154 * gmmproc: Add docs to the default constructor of _CLASS_OPAQUE_COPYABLE.
 2155   mentioning that the constructed object is invalid.
 2156   (Kjell Ahlstedt) Bug #704639 (Aurimas Černius)
 2157 
 2158 
 2159 
 2160 2.38.0 (stable):
 2161 
 2162 Glib:
 2163 * ByteArray:
 2164   - Fix refcount problems.
 2165   (Krzesimir Nowak)
 2166   - ByteArray: Add some tests for methods returning self.
 2167   (Krzesimir Nowak)
 2168 
 2169 Gio
 2170 * Action:
 2171   - Add an activate() method that takes no parameter.
 2172   (Murray Cumming)
 2173   - print_detailed_name(): Remove the action_name parameter.
 2174   (Murray Cumming)
 2175 * ActionGroup: activate_action(): Add a method overload
 2176   that takes no parameter parameter.
 2177   (Murray Cumming)
 2178 * ActionMap: Fix a reference-counting problem.
 2179   (Murray Cumming)
 2180 * MenuItem:
 2181   - Add set_action(), unset_target() and
 2182   unset_action_and_target().
 2183   (Murray Cumming)
 2184   - MenuItem: get/set_attribute(): Deprecated for
 2185     get/set_attribute_value() methods.
 2186   (Murray Cumming)
 2187 * Settings: Add create_action().
 2188   (Murray Cumming)
 2189 
 2190 
 2191 2.37.93 (unstable):
 2192 
 2193 Gio
 2194 * ActionMap: lookup_action(): Fix the reference counting.
 2195   (Murray Cumming)
 2196 * File: Add measure_disk_usage() and measure_disk_usage_async().
 2197   (Murray Cumming)
 2198 * Settings: Add get/set_uint().
 2199   (Murray Cumming)
 2200 * Add VariantParseError.
 2201   Because it is thrown by GtkBuilder, at least for now.
 2202   (Murray Cumming
 2203 
 2204 Build:
 2205 * Port tools/defs_gen to Python 3.
 2206   (Kjell Ahlstedt) Bug #690969
 2207 * tools/h2def.py: Handle functions with Handle *_DEPRECATED_IN_*_FOR (*).
 2208   (Murray Cumming)
 2209 
 2210 2.37.7 (unstable):
 2211 
 2212 Gio:
 2213 * Menu: Add insert/append/prepend_section() with no label parameter.
 2214   (Murray Cumming) Bug #702456 (Aurimas Černius)
 2215     
 2216 gmmproc:
 2217 * Pass NULL to C function calls for optional empty strings.
 2218   (José Alburquerque) Bug #686909. Bug #702456
 2219 * Add parameter return_value in _WRAP_VFUNC.
 2220   (Marcin Kolny) Bug #705699.
 2221     
 2222 Build:
 2223 * Update Visual Studio Projects
 2224   (Chun-wei Fan)
 2225 
 2226 
 2227 2.37.6 (unstable):
 2228 
 2229 Gio:
 2230 * Action:
 2231   - Make get_state() templated.
 2232     (Murray Cumming)
 2233   - get_state_hint(): Correct a check.
 2234     (Murray Cumming)
 2235   - Add templated change_state() and activate().
 2236     (Murray Cumming)
 2237   - print_detailed_name() Make this templated.
 2238      (Murray Cumming)
 2239 * ActionGroup: Add templated getters.
 2240   (Murray Cumming)
 2241 * ActionMap: add_action_radio_*(): Use better Slot types.
 2242   (Murray Cumming)
 2243 * SimpleAction:
 2244   - Make set_state() protected.
 2245    (Murray Cumming)
 2246   - add_action() now takes a slot with no parameter.
 2247     Added add_action_with_parameter().
 2248     (Murray Cumming)
 2249 * SimpleActionGroup:
 2250   - lookup(): Add a const version and use refreturn.
 2251     (Murray Cumming)
 2252   - Deprecate all methods, because they just call methods in
 2253     the base ActionMap. The C functions are now deprecated too.
 2254     See glib bug #705600 .
 2255     (Murray Cumming)
 2256 
 2257 gmmproc:
 2258 * Fix _WRAP_SIGNAL with 'ifdef' and 'deprecated'.
 2259   (Kjell Ahlstedt)   
 2260 
 2261 
 2262 2.37.5 (unstable):
 2263 
 2264 Glib
 2265 * Object: Add interfaces to custom types before class_init.
 2266   This deprecates the use of Glib::Object as a base class
 2267   anywhere but in the last in the list of base classes when
 2268   implementing an interface, such as TreeModel or 
 2269   CellRenderer.
 2270   Having it, for instance, as the first base class,
 2271   is unfortunately likely to break with glib 3.40.
 2272   (Kjell Ahlstedt) Bug #697229
 2273 * DateTime: Fix compare() and equal().
 2274   (Kjell Ahlstedt) Bug #704639 (Aurimas Černius)
 2275 * Regex: Add get_max_lookbehind().
 2276   (Murray Cumming)
 2277 * Variant: Fix memory leaks.
 2278   (Kjell Ahlstedt) Bug #704851 (xanm)
 2279 
 2280 Gio:
 2281 * Action:
 2282   - get_state() and get_state_hint() now return something.
 2283   We choose not to consider this an ABI break because these
 2284   methods were impossible to use for anything useful before.
 2285   (Andrew Potter) Bug #690134.
 2286   - Add get_state_bool() and change_state(bool),
 2287   to make it easier to deal with toggle actions.
 2288   However, we might add a whole derived convenience class for these
 2289   instead.
 2290   (Murray Cumming, Kjell Ahlstedt)
 2291   - Add create_radio_string() and create_radio_integer() for
 2292   radio items, though we might change this API lots.
 2293   (Murray Cumming)
 2294   - Add name_is_valid() and print_detailed_name().
 2295   (Murray Cumming)
 2296 * ActionMap:
 2297   - Add add_action(name, slot).
 2298   This is a convenience method similar to
 2299   g_action_map_add_action_entries() in C.
 2300   (Murray Cumming, Kjell Ahlstedt)
 2301   - Add add_action_radio_string() and add_action_radio_integer()
 2302   for radio items, though we might change this API lots.
 2303   (Murray Cumming)
 2304 * Application: Add mark/unmark_busy().
 2305   (Murray Cumming)
 2306 * DesktopInfo: Add list_actions(), launch_action() and get_action_name().
 2307   (Murray Cumming)
 2308 * File: Add trash_async(), trash_finish(), make_directory_async()
 2309   and make_directory_finish().
 2310   (Murray Cumming)
 2311 * Menu: Add remove_all().
 2312   (Murray Cumming)
 2313 * MenuItem:
 2314   - Add set/unset_icon().
 2315   (Murray Cumming)
 2316   - Reimplement the constructors.
 2317   (Murray Cumming) Bug #705199 (Pete Woods)
 2318 * SimpleAction:
 2319   - set_enabled(): Add default parameter value.
 2320   (Murray Cumming)
 2321   - Add constructors and create_bool() methods that take a bool instead of
 2322   a VariantBase for the state, to make it easier to deal with toggle actions.
 2323   However, we might add a whole derived convenience class for these
 2324   instead.
 2325   (Murray Cumming)
 2326 
 2327 Documentation:
 2328 * gmmproc: Add docs to the default constructor of _CLASS_OPAQUE_COPYABLE.
 2329   mentioning that the constructed object is invalid.
 2330   (Kjell Ahlstedt) Bug #704639 (Aurimas Černius)
 2331 
 2332 Build:
 2333 * Glib::TypeTraits<>: Avoid warnings when compiling with -Wcast-qual.
 2334   (Kjell Ahlstedt) Bug #704640 (Aurimas Černius)
 2335 * enums.pl: fixed multi-argument defines as enum values.
 2336   (Marcin Kolny) Bug #705113 
 2337 
 2338 
 2339 2.37.4 (unstable):
 2340 
 2341 glibmm:
 2342 * Use std::memset() instead of GLIBMM_INITIALIZE_STRUCT
 2343   (Because it causes compiler warnings with --std=c++ with g++,
 2344   because that defines __STRICT_ANSI__.) and deprecate
 2345   GLIBMM_INITIALIZE_STRUCT.
 2346   (Kjell Ahlstedt)
 2347 
 2348 giomm:
 2349 * Add Gio::DBus::InterfaceSkeleton.
 2350   (José Alburquerque)
 2351 
 2352 gmmproc:
 2353 * docextract_to_xml.py: Add '&rArr;' to the list of escape sequences.
 2354   (José Alburquerque)
 2355 * Add _WRAP_ENUM_DOCS_ONLY() and simplify enum docs process.
 2356   (José Alburquerque) Bug #703155
 2357 *  gmmproc: Use GMMPROC_RETURN_MISMATCHES environment variable.
 2358   (José Alburquerque)
 2359 * Write glibmm version in generated files.
 2360   (Kjell Ahlstedt) Bug #697835 and Bug #700495
 2361   
 2362 Build:
 2363 * Move to a generated ChangeLog.
 2364   (José Alburquerque)
 2365     	
 2366 2.36.2 (stable):
 2367 
 2368 * Revert this change from 2.36.1, which should not have appeared in a
 2369 	stable release yet:
 2370 	Custom Interfaces: Implement derived interface properties.
 2371 	(Murray Cumming)
 2372 
 2373 2.36.1 (stable):
 2374 
 2375 * Custom Interfaces: Implement derived interface properties.
 2376   (José Alburquerque)
 2377 * gmmproc: Fix _WRAP_SIGNAL(custom_c_callback) for void func().
 2378   (Kjell Ahlstedt) Bug #605728 (Murray Cumming)
 2379 * Output.pm: convert_args_c_to_cpp(): Reverse mappings hash correctly.
 2380   (José Alburquerque) Bug #698989 (David Evans, John Ralls)
 2381 
 2382 Changes in 2.36 compared to 2.34:
 2383 
 2384 Glib:
 2385 * AppInfo::get_all(): Fix ownerships.
 2386   (Pavel Vasi) Bug #694505
 2387   (José Alburquerque)
 2388 * Add ByteArray, because it is used in the GTls* API.
 2389   (José Alburquerque)
 2390 * Resolver: Add lookup_records(), lookup_records_async()
 2391   and lookup_records_finish().
 2392   (José Alburquerque)
 2393 * Signal*::connect(): Make them less thread-unsafe.
 2394   (Kjell Ahlstedt) Bug #396958 (Daniel Elstner, Chris Vine)
 2395 * Threads: Add create(slot, name) to create named threads.
 2396   (Andrew Potter) Bug #689863
 2397 * Variant: Allow containing complex types in arrays and in variants.
 2398   (José Alburquerque)
 2399 * Variant: Don't refsink variants created using the custom cast ctor.
 2400   (José Alburquerque)
 2401 * Variant< std::vector<std::string> >: Add create_from_object_paths().
 2402   (José Alburquerque)
 2403 * VariantBase: Add check_format_string().
 2404    (Murray Cumming)
 2405 * VariantBase: Add operator for BoolExpr (const void*).
 2406   (Andrew Potter) Bug #690121
 2407 * VariantType: Add create_tuple().
 2408   (Andrew Potter) Bug #688682
 2409 * VariantType: Correct the referencing in the create*() methods.
 2410   (José Alburquerque) Bug #688440 (Andrew Potter)
 2411 
 2412 
 2413 Gio:
 2414 * AppInfo: Add create_duplicate().
 2415   (José Alburquerque)
 2416 * ApplicationCommandLine: Add get_stdin() and
 2417   create_file_for_arg().
 2418   (Murray Cumming)
 2419 * AsyncResult: Added is_tagged().
 2420   (Murray Cumming)
 2421 * Credentials: Add get_unix_pid().
 2422   (José Alburquerque)
 2423 * DesktopAppInfo: Add has_key(),
 2424   get_string() and get_boolean().
 2425   (Murray Cumming)
 2426 * DesktopAppInfo: Add some new getter methods.
 2427   (José Alburquerque)
 2428 * File: Remove refreturn to avoid memory leaks.
 2429   (Kjell Ahlstedt) Bug #691606 (Dodak4Gi)
 2430 * FileEnumerator: Add get_child().
 2431   (Murray Cumming)
 2432 * FileInfo: Add get_deletion_date().
 2433   (Murray Cumming)
 2434 * MemoryOutputStream: Add the steal_as_bytes() method.
 2435   (José Alburquerque)
 2436 * SimpleAction: Fix stateful action constructor typo, allowing use.
 2437   (Andrew Potter) Bug #690122
 2438 * SocketClient: Add get/set_tls(),
 2439   get/set_tls_validation_flags(), get/set_proxy_resolver().
 2440   Added timeout, tls, enable-proxy, tls-validation, and 
 2441   proxy-resolver properties.
 2442   Added the event signal.
 2443   (Murray Cumming)
 2444 * SocketConnection: Add connect*() and is_connected() methods.
 2445   (José Alburquerque)
 2446 * ThemedIcon: Wrap the "names" property.
 2447   (José Alburquerque)
 2448 * Add TlsConnection, TlsClient, TlsServer, TlsDatabase,
 2449   TlsCertificate, TlsPassword, TlsFileDatabase and TlsInteraction.
 2450   (José Alburquerque)
 2451 * UnixConnection: Add [receive|send]_credentials_[async|finish]().
 2452   (José Alburquerque)
 2453 
 2454 Gio::DBus:
 2455 * DBus::[Connection|Proxy]: Use ifdefs for the UnixFDList call*() methods.
 2456   (José Alburquerque)
 2457 
 2458 gmmproc:
 2459 * Verify that void methods should not return a value.
 2460   (José Alburquerque) Bug #696364
 2461 * Parse the argument list of methods correctly.
 2462   (José Alburquerque)
 2463 * gmmproc: _WRAP_VFUNC: Support the wrapping of slots.
 2464   (José Alburquerque)
 2465 * gmmproc: _WRAP_METHOD: Support wrapping methods with slots.
 2466   (José Alburquerque) Bug #688587
 2467 * gmmproc: _WRAP_METHOD: Ensure that slot parameters can be optional.
 2468   (José Alburquerque)
 2469 * gmmproc: _WRAP_[CREATE|CTOR|METHOD]: Allow any order of {} options.
 2470   (José Alburquerque)
 2471 * gmmproc: _WRAP_ENUM: Skip enum constants whose names are deleted.
 2472   (Kjell Ahlstedt) Bug #544694 (Murray Cumming)
 2473 * gmmproc: _WRAP_CTOR: Handle *_new() functions with a final GError**.
 2474   (José Alburquerque) Bug #687959
 2475 
 2476 Build:
 2477 * Visual Studio Projects: Fix and update.
 2478   (Chun-wei Fan)
 2479 * Add a test of implementing an interface,
 2480   to detect the problem in glib 2.36.0 and
 2481   the expected problem with glib >= 2.37.0
 2482   See bug #697229
 2483   (Murray Cumming)
 2484 * DBus::[Connection|Proxy]: Change ifdef G_OS_LINUX to ifdef G_OS_UNIX.
 2485   (Kjell Ahlstedt)
 2486 * ContentType: Fix typo in the content_type_get_symbolic_icon() implementation.
 2487   (José Alburquerque)
 2488 * Remove the use of g_type_init() because it has been deprecated.
 2489   (José Alburquerque)
 2490 * Strip trailing whitespace.
 2491   (Mark Vender) 
 2492 * Fix the build with warnings enabled.
 2493   (Murray Cumming)
 2494 
 2495 
 2496 
 2497 
 2498 Documentation:
 2499 * Signal[Timeout|Idle]::connect_once() docs: Warn about thread-unsafety.
 2500   (Kjell Ahlstedt) Bug #396963 (Daniel Elstner, Chris Vine)
 2501 * ThreadPool::push() docs: Note that sigc::trackable is not thread-safe.
 2502   (Kjell Ahlstedt) Bug #512348 (Chris Vine)
 2503 * Threads::Thread::create(): Update the documentation.
 2504   (Kjell Ahlstedt) Bug #512348 (Chris Vine)
 2505 * SignalProxy: Fix the documentation, especially of connect_notify().
 2506   (Kjell Ahlstedt) Bug #126213, comment 5.
 2507 * Gio::Action: Add more documentation of get_state_hint() and get_state().
 2508   (Kjell Ahlstedt) Bug #690134 (Andrew Potter)
 2509 * Predefine G_OS_UNIX or G_OS_WIN32 in Doxygen's configuration file.
 2510   (Kjell Ahlstedt)
 2511 * gmmproc: Improve the conversion of documentation to Doxygen format.
 2512   (Kjell Ahlstedt)
 2513 * Documentation: Fix many warnings from Doxygen.
 2514   (Kjell Ahlstedt)
 2515 * gmmproc: Make enum documentation possible.
 2516   (José Alburquerque) Bug #544694 (Murray Cumming)
 2517 * gmmproc: Improve the search for documentation of enums.
 2518   (Kjell Ahlstedt)
 2519 * gmmproc: Documentation: Adjust if the method has a slot param.
 2520   (José Alburquerque) Bug #688587.
 2521 * docextract_to_xml.py: Replace &colon; with ':' in generated XML files.
 2522   (José Alburquerque)
 2523 * gmmproc: Improve the documentation of properties.
 2524   (Kjell Ahlstedt)
 2525 * ustring docs: The global locale should be set when using C++ streams.
 2526   (Debarshi Ray) Bug #661588
 2527 
 2528 
 2529 2.36.0 (stable):
 2530 
 2531 Changes since 2.35.9:
 2532 
 2533 Glib:
 2534 * ByteArray:
 2535   - Add size() and get_data().
 2536   - Add a Glib::Value<> template specialization.
 2537   (José Alburquerque)
 2538 * VariantBase: Add check_format_string().
 2539    (Murray Cumming)
 2540 
 2541 Gio:
 2542 * ApplicationCommandLine: Add get_stdin() and
 2543   create_file_for_arg().
 2544   (Murray Cumming)
 2545 * AsyncResult: Added is_tagged().
 2546   (Murray Cumming)
 2547 * Credentials: Add get_unix_pid().
 2548   (José Alburquerque)
 2549 * DesktopAppInfo: Add has_key(),
 2550   get_string() and get_boolean().
 2551   (Murray Cumming)
 2552 * FileEnumerator: Add get_child().
 2553   (Murray Cumming)
 2554 * FileInfo: Add get_deletion_date().
 2555   (Murray Cumming)
 2556 * SocketClient: Add get/set_tls(),
 2557   get/set_tls_validation_flags(), get/set_proxy_resolver().
 2558   Added timeout, tls, enable-proxy, tls-validation, and 
 2559   proxy-resolver properties.
 2560   Added the event signal.
 2561   (Murray Cumming)
 2562 
 2563 gmmproc:
 2564 * Verify that void methods should not return a value.
 2565   (José Alburquerque) Bug #696364
 2566 * Parse the argument list of methods correctly.
 2567   (José Alburquerque)
 2568 
 2569 Build:
 2570 * Visual Studio Projects: Fix and update.
 2571   (Chun-wei Fan)
 2572 * Add a test of implementing an interface,
 2573   to detect the problem in glib 2.36.0 and
 2574   the expected problem with glib >= 2.37.0
 2575   See bug #697229
 2576   (Murray Cumming)
 2577 
 2578 
 2579 2.35.9 (unstable):
 2580 
 2581 Glib:
 2582 * Add edByteArray, because it is used in the GTls* API.
 2583   (José Alburquerque)
 2584 * AppInfo::get_all(): Fix ownerships.
 2585   (Pavel Vasi) Bug #694505
 2586 
 2587 
 2588 Gio:
 2589 * TlsFileDatabase: Add the create() method.
 2590   (José Alburquerque)
 2591 * TlsCertificate: Add the certificate property.
 2592   (José Alburquerque)
 2593 * TlsClientConnection: Add get_accepted_cas()
 2594   and the "accepted-cas" property.
 2595   (José Alburquerque)
 2596 * TlsDatabase: Add the lookup_certificates_issued_by*()
 2597   methods and virtual functions.  Correct a TlsCertificate conversion
 2598   for the virtual functions so that the underlying GObject is properly
 2599   copied from the C++ wrapper.
 2600   (José Alburquerque)
 2601 * TlsInteraction: Add the virtual functions.
 2602   (José Alburquerque)
 2603 
 2604 
 2605 2.35.8 (unstable):
 2606 
 2607 Glib:
 2608 * Resolver: Add lookup_records(), lookup_records_async()
 2609   and lookup_records_finish().
 2610   (José Alburquerque)
 2611 * Signal*::connect(): Make them less thread-unsafe.
 2612   (Kjell Ahlstedt) Bug #396958 (Daniel Elstner, Chris Vine)
 2613 * Threads: Add create(slot, name) to create named threads.
 2614   (Andrew Potter) Bug #689863
 2615 * Variant: Allow containing complex types in arrays and in variants.
 2616   (José Alburquerque)
 2617 * Variant: Don't refsink variants created using the custom cast ctor.
 2618   (José Alburquerque)
 2619 * Variant< std::vector<std::string> >: Add create_from_object_paths().
 2620   (José Alburquerque)
 2621 * VariantBase: Add operator for BoolExpr (const void*).
 2622   (Andrew Potter) Bug #690121
 2623 * VariantType: Add create_tuple().
 2624   (Andrew Potter) Bug #688682
 2625 * VariantType: Correct the referencing in the create*() methods.
 2626   (José Alburquerque) Bug #688440 (Andrew Potter)
 2627 
 2628 Gio:
 2629 * AppInfo: Add create_duplicate().
 2630   (José Alburquerque)
 2631 * DesktopAppInfo: Add some new getter methods.
 2632   (José Alburquerque)
 2633 * File: Remove refreturn to avoid memory leaks.
 2634   (Kjell Ahlstedt) Bug #691606 (Dodak4Gi)
 2635 * MemoryOutputStream: Add the steal_as_bytes() method.
 2636   (José Alburquerque)
 2637 * SimpleAction: Fix stateful action constructor typo, allowing use.
 2638   (Andrew Potter) Bug #690122
 2639 * SocketConnection: Add connect*() and is_connected() methods.
 2640   (José Alburquerque)
 2641 * ThemedIcon: Wrap the "names" property.
 2642   (José Alburquerque)
 2643 * Add TlsConnection, TlsClient, TlsServer, TlsDatabase,
 2644   TlsCertificate, TlsPassword, TlsFileDatabase and TlsInteraction.
 2645   (José Alburquerque)
 2646 * UnixConnection: Add [receive|send]_credentials_[async|finish]().
 2647   (José Alburquerque)
 2648 
 2649 Gio::DBus:
 2650 * DBus::[Connection|Proxy]: Use ifdefs for the UnixFDList call*() methods.
 2651   (José Alburquerque)
 2652 
 2653 gmmproc:
 2654 * gmmproc: _WRAP_VFUNC: Support the wrapping of slots.
 2655   (José Alburquerque)
 2656 * gmmproc: _WRAP_METHOD: Support wrapping methods with slots.
 2657   (José Alburquerque) Bug #688587
 2658 * gmmproc: _WRAP_METHOD: Ensure that slot parameters can be optional.
 2659   (José Alburquerque)
 2660 * gmmproc: _WRAP_[CREATE|CTOR|METHOD]: Allow any order of {} options.
 2661   (José Alburquerque)
 2662 * gmmproc: _WRAP_ENUM: Skip enum constants whose names are deleted.
 2663   (Kjell Ahlstedt) Bug #544694 (Murray Cumming)
 2664 * gmmproc: _WRAP_CTOR: Handle *_new() functions with a final GError**.
 2665   (José Alburquerque) Bug #687959
 2666 
 2667 Documentation:
 2668 * Signal[Timeout|Idle]::connect_once() docs: Warn about thread-unsafety.
 2669   (Kjell Ahlstedt) Bug #396963 (Daniel Elstner, Chris Vine)
 2670 * ThreadPool::push() docs: Note that sigc::trackable is not thread-safe.
 2671   (Kjell Ahlstedt) Bug #512348 (Chris Vine)
 2672 * Threads::Thread::create(): Update the documentation.
 2673   (Kjell Ahlstedt) Bug #512348 (Chris Vine)
 2674 * SignalProxy: Fix the documentation, especially of connect_notify().
 2675   (Kjell Ahlstedt) Bug #126213, comment 5.
 2676 * Gio::Action: Add more documentation of get_state_hint() and get_state().
 2677   (Kjell Ahlstedt) Bug #690134 (Andrew Potter)
 2678 * Predefine G_OS_UNIX or G_OS_WIN32 in Doxygen's configuration file.
 2679   (Kjell Ahlstedt)
 2680 * gmmproc: Improve the conversion of documentation to Doxygen format.
 2681   (Kjell Ahlstedt)
 2682 * Documentation: Fix many warnings from Doxygen.
 2683   (Kjell Ahlstedt)
 2684 * gmmproc: Make enum documentation possible.
 2685   (José Alburquerque) Bug #544694 (Murray Cumming)
 2686 * gmmproc: Improve the search for documentation of enums.
 2687   (Kjell Ahlstedt)
 2688 * gmmproc: Documentation: Adjust if the method has a slot param.
 2689   (José Alburquerque) Bug #688587.
 2690 * docextract_to_xml.py: Replace &colon; with ':' in generated XML files.
 2691   (José Alburquerque)
 2692 * gmmproc: Improve the documentation of properties.
 2693   (Kjell Ahlstedt)
 2694 * ustring docs: The global locale should be set when using C++ streams.
 2695   (Debarshi Ray) Bug #661588
 2696 
 2697 Build/Other:
 2698 * DBus::[Connection|Proxy]: Change ifdef G_OS_LINUX to ifdef G_OS_UNIX.
 2699   (Kjell Ahlstedt)
 2700 * ContentType: Fix typo in the content_type_get_symbolic_icon() implementation.
 2701   (José Alburquerque)
 2702 * Remove the use of g_type_init() because it has been deprecated.
 2703   (José Alburquerque)
 2704 * Strip trailing whitespace.
 2705   (Mark Vender) 
 2706 * Fix the build with warnings enabled.
 2707   (Murray Cumming)
 2708 
 2709 
 2710 Changes in 2.34 compared to 2.32:
 2711 
 2712 Glib:
 2713 * Added the Bytes class, wrapping GBytes.
 2714   (Murray Cumming)
 2715 * RegEx: Add get_has_cr_or_lf().
 2716   (José Alburquerque)
 2717 * Threads::Mutex, RecMutex: Add wrap() functions.
 2718   (Kjell Ahlstedt) Bug #483790
 2719 * VariantIter: Add init() method.
 2720   (José Alburquerque)
 2721 
 2722 Gio:
 2723 * ActionGroup: Add the query_action() methods.
 2724   (José Alburquerque)
 2725 * AppInfo: Added  get_display_name(),
 2726   set_as_last_used_for_type() and get_supported_types().
 2727   (Murray Cumming)
 2728 * AppLaunchContext: Add setenv(), unsetenv() and get_environment().
 2729   (Murray Cumming)
 2730 * Application:
 2731   - Added get_dbus_connection()
 2732   and get_dbus_object_path().
 2733   - Allow the application ID to be empty.
 2734   (Murray Cumming)
 2735 * ContentType:
 2736   - get_icon(): Fix a refcount error.
 2737   - Added get_symbolic_icon().
 2738   (Murray Cumming)
 2739 * Add Converter, ZlibCompressor, ZlibDecompressor and 
 2740   CharsetConverter classes.
 2741   (José Alburquerque)
 2742 * Add ConverterInputStream and ConverterOutputStream.
 2743   (José Alburquerque)
 2744 * DBusAuthObserver: Added allow_mechanism().
 2745   (Murray Cumming)
 2746 * Drive: Added get_symbolic_icon().
 2747   (Murray Cumming)
 2748 * File: Add remove_async() and remove_finish().
 2749   (Murray Cumming)
 2750 * FileAttributeMatcher: Add create_difference() and to_string().
 2751   (José Alburquerque)
 2752 * FileInfo:
 2753   - Add has_namespace(), [get|set]_attribute_status(),
 2754   and [get|set]_attribute_strings().
 2755   (José Alburquerque)
 2756   - Added get_symbolic_icon().
 2757   (Murray Cumming)
 2758 * InetSocketAddress: Added get_flowinfo() and get_scope_id()
 2759   (Murray Cumming)
 2760 * InputStream: Added read_bytes(), read_bytes_async() and read_bytes_finish().
 2761   (Murray Cumming)
 2762 * IOStream: Add splice_async() splice_finish().
 2763   (José Alburquerque)
 2764 * Menu: Added append_section().
 2765   (Murray Cumming)
 2766 * MenuItem:
 2767   - Added get_link().
 2768   (Murray Cumming)
 2769   - Add get_attribute().
 2770   (José Alburquerque)
 2771 * MenuModel: Added is_mutable() and get_n_items().
 2772   (Murray Cumming)
 2773 * Mount: Added get_symbolic_icon().
 2774   (Murray Cumming)
 2775 * MountOperation: Wrap the "show-unmount-progess" signal.
 2776   (José Alburquerque)
 2777 * OutputStream: Added write_bytes(), write_bytes_async() and write_bytes_finish().
 2778   (Murray Cumming)
 2779 * Add PollableInputStream and PollableOutputStream.
 2780   (José Alburquerque)
 2781 * Proxy: Add call(), call_sync() and call_finish() for unix_fd_list.
 2782   (Murray Cumming)
 2783 * ProxyAddress: Added get_destination_protocol()
 2784   and get_uri().
 2785   (Murray Cumming)
 2786 * Add Resource
 2787   Bug #674545 (Kalev Lember)
 2788 * Socket: Added get_available_bytes(), get_ttl(), set_ttl(), 
 2789   get_broadcast(), set_broadcast(), 
 2790   get_multicast_loopback(), set_multicast_loopback(),
 2791   get_multicast_ttl(), set_multicast_ttl(),
 2792   join_multicast_group(), leave_multicast_group(),
 2793   and properties.
 2794   (Murray Cumming)
 2795 * Volume:
 2796   - Added get_symbolic_icon().
 2797   - Added get_sort_key().
 2798   (Murray Cumming)
 2799 
 2800 Gio::DBus:
 2801 * Connection:
 2802   - Added get_last_serial().
 2803   (Murray Cumming)
 2804   - Added call_[finish|sync]() with UnixFDLists.
 2805   (José Alburquerque)#662371.
 2806 
 2807 gmmproc:
 2808 * Add _INCLUDE_IN_WRAP_INIT, _GMMPROC_WRAP_CONDITIONALLY.
 2809   (Kjell Ahlstedt) Bug #678883.
 2810 * Add _CUSTOM_CTOR_CAST
 2811   (Krzesimir Nowak)
 2812 * _WRAP_VFUNC: Handle virtual functions that throw GErrors.
 2813   (José Alburquerque) Bug #683460
 2814 * Add a _NO_WRAP_INIT_REGISTRATION macro
 2815   (José Alburquerque) Bug #684006
 2816 * _CLASS_GOBJECT: Allow classes to have custom wrap() functions.
 2817   (José Alburquerque) Bug #684006
 2818 * _WRAP_METHOD: Allow setting parameters from C output params.
 2819   (José Alburquerque) Bug #662371
 2820 
 2821 
 2822 2.34.0 (stable):
 2823 
 2824 * Some minor documentation improvements.
 2825   (Murray Cumming)
 2826  
 2827 2.33.14:
 2828 
 2829 Glib:
 2830 * RegEx: Add get_has_cr_or_lf().
 2831   (José Alburquerque)
 2832 * VariantIter: Add init() method.
 2833   (José Alburquerque)
 2834 
 2835 Gio:
 2836 * ActionGroup: Add the query_action() methods.
 2837   (José Alburquerque)
 2838 * FileAttributeMatcher: Add create_difference() and to_string().
 2839 * FileInfo:  Add has_namespace(), [get|set]_attribute_status(),
 2840   and [get|set]_attribute_strings().
 2841   (José Alburquerque)
 2842 * IOStream: Add splice_async() splice_finish().
 2843 * MenuItem: Add get_attribute().
 2844 * MountOperation: Wrap the "show-unmount-progess" signal.
 2845   (José Alburquerque)
 2846 
 2847 * Gio::DBus:
 2848   - Proxy: Add call(), call_sync() and call_finish() for unix_fd_list.
 2849     (Murray Cumming)
 2850 
 2851 * gmmproc:
 2852   - Make the output param feature work for single indirection.
 2853     (José Alburquerque) Bug #662371.
 2854   - Add 3-argument @newin.
 2855     (Kjell Ahlstedt)
 2856 
 2857 
 2858 2.33.13 (unstable):
 2859 
 2860 Gio:
 2861 * AppLaunchContext: Add setenv(), unsetenv() and get_environment().
 2862 * File: Add remove_async() and remove_finish().
 2863   (Murray Cumming)
 2864 * Add e ConverterInputStream and ConverterOutputStream.
 2865 * Add PollableInputStream and PollableOutputStream.
 2866   (José Alburquerque)
 2867 
 2868 Gio::DBus:
 2869 * Connection: Add the call_[finish|sync]() with UnixFDLists.
 2870   (José Alburquerque)#662371.
 2871 
 2872 gmmproc:
 2873 * Add a _NO_WRAP_INIT_REGISTRATION macro
 2874   (José Alburquerque) Bug #684006
 2875 * _CLASS_GOBJECT: Allow classes to have custom wrap() functions.
 2876   (José Alburquerque) Bug #684006
 2877 * _WRAP_METHOD: Allow setting parameters from C output params.
 2878   (José Alburquerque) Bug #662371
 2879 * Prepend a Doxygen @throws clause to the declaration of virtual 
 2880   functions that throw Glib::Error.
 2881   (José Alburquerque)
 2882 * Improve the search for unwrapped methods.
 2883   (Kjell Ahlstedt)
 2884 
 2885 Build:
 2886 * Use std::time_t instead of ::time_t 
 2887   instead of ::time_t.
 2888 * Use std::size_t and std::ptrdiff_t instead
 2889   of ::size_t and ::ptrdiff_t.
 2890   (Kjell Ahlstedt)
 2891 
 2892 
 2893 2.33.12 (unstable):
 2894 
 2895 Gio:
 2896 * Add Converter, ZlibCompressor, ZlibDecompressor and 
 2897   CharsetConverter classes.
 2898   (José Alburquerque)
 2899 * AppInfo: Added  get_display_name(),
 2900   set_as_last_used_for_type() and get_supported_types().
 2901 * Application: Added get_dbus_connection()
 2902   and get_dbus_object_path().
 2903 * ContentType:
 2904   - get_icon(): Fix a refcount error.
 2905   - Added get_symbolic_icon().
 2906   (Murray Cumming)
 2907 * DBusAuthObserver: Added allow_mechanism().
 2908 * Drive: Added get_symbolic_icon().
 2909 * FileInfo: Added get_symbolic_icon().
 2910 * Menu: Added append_section().
 2911 * MenuItem: Added get_link().
 2912 * MenuModel: Added is_mutable() and get_n_items().
 2913 * Mount: Added get_symbolic_icon().
 2914 * ProxyAddress: Added get_destination_protocol()
 2915   and get_uri().
 2916 * Socket: Added get_available_bytes(), get_ttl(), set_ttl(), 
 2917   get_broadcast(), set_broadcast(), 
 2918   get_multicast_loopback(), set_multicast_loopback(),
 2919   get_multicast_ttl(), set_multicast_ttl(),
 2920   join_multicast_group(), leave_multicast_group(),
 2921   and properties.
 2922 * Volume:
 2923   - Added get_symbolic_icon().
 2924   - Added get_sort_key().
 2925   (Murray Cumming)
 2926 
 2927 gmmproc:
 2928 * _WRAP_VFUNC: Handle virtual functions that throw GErrors.
 2929   (José Alburquerque) Bug #683460
 2930 
 2931 
 2932 2.33.4 (unstable):
 2933 
 2934 Glib:
 2935 * KeyFile: Correct the load_from_dirs() implementation.
 2936   (Krzesimir Nowak)
 2937 * Variant: Make sure that we always sink the initial reference.
 2938   (Krzesimir Nowak) Bug #680407
 2939 * VariantType: peek_string(): Correct this to handle 
 2940   the non-null-terminated result from g_variant_type_peek_string().
 2941 * Threads::Mutex, RecMutex: Add wrap() functions.
 2942   (Kjell Ahlstedt) Bug #483790
 2943 
 2944 gmmproc:
 2945 *  Add _CUSTOM_CTOR_CAST
 2946   (Krzesimir Nowak)
 2947 
 2948 Documentation:
 2949 * Show the get_type() functions in the API documentation.
 2950   (Murray Cumming) Bug #670212 (Mark Vender).
 2951 
 2952 
 2953 2.33.3 (unstable):
 2954 
 2955 Glib:
 2956 * Added the Bytes class, wrapping GBytes.
 2957   (Murray Cumming)
 2958 
 2959 Gio:
 2960 * InetSocketAddress: Added get_flowinfo() and get_scope_id()
 2961 * OutputStream: Added write_bytes(), write_bytes_async() and write_bytes_finish().
 2962 * InputStream: Added read_bytes(), read_bytes_async() and read_bytes_finish().
 2963   (Murray Cumming)
 2964 
 2965 Gio::DBus:
 2966 * Connection: Added get_last_serial().
 2967   (Murray Cumming)
 2968 
 2969 gmmproc:
 2970 * Add _INCLUDE_IN_WRAP_INIT, _GMMPROC_WRAP_CONDITIONALLY.
 2971   (Kjell Ahlstedt) Bug #678883.
 2972 
 2973 2.33.2 (unstable):
 2974 
 2975 * Added some enum values and documentation.
 2976   (Murray Cumming)
 2977 
 2978 2.33.1 (unstable):
 2979 
 2980 Gio:
 2981 * Application:
 2982   - Allow the application ID to be empty.
 2983   - Pass 0 (NULL) rather than "" to GApplication.
 2984   (Murray Cumming)
 2985 * Add Resource
 2986   Bug #674545 (Kalev Lember)
 2987 
 2988 Glib:
 2989 * Miscutils: get_system_data_dirs(), get_system_config_dirs():
 2990   Return early when the C function returns NULL.
 2991   (Krzesimir Nowak)
 2992 * Thread::RecMutex: Don't initialize this as a GStaticMutex.
 2993   (Deprecated anyway)
 2994   (Michał Wróbel) Bug #677291
 2995 * Documentation: Don't hide add_exception_handler() documentation.
 2996   (Kjell Ahlstedt)
 2997 
 2998 2.32.0 (stable):
 2999 
 3000 Glib:
 3001 * Dispatcher: Don't send messages to a deleted Dispatcher.
 3002   (Kjell Ahlstedt) Bug #651942
 3003 * Make SignalTimeout/SignalIdle::connect_once() more thread safe.
 3004   (Kjell Ahlstedt) Suggested by Chris Vine. Bug #396963
 3005 * Document Glib::Property and Glib::PropertyBase.
 3006   (Mark Vender) Bug #673291
 3007 
 3008 gmmproc:
 3009 * Add macro _CUSTOM_CTOR_CAST in _CLASS_BOXEDTYPE.
 3010   (Kjell Ahlstedt) Bug #511136, comment 20.
 3011 * Generate the documentation of default constructors of interface classes.
 3012   (Mark Vender) Bug #673213
 3013 
 3014 Build:
 3015 * Update Visual Studio projects.
 3016   (Chun-wei Fan)
 3017 
 3018 
 3019 2.31.22 (unstable):
 3020 
 3021 Glib:
 3022 * Threads, Dispatcher: Delete DispatchNotifier.
 3023   (Kjell Ahlstedt) Bug #671587.
 3024 
 3025 Gio:
 3026 * Action: Ensure vfunc callbacks return valid memory.
 3027   (José Alburquerque)
 3028 * ActionGroup: list_actions_vfunc(): Do not return freed memory.
 3029   (Murray Cumming)
 3030 * Move AppLaunchContext into its own header file.
 3031   (Murray Cumming)
 3032 * Add Menu and MenuItem.
 3033 * SimpleAction: Constructor: Add a parameter that takes no VariantType.
 3034   (Murray Cumming)
 3035 
 3036 Gio::DBus:
 3037 * Object: Ensure vfunc callbacks return valid memory.
 3038   (José Alburquerque)
 3039 * Add the Interface and Object interfaces.
 3040   (José Alburquerque)
 3041 
 3042 gmmproc:
 3043 * _WRAP_SIGNAL() can now take an optional deprecated parameter,
 3044   like _WRAP_METHOD() and _WRAP_PROPERTY().
 3045   (Murray Cumming, Kjell Ahlstedt)
 3046 * _WRAP_PROPERTY(): Correct the ifdefs in generated code when
 3047   using the optional deprecated parameter.
 3048   (Kjell Ahlstedt)
 3049 
 3050 Other:
 3051 * Dispatcher examples: Use Glib::signal_idle().connect_once().
 3052   (Kjell Ahlstedt) Bug #396963
 3053 * Some fixes for minor clang++ warnings.
 3054   (José Alburquerque, Murray Cumming)
 3055 
 3056 
 3057 2.31.20:
 3058 
 3059 Glib:
 3060 * Fix exceptions thrown by Thread::create() and Threads::Thread::create.
 3061   (Kjell Ahlstedt) Bug #640029 (Michael Edwards)
 3062 * Fix the build with --disable-deprecated-api.
 3063   (Kjell Ahlstedt) Bug #640029 (Michael Edwards)
 3064 
 3065 Gio::
 3066 * Application: Add quit(). 
 3067   (Murray Cumming)
 3068 
 3069 Gio::DBus:
 3070 * DBus::Error, DBus::Proxy: Fix interaction with generate_wrap_init.pl.
 3071   (Kjell Ahlstedt) Bug #640029 (Michael Edwards)
 3072 
 3073 * Documentation: Signal*: Better description of the connect*() methods.
 3074   (Kjell Ahlstedt) Bug #669906 (Mark Vender)
 3075 
 3076 gmmproc and tools:
 3077 * gmmproc: Allow destructors to be documented.
 3078   (José Alburquerque) Bug #668918 (Mark Vender)
 3079 * docextract_to_xml.py: Generate signal documentation too.
 3080   (José Alburquerque) Bug #668918 (Mark Vender)
 3081 * Add some scripts to regenerate the .defs files.
 3082   (José Alburquerque)
 3083 * generate_wrap_init.pl:
 3084   - Improve reg. of exception classes in sub-namespaces and
 3085   improve it for deprecated files and sub-namespaces.
 3086   (Kjell Ahlstedt) Bug #640029 (Michael Edwards)
 3087 * h2defs.py: Ignore the new GDK_AVAILABLE_IN_* macros.
 3088   (Murray Cumming)
 3089 
 3090 2.31.18.1:
 3091 
 3092 gmmproc:
 3093 * h2def.py: Handle types such as 'const gchar* const *' for functions.
 3094   (José Alburquerque)
 3095 * _WRAP_PROPERTY(): Allow properties to be deprecated.
 3096   (Murray Cumming)
 3097 
 3098 Gio:
 3099 * Application: Derive from the ActionGroup interface.
 3100 * Application: Add missing virtual functions and get/set_default() methods.
 3101 * Add MenuModel, MenuAttribute, MenuLink and MenuIter.
 3102 
 3103 Gio::DBus:
 3104 * ActionGroup, MenuModel: Have get() methods instead of create() methods.
 3105   (José Alburquerque) Bug #637445.
 3106 * Add DBus::MenuModel.
 3107 * Connection: Add the MenuModel export/unexport methods.
 3108 * Add class documentation.
 3109 
 3110 
 3111 2.31.18: (unstable):
 3112 
 3113 Gio:
 3114 * Add the ActionMap interface.
 3115   (José Alburquerque)
 3116 
 3117 Gio::Dbus:
 3118 * Add the ActionGroup classe.
 3119 * Connection: Add the ActionGroup export/unexport methods.
 3120   (José Alburquerque)
 3121 
 3122 Glib:
 3123 * Add the RemoteActionGroup classes.
 3124   (José Alburquerque)
 3125 
 3126 gmmproc:
 3127 * h2def.py: Handle deprecated functions.
 3128 * docs: Remove possible parens in gtk-doc signal references. Bug #668918.
 3129   (José Alburquerque)
 3130 
 3131 
 3132 2.31.16.1: (unstable):
 3133 
 3134 * gmmproc (docs):
 3135   - Add documentation to wrapped signals.
 3136     Bug #668918 (Mark)
 3137   - Convert signal and property names correctly.
 3138     Bug #668918 (Mark)
 3139   - Add some HTML entity conversions.
 3140   - Translate the <itemizedlist> tags in docs correctly.
 3141   (José Alburquerque)
 3142 
 3143 2.31.16: (unstable):
 3144 
 3145 Build:
 3146 * Dispatcher: Fix the build on win32.
 3147   (TS)
 3148 * thread.h: Move calls to deprecated glib functions into thread.cc.
 3149   (Haikel Guemar)
 3150 
 3151 2.31.2: (unstable):
 3152 
 3153 glibmm:
 3154 * Add Glib::Threads::* in threads.h, deprecating everything in thread.h.
 3155   This was necessary because we had to break the ABI to avoid using 
 3156   API that is now deprecated in glib.
 3157 * Avoid compiler warnings when using -std=c++0x with g++.
 3158   (Murray Cumming, Kjell Ahlsted)
 3159 
 3160 giomm:
 3161 * drive: Add get_sort_key().
 3162 * EmblemedIcon: Add clear_emblems().
 3163 * FileIconL Add the "file" property.
 3164 * InetAddress: Add address_equal().
 3165 * Mount: Add get_sort_key().
 3166 * Socket: Add the "timeout" property.
 3167 * SocketAddress: Add the "family" property.
 3168   (José Alburquerque)
 3169 
 3170 gmmproc:
 3171 * C example code removal: Also remove code in </programlisting> tags.
 3172  (José Alburquerque)
 3173 * Ensure template parameter has a space before to avoid trigraphs.
 3174   (Hub Figuière) Bug #663303
 3175 
 3176 Examples:
 3177 * Avoid use of the now-deprecated API.
 3178  (Murray Cummign)
 3179 
 3180 2.31.0.2: (unstable)
 3181 
 3182 * gthread.h: Move the deprecation ifdefs to avoid affecting non-deprecated API.
 3183 
 3184 2.31.0.1: (unstable)
 3185 
 3186 * Avoid deprecation compiler warnings in glibmm and projects using glibmm.
 3187   However, you will need to include either <glibmm.h> or <glibmm/thread.h>
 3188   before other glibmm includes.
 3189   (Murray Cumming)
 3190 * Move IOCondition from main.h to iochannel.h.
 3191   (Murray Cumming)
 3192 * Don't include <glibmm.h> via init.h or wrap_init.h.
 3193   (Murray Cumming)
 3194 * gmmproc:
 3195   - Don't include C code examples found in the XML docs. Bug #650544
 3196   - Don't include <glibmm.h> by default in generated files. Bug #662597
 3197   (José Alburquerque)
 3198   
 3199 2.31.0: (unstable)
 3200 
 3201 Glib:
 3202 * Date: set_time(): Use g_date_set_time_t() instead of g_date_set_time().
 3203   (José Alburquerque) 
 3204 * Thread: Deprecated thread_init(), Thread::joinable(), *_priority(), etc.
 3205   (Murray Cumming)
 3206 * (Threads are always enabled in glib now, and thread_init() does nothing.)
 3207 * VariantContainerBase: Add create_maybe().
 3208   (José Alburquerque) 
 3209 
 3210 Gio:
 3211 * DataInputStream: Add read_line_utf8() and read_line_finish_utf8().
 3212   (José Alburquerque)
 3213 * DBus::MethodInvocation: Add UnixFDList return_value() method overload.
 3214   (José Alburquerque)
 3215 * Re-add Application and related class so they can be finished.
 3216   (José Alburquerque)
 3217 * ApplicationCommandLine: Add the get_platform_data() method.
 3218   (José Alburquerque)
 3219 * SimpleAction: Wrap the signals and properties.
 3220   (José Alburquerque)
 3221 
 3222 * gmmproc:
 3223   - Fix h2def.py not parsing function starting with G_GNUC_* macros.
 3224   (Krzesimir Nowak) Bug #660225.
 3225   - _WRAP_METHOD: Allow return types to have commas.
 3226   (José Alburquerque) Bug #661401
 3227   - _WRAP_METHOD: Use {OUT} instead of {RET} for output params.
 3228   (José Alburquerque)
 3229   - Remove M4 warnings due to commas in return types.
 3230   (José Alburquerque)
 3231 
 3232 2.30.0: (stable)
 3233 
 3234 giomm:
 3235 * DBus::Server: Add constructors.
 3236 * Remove Application and friends, because they are still not ready.
 3237   See bug ##637445#c29
 3238   (Murray Cumming)
 3239 
 3240 Documentation:
 3241 * gmmproc: DocParser: Correct the removal of link tags.
 3242   (José Alburquerque)
 3243   
 3244 2.29.13: (unstable)
 3245 
 3246 giomm:
 3247 * Variant< std::vector<std::string> >: Ensure correct creation.
 3248   (José Alburquerque) Bug #657030 (Aurimas Černius)
 3249 gmmproc
 3250 * Correct handling of constversion etc. in _WRAP_METHOD, avoiding side-effects 
 3251   on other _WRAP_METHOD() calls in the same .hg file.
 3252   (Kjell Ahlstedt) Bug #657751,
 3253   
 3254 2.29.12: (unstable)
 3255 
 3256 2011-08-03  Murray Cumming  <murrayc@murrayc.com>
 3257 
 3258 * Gio::Application:
 3259   - Add back Gio::Application and friends so we can try to finish them.
 3260   - local_command_line_vfunc(): Use references for parameters.
 3261     See bug #643478.
 3262   (Murray Cumming)
 3263 * Gio::TimeZoneMonitor: Remove because it was removed in glib.
 3264   (José Alburquerque)
 3265 * Build:
 3266 configure: Require the latest libsigc++ because our tests require it.
 3267   See https://bugs.launchpad.net/bugs/829596
 3268   (Murray Cumming)
 3269 
 3270   
 3271 2.29.11: (unstable)
 3272 
 3273 * Gio::AppInfo:
 3274   - launch(): Use a vector instead of a ListHandle and assume that it contains 
 3275   Gio::File rather than strings. This was unusable before.
 3276   - Add launch() overload with no launch_context parameter.
 3277   - Add launch() overload taking one file, 
 3278   - launch_uri(): Deprecate the method taking a GAppLaunchContext*, adding 
 3279     one taking a Gio::AppLaunchContext instead.
 3280   - Add launch_uri() taking one URI.
 3281   (Murray Cumming)
 3282 * Add test case for a recent fix in libsigc++ with RefPtr.
 3283   (Kjell Ahlstedt) Bug #564005#c14 (Alexander Shaduri)
 3284 * tools: Add python .def generation scripts removed from PyGObject.
 3285   (Murray Cumming)
 3286 * gmmproc: Allow _STRUCT_NOT_HIDDEN to be used even when multiple classes 
 3287   are defined in one file.
 3288   (José Alburquerque)
 3289 
 3290 2.29.10: (unstable)
 3291 
 3292 * Gio:
 3293 - Added DateTime, TimeZone, TimeZoneMonitor.
 3294   (José Alburquerque)
 3295 
 3296 2.28.2: (stable)
 3297 
 3298 * gmmproc:
 3299   - _WRAP_METHOD: Add optional parameter functionality.
 3300   - _WRAP_[CREATE|CTOR|METHOD]: Support parameter reordering.
 3301   - _WRAP_METHOD: Add the possibility of an output parameter.
 3302   (José Alburquerque)
 3303   - Protect documentation with m4 quotes.
 3304   (Kjell Ahlstedt) Bug #603930
 3305 
 3306 Gio:
 3307 * DBus::Connection::emit_signal(): Replace empty strings with 0, because 
 3308   gio fails with "", apparently unnecessarily.
 3309   (José Alburquerque) Bug #645072 (Yannick Guesnet).
 3310 
 3311 Build:
 3312 * Removed now-unused doctooldir variable from pkgconfig files.
 3313   (Kalev Lember) Bug #652461
 3314 
 3315 2.28.1:
 3316 
 3317 gmmproc:
 3318 * Extra Defs Tool: Only generate properties that the GType owns.
 3319   (José Alburquerque)
 3320 * Put guards around generated includes in wrap_init.cc to fix the wind32 build.
 3321   (Kalev Lember) Bug #649182
 3322 * tools/pm/GtkDefs.pm: GtkDefs::split_tokens(): Speed improvement.
 3323   (Kjell Ahlstedt) Bug #644037
 3324 
 3325 Build:
 3326 * Update the VS 2005, 2008, and 2010 project files.
 3327   (Fan, Chun-wei)
 3328 * Examples build: Use the GLIB_COMPILE_SCHEMAS variable.
 3329   (Volker Grabsch) Bug #648485.
 3330 * Gio::DBus::Message: Fixed includes for WIN32
 3331   (Kalev Lember)  Bug #649168
 3332 
 3333 Documentation:
 3334 * Added some classes to the DBus documentation group and added class
 3335   overview documentation. (Murray Cumming)
 3336 
 3337 New API in glibmm 2.28:
 3338 (There was no stable glibmm 2.26 release)
 3339 
 3340 Glib:
 3341 * Variant: A new hierarchy of templated Variant<> types, for use with
 3342   Gio::Settings and Gio::DBus.
 3343   (José Alburquerque, Yannick Guesnet, Murray Cumming)
 3344 * OptionGroup:
 3345   - Add add_entry() that takes a slot with callback function.
 3346   - on_post_parse() overrides no longer need to call the base class.
 3347   (Kjell Ahlstedt)
 3348 * RefPtr: Make it work with sorted containers.
 3349   (David Kozub)
 3350 * Regex: Added and used a MatchInfo class.
 3351   (José Alburquerque)
 3352 * General:
 3353   - build_filename(): Add method overloads to take up to 9 arguments,
 3354   for convenience.
 3355   (Fabricio Godoy)
 3356   - Added get_system_data_dirs() and get_system_config_dirs().
 3357   (Murray Cumming)
 3358 
 3359 Gio:
 3360 * Proxy, ProxyAddress and ProxyResolver.
 3361   (Murray Cumming)
 3362 * Settings: For application settings, replacing GConf (or Gnome::Conf).
 3363   (Jonathon Jongsmam, José Alburquerque, Murray Cumming)
 3364 * DBus: API to use or implement D-Bus services.
 3365   (José Alburquerque, Yannick Guesnet, Michael Edwards,
 3366   Martin Braure de Calignon and Murray Cumming.)
 3367 * SocketControlMessage, UnixCredentialsMessage and UnixFDMessage.
 3368   (José Alburquerque)
 3369 * Added UnixFDList.
 3370   (José Alburquerque)
 3371 
 3372 gmmproc:
 3373 * Support for use of std::vector<> instead of ListHandle<>, SListHandle<>,
 3374 and ArrayHandle.
 3375 (Krzesimir Nowak)
 3376 
 3377 See also this list of new API:
 3378 http://developer.gnome.org/glibmm/unstable/since_2_28.html
 3379 
 3380 Gio::DBus, Glib::Variant and Gio::Settings were a huge amount of difficult
 3381 work mostly by José Alburquerque, with help from Jonathon Jongsmam,
 3382 Yannick Guesnet, Michael Edwards, Martin Braure de Calignon and Murray Cumming.
 3383 Some of José Alburquerque's work was funded by Openismus GmbH.
 3384 Thank you, everyone.
 3385 
 3386 
 3387 2.28.0 (stable):
 3388 
 3389 Gio:
 3390 * DBus::Connection:
 3391   - Added a register_method() overload with no vtable.
 3392   - register_object(), register_subtree(): Take the VTable by reference,
 3393   not pointer.
 3394   (Murray Cumming)
 3395 * DBus::MethodInvocation:
 3396   - get_parameters(): Return a VariantContainerBase instead of taking a
 3397   VariantBase.
 3398   - return_gerror(), return_error_literal(): Rename them both to return_error().
 3399   (Murray Cumming)
 3400 * DBus::NodeInfo::lookup_interface(): Add a method overload with no name.
 3401   (Murray Cumming)
 3402 * DBus::Proxy: Rename type_map_changed_properties to MapChangeProperties.
 3403   (Murray Cumming)
 3404 * DBus::VariantContainerBase::create_tuple(): Add a method overload that takes
 3405   a single VariantBase,
 3406 * Settings: Really add list_schemas().
 3407   (Murray Cumming)
 3408 
 3409 2.27.99.2 (unstable):
 3410 
 3411 Glib:
 3412 * Variant:
 3413   - Rename get(index) to get_child(index).
 3414  - Variant<std::string>:
 3415    Allow this to be used for object paths and signatures as well as just
 3416    bytestrings.
 3417  - Variant<Glib::ustring>:
 3418    Allow this to be used for bytestrings, object paths and signatures as well as just
 3419    (UTF-8) strings.
 3420  - Move constructor definitions into the .cc file.
 3421  - Capitalize the standard types, such as VARIANT_TYPE_STRING.
 3422  (Murray Cumming)
 3423 * ArrayHandle: Make it compilable with MSVC 2005, 2008, 2010.
 3424   (Krzesimir Nowak) Bug #645851 (Fan, Chun-wei)
 3425 
 3426 2.27.99.1 (unstable):
 3427 
 3428 Gio:
 3429 * DBus: Use VariantContainerBase for tuple Variants.
 3430 
 3431 2.27.99 (unstable):
 3432 
 3433 This is probably the very last release before 2.28.0 which will happen very soon.
 3434 
 3435 Gio:
 3436 * Removed Application, ApplicationCommandLine, and ActionGroup because
 3437   they are unfinished. We hope to add them back in glibmm 3.2.
 3438 * Removed SettingsBackend because it is unfinished.
 3439 * Settings: Removed API that used SettingsBackend.
 3440 * Variant: Improved the documentation.
 3441 
 3442 Build: Remove the dependency on mm-common during the tarball build.
 3443 
 3444 2.27.98 (unstable):
 3445 
 3446 Gio:
 3447 * DBus::InterfaceVTable: Make the tuple type clearer in SlotInterfaceMethodCall.
 3448 
 3449 Glib:
 3450 * Correct some range checks to use >= instead of just >.
 3451   (Murray Cumming) Thanks to Michael Edwards.
 3452 * Vectorutils, ArrayHandle: Check for NULL pointers.
 3453   (Krzesimir Nowak)
 3454 
 3455 2.27.97 (unstable):
 3456 
 3457 Gio:
 3458 * DBus::Proxy: Added the properties_changed signal.
 3459   (Yannick Guesnet) Bug #644886
 3460 * Variant:
 3461   - Added Variant<VariantBase>::get().
 3462   (Yannick Guesnet) Bug #644207.
 3463   - Added some get() method overloads.
 3464   (Murray Cumming)
 3465   - Added VariantBase::cast_dynamic().
 3466   (Yannick Guesnet) Bug #644146
 3467 
 3468 * Build: Fix the missing doc-install.pl problem.
 3469   mm-common is now needed for tarball builds, though this might change soon.
 3470   (Murray Cumming)
 3471 
 3472 2.27.96 (unstable):
 3473 
 3474 Gio:
 3475 * Application:
 3476   - open(): Added a single-file method overload.
 3477   - The command-line signal now returns an int instead of a bool. It is a
 3478   main() status code.
 3479   - Added get_environ().
 3480   - Add the local_command_line vfunc,
 3481 * ApplicationCommandLine: Use std::string instead of ustring in some API.
 3482   (Murray Cumming)
 3483 * DBus::InterfaceVTable: Use g_error_copy() where appropriate, fixing a crash.
 3484   (Murray Cumming) Bug #644008 (Yannick.Guesnet)
 3485 
 3486 * Build: Do not install doctool/ scripts such as doc-install.pl.
 3487   These are now only installed by mm-common, and the mm-common macros find it
 3488   there, so no changes should be necessary in other modules if you update
 3489   mm-common.
 3490   (Murray Cumming)
 3491 * Documentation: Avoid errors in the reference documentation due to encoding
 3492   confusion in our perl scripts.
 3493   (Kjell Ahlstedt) Bug #644037
 3494 
 3495 2.27.95 (unstable):
 3496 
 3497 Gio:
 3498 * Throw Gio::Error again, instead of just the base Glib::Error.
 3499   This was broken in glibmm 2.27.94.
 3500   (Murray Cumming)
 3501 
 3502 Glib:
 3503 * build_filename(): Add method overloads to take up to 9 arguments,
 3504   for convenience.
 3505   (Fabricio Godoy) Bug #599578
 3506 * Documentation: Mark some new API as new in 2.28.
 3507   (Murray Cumming)
 3508 
 3509 2.27.94 (unstable):
 3510 
 3511 Glib:
 3512 * OptionGroup:
 3513   - Add add_entry() that takes a slot with callback function.
 3514   (Kjell Ahlstedt) Bug #589197 (Hubert Figuiere)
 3515   - on_post_parse() overrides no longer need to call the base class.
 3516   (Kjell Ahlstedt) Bug #588988 (Hubert Figuiere)
 3517   - Make Glib::{Array,List,SList}Handle work with std::vector<bool>.
 3518   (Krzesimir Nowak) Bug 640079
 3519 
 3520 Gio:
 3521 * Moved all DBus* classes into a Gio::DBus namespace.
 3522   (Murray Cumming)
 3523 
 3524 2.27.93 (unstable):
 3525 
 3526 * Added ArrayHandler, ListHandler and SListHandler, to help with conversions
 3527   to/from std::vector.
 3528   These replace ArrayHandle, ListHandle, and SListHandle, which allowed the
 3529   use of any standard container. New APIs will use only std::vector, because
 3530   that is less confusing to developers, though less flexible.
 3531   (Krzesimir Nowak)
 3532 * Application: Initialize glibmm and giomm in the constructor, for
 3533   convenience.
 3534   (Murray Cumming)
 3535 * Resolver: lookup_service(), lookup_by_address(): Fix the reference counting.
 3536   (Murray Cumming) Bug #639575 (Michael Edwards)
 3537 * Fix the build (and of applications) with  GLIB_DISABLE_SINGLE_INCLUDES.
 3538   (Chris Kühl)
 3539 
 3540 2.27.91.1 (unstable):
 3541 
 3542 * gmmproc:
 3543   - _WRAP_CTOR(): Restore the optional extra parameter, because it
 3544   is still needed by gtkmm-2.4.
 3545   (Murray Cumming)
 3546   - Added conversion from bool& to gboolean*.
 3547   (Chris Kühl)
 3548 
 3549 * DBus::[watch|own]_name(): Add default values for parameters.
 3550 * DBusConnection:
 3551   - Add a send_message() without an "out_serial" parameter.
 3552   - Avoid errors/exceptions in callbacks due to NULL C strings.
 3553   - Wrap properties and signals.
 3554 * DBusMessage: Wrap properties and signals.
 3555 * DBusServer: Comment out constructors because of bug #639478.
 3556 * InetAddress: Wrap properties.
 3557 * Variant: Make the variant_type() functions return actual types.
 3558 * Documentation: Started a client/server example that uses the user's bus.
 3559 
 3560   DBus: Add initial implementation of a bus server/client example.
 3561 
 3562   * examples/Makefile.am:
 3563   * examples/dbus/busserver.cc: Add a partial implementation of the
 3564   server part of a server/client example that communicate through the
 3565   user's bus.
 3566   * examples/dbus/peer.cc: Typos.
 3567 
 3568 2.27.91 (unstable):
 3569 
 3570 Gio:
 3571 * BufferedInputStream, BufferedOutputStream: Fix create_sized().
 3572   (Murray Cumming) Bug #638616 (Michael Edwards)
 3573 * DBus: Use std::string for addresses since they could be a file path.
 3574   Use std::string instead of Glib::ustring for address parameters just to avoid
 3575   possible errors since DBus address could be a filename path as the "Addresses"
 3576   section of the DBus introduction seems to imply:
 3577   http://www.freedesktop.org/wiki/IntroductionToDBus.
 3578 * DBus: Use std::string instead of Glib::ustring for guid's since std::string's
 3579   API is probably adequate enough for their use.
 3580   (José Alburquerque)
 3581 * DBusConnection:
 3582   - call*() methods: Re-order parameters.
 3583   - Callbacks: Check for NULL GError** parameters and throw exceptions to the
 3584   caller.
 3585   - Add [register|unregister]_subtree() methods.
 3586   - Fix crashes caused by inappropriate use of reinterpret_cast<>.
 3587   (José Alburquerque) Bug #637587 (Yannick Guesnet)
 3588 * DBusConnectionInvocation: reference-counting fixes.
 3589   (Murray Cumming)
 3590 * DBusIntrospection: Fix some reference counting.
 3591 * DBusServer:
 3592   - Added create() methods.
 3593   - CCorrect the type of the "active" property.
 3594 * SocketService, ThreadedSocketService: Correct ref-counting for signals.
 3595 * Improvements to the DBus examples.
 3596   (José Alburquerque)
 3597 
 3598 Tools:
 3599 * gmmproc: Warn about unwrapped properties.
 3600   (Krzesimir Nowak)
 3601 * Added defs_fixer.pl, which fixes some generated .defs by applying a specified
 3602   override file. This should be easier than using a patch.
 3603   (Krzesimir Nowak)
 3604 
 3605 
 3606 2.27.5.1: (unstable):
 3607 
 3608 Glib:
 3609 * RefPtr: Make it work with sorted containers.
 3610   (David Kozub) Bug #626858
 3611 * Variant:
 3612   - Make all the get_iter() methods const.
 3613   - Added dictionary entry and dictionary specializations.
 3614   - VariantContainerBase: Add a create() method from an array of variants.
 3615   - Added tests.
 3616   (José Alburquerque)
 3617 * gmmproc cleanup
 3618   (José Alburquerque)
 3619 
 3620 Gio:
 3621 * Application: Added the open signal.
 3622   (Yannick Guesnet)
 3623 * DBusConnection: Add register/unregister_object() methods.
 3624   (José Alburquerque) Bug #637587 (Yannick Guesnet)
 3625 
 3626 
 3627 2.27.5: (unstable):
 3628 
 3629 Glib:
 3630 * Added Variant<std::string>, Glib::Variant< array >, and
 3631   Variant< vector > specializations
 3632 
 3633 Gio:
 3634 * Added DBus client example: examples/dbus/well-known-address-client.cc
 3635   (José Alburquerque)
 3636 * Fox the build with mingw32.
 3637   (José Alburquerque) Bug #636754 (t.sailer)
 3638 
 3639 
 3640 2.27.4.1: (unstable):
 3641 
 3642 Gio:
 3643 * DBus[Connection|Proxy]: Don't take extra reference on async creation.
 3644 * DBusConnection:
 3645   - Add non-observable create method overloads.
 3646   - Make the create methods.async get methods, static.
 3647   - Added get_sync() methods.
 3648   - Added send_message_with_reply_sync() methods.
 3649   - Added signal_subscribe() and add_filter().
 3650 * DBusIntrospection: new_for_xml(): Rename to create_for_xml().
 3651 * DBusProxy:
 3652   - Reorder the parameters so that "name" is second in methods.
 3653   - Add a non-cancellable call_sync() method.
 3654 * Documentation: Add a DBus Doxygen group.
 3655   (José Alburquerque)
 3656 
 3657 Glib:
 3658 * Regex: Add a MatchInfo class and use it.
 3659   (José Alburquerque) Bug #636911 (Alexander Shaduri)
 3660 * gmmproc: Remove m4 conversion files for gdk, gtk, atk, and pango.
 3661   They are now in the derived projects, which should now include
 3662   convert_glibmm instead of, for instance, convert_gtkmm.
 3663   Some modules will now need to add a line in their configure.ac so they
 3664   can use the extra conversions from gtkmm. For instance, with
 3665   gtksourceviewmm:
 3666   MM_PKG_CONFIG_SUBST([GMMPROC_EXTRA_M4_DIR], [--variable=gmmprocm4dir gtkmm-3.0])
 3667   (Murray Cumming)
 3668 
 3669 2.27.4: (unstable):
 3670 
 3671 Gio:
 3672 * DBus::Address: Wrap the gio dbus address API in this namespace.
 3673 * DBusConnection:
 3674   - Add emit_signal().
 3675   - Add call(), call_finish() and call_sync() methods.
 3676 * DBusMethodInvocationbusmethodinvocation: Remove the default constructor
 3677   because it probably will not be used (there is no create() method to
 3678   go along with it).
 3679 * DbusServer: create_sync(): Use g_dbus_server_new_sync() instead of the
 3680   constructors because the C function does more than call g_initable_new().
 3681   (José Alburquerque)
 3682 
 3683 gmmproc:
 3684 * Improve parsing of the C documentation.
 3685   (José Alburquerque)
 3686 
 3687 2.27.3.1: (unstable):
 3688 
 3689 Gio:
 3690 * Added ApplicationCommandLine.
 3691 * Application
 3692   - Added non-cancellable overload of register_application()
 3693   - Return int value from run() correctly
 3694   - Fix protected constructor signature
 3695   (Jonathon Jongsma)
 3696 * DBusConnection, DBusProxy, DBusServer: Add non-cancellable overloads of the
 3697   constructors and create methods.
 3698   Renamed the create() synchronized methods to create_sync().
 3699 * Initable: Add a non-cancellable overload of the init() method.
 3700 * Documentation: Added lots of class and method documentation.
 3701    (José Alburquerque)
 3702 
 3703 
 3704 2.27.3: (unstable):
 3705 
 3706 Gio:
 3707 * Application: Added open().
 3708 * ActionGroup: Added list_actions.
 3709 * DataInputStream: Added read_upto(), read_upto_async()
 3710   and read_upto_finish().
 3711   (Murray Cumming)
 3712 * DBusConnection: Correct the AsyncInitable inheritance/implementation.
 3713 * MemoryOutputStream: Added steal_data(), and a const get_data().
 3714 * NetworkService: Added get_scheme(), set_scheme() and the property.
 3715 * Socket: Added get_timeout(), set_timeout(),
 3716   receive_with_blocking() and send_with_blocking().
 3717   (José Alburquerque)
 3718 * SocketClient:
 3719   * Add get_enable_proxy(), set_enable_proxy(),
 3720   get_timeout(), set_timeout() and add_application_proxy().
 3721   (José Alburquerque)
 3722   * Added connect_to_uri(), connect_to_uri_async()
 3723   and connect_to_uri_finish().
 3724   (Murray Cumming)
 3725 * SocketConnectable: socketconnectable Added proxy_enumerate() and a
 3726   const enumerate().
 3727 * Added UnixSocketAddress
 3728 * UnixCredentialMessage, UnixFDMessage: Wrap properties properly.
 3729   (José Alburquerque)
 3730 * giomm.h: Add includes of newly wrapped API.
 3731   (José Alburquerque)
 3732 
 3733 Glib:
 3734 * ObjectBase: Fixed compiler errors when the debug warnings are enabled
 3735   at compile time.
 3736   (Krzesimir Nowak)
 3737 
 3738 2.27.2: (unstable):
 3739 
 3740 Gio:
 3741 
 3742 * Added ActionGroup.
 3743 * Application: Large API changes to match the changed C API.
 3744 * DBusConnection: Reorder the parameters in the
 3745   constructors and create methods so that the DBusConnection flag
 3746   parameter has a default value.
 3747 * DBusProxy: Added get_cached_property().
 3748   (José Alburquerque)
 3749 
 3750 Glib:
 3751 * Main: Add get_time(), deprecating get_current_time(), though this needs
 3752   more work.
 3753   (Murray Cumming)
 3754 
 3755 2.27.1: (unstable):
 3756 
 3757 Gio:
 3758 * AsyncInitable: Add create_finish().
 3759 * DBusProxy:
 3760   -  Add call(), call_finish() and call_sync() methods.
 3761   - Add properties and signals.
 3762   (José Alburquerque)
 3763 * Variant: create methods: Remove the floating reference of the GVariants,
 3764   correcting our memory management.
 3765 
 3766 Glib:
 3767 * Added get_system_data_dirs() and get_system_config_dirs().
 3768   (Murray Cumming)
 3769 * Build: Fix a Windows build problem caused by the removal of the optional-API
 3770   ifdefs.
 3771   (José Alburquerque)
 3772 
 3773 2.27.0: (unstable):
 3774 
 3775 * Depend on glib 2.27.x.
 3776 * Add Gio:Application.
 3777 
 3778 2.25.5: (unstable):
 3779 
 3780 Gio:
 3781 * Removed Application (removed in glib 2.26)
 3782   This is still in the git master versions.
 3783 * DBusMessage: Added create_from_blob(), set/get_byte_order(),
 3784   get_header_fields(), bytes_needed(), to_blob(), to_exception(), get_locked(),
 3785   lock() and copy().
 3786 * NetworkAddress: Added get_scheme() and property.
 3787 * Added Proxy, ProxyAddress and ProxyResolver.
 3788 * Settings: Added reset(), list_children(), list_keys().
 3789   (Murray Cumming)
 3790 * Added DBusAnnotationInfo, DBusArgInfo, DBusMethodInfo, DBusSignalInfo,
 3791   DBusPropertyInfo, DBusInterfaceInfo, and DBusNodeInfo.
 3792 * Added DBusProxy.
 3793 * Added DBus::watch() and DBus::unwatch_name().
 3794 * Several other DBus* improvements.
 3795   (José Alburquerque)
 3796 
 3797 Glib:
 3798 * Variant: Added get_maybe(), get_size(), get_data(), store(), and
 3799   get_n_children().
 3800 * Added VariantIter.
 3801   (Murray Cumming)
 3802 
 3803 2.25.4: (unstable):
 3804 
 3805 Gio:
 3806 * Added AsyncInitable.
 3807 * DBusConnection: Added create() methods.
 3808 * UnixConnection: Add receive/send_credentials() methods.
 3809 * Added SocketControlMessage, UnixCredentialsMessage and UnixFDMessage.
 3810   (José Alburquerque)
 3811 
 3812 2.25.3: (unstable):
 3813 
 3814 Glib:
 3815 * Added VariantBase and Variant<>.
 3816   (José Alburquerque, Murray Cumming)
 3817 
 3818 Gio:
 3819 * Added Application, wrapping GApplication
 3820   (Murray Cumming)
 3821 * Added Credentials.
 3822   (Murray Cumming)
 3823 * Added DBusConnection, DBusMethodInvocation, DBusServer,
 3824   DBusAuthObserver and DBusMessage.
 3825   (José Alburquerque, Murray Cumming, Martin Braure de Calignon)
 3826 * Added UnixFDList.
 3827    (José Alburquerque)
 3828 
 3829 Build:
 3830 * Fix the build without __STDC_ISO_10646__.
 3831   (Koop Mast)
 3832 
 3833 
 3834 2.25.2: (unstable):
 3835 
 3836 Gio:
 3837 * Settings: create*() methods:
 3838   Use SettingsBackend instead of string context parameters.
 3839   (Murray Cumming)
 3840 
 3841 
 3842 2.25.1: (unstable):
 3843 
 3844 Glib:
 3845 
 3846 * Removed the --enable-api-exceptions, --enable-api-properties,
 3847   --enable-api-vfuncs and --enable-api-default-signal-handlers options
 3848   because nobody needs them any more.
 3849   The defines are now always defined, for backwards compatiblity.
 3850 * Keyfile:
 3851   - Added get_int64, get_uint64, set_int64, set_uint64().
 3852   - Added load_from_dirs().
 3853   (José Alburquerque)
 3854 * OptionGroup: Added set_translate_func().
 3855   (José Alburquerque)
 3856 * RegEx: Added get_compile_flags(), get_match_flags().
 3857   (José Alburquerque)
 3858 * TimeVal: Avoid compiler warning in TimeVal::as_double()
 3859   (Daniel Elstner) Bug #617463 (Alexander Shaduri)
 3860 * Added Glib::listenv().
 3861   (Alex Vallée) Bug #578355.
 3862 
 3863 Gio:
 3864 * DesktopAppInfo: Added get_filename().
 3865   (José Alburquerque)
 3866 * Added Settings, wrapping GSettings.
 3867   (Jonathon Jongsmam, José Alburquerque)
 3868 
 3869 2.24.2 (stable):
 3870 
 3871 * Reference Documentation: Add main page text for index.html.
 3872   (David King, Murray Cumming)
 3873 
 3874 2.24.1:
 3875 
 3876 * UnixOutputStream: Fix the constructor to use the correct property name.
 3877   (Alex Vallee) Bug #615482
 3878 * Documentation: Strip out the gobject-introspection annotations, and use
 3879   other improvements made to docextract_to_xml.py
 3880   (José Alburquerque)
 3881 * Fix the Windows MSVC build. (Armin Burgmeier)
 3882 
 3883 2.24.0:
 3884 
 3885 * Changes in glibmm 2.24 compared to glibmm 2.22:
 3886 
 3887 Glib:
 3888 * BalanceTree: New class, wrapping GTree.
 3889   (Szilárd Pfeiffer, Jonathan Jongsma)
 3890 * Fix ustring::format(non-const char*) and add regression test.
 3891   (Debarshi Ray)
 3892 
 3893 Gio:
 3894 * Added InetAddress, NetworkAddress, NetworkService, Resolver, Socket,
 3895   SocketAddress, SocketAddressEnumerator, SocketClient, SocketConnectable,
 3896   SocketConnection, SocketListener, SocketService, SrvTarget, TcpConnection,
 3897   Threaded SocketService, UnixConnection
 3898   (Jonanthan Jongsma)
 3899 * AsyncResult: Add get_source_object_base(), deprecating get_source_object()
 3900   because it usually can never work.
 3901   (Murray Cumming, Daniel Elstner) Bug #608269 (Michael Hasselmann)
 3902 * Cancellable: Added release_fd() and make_polldf().
 3903 File:
 3904   - Added has_parent(), supports_thread_contexts(), start_mountable(),
 3905   stop_mountable(), poll_mountable()
 3906   - Aded create_file_readwrite(),  create_file_readwrite_async().
 3907   - Added open_readwrite(), open_readwrite_async(), finish_readwrite(), r
 3908   replace_readwrite(), replace_readwrite_async() and finish_replace_readwrite().
 3909   - unmount_mountable(), eject_mountable(): Add overrides with MountOperation
 3910   parameters.
 3911 * ThemedIcon: Added get_names().
 3912   (Murray Cumming)
 3913 * NetworkService: Add domain property.
 3914   (Krzesimir Nowak)
 3915 
 3916 
 3917 2.23.4 (unstable):
 3918 
 3919 Gio:
 3920 * File: Add TypeTraits to fix Gtk::FileChooser::get_files() in gtkmm.
 3921   (Jonathan Jongsma) Bug #590940 (Tomasz Jankowski)
 3922 * MemoryInputStream: Correct data loss/corruption with binary data.
 3923   (Alexey Kosilin) Bug #609552 (Holger Seelig)
 3924 * ThemedIcon: Added get_names().
 3925   (Murray Cumming)
 3926 
 3927 Glib:
 3928 * Fix ustring::format(non-const char*) and add regression test.
 3929   (Debarshi Ray)
 3930 
 3931 Build:
 3932 * tests: Reorder assignment to LDADD and giomm_ldadd in tests/Makefile.am
 3933   to always use the built library, not the installed one.
 3934   (David King) Bug #610854 (Pacho Ramos)
 3935 
 3936 2.23.3 (unstable):
 3937 
 3938 Gio:
 3939 * AsyncResult: Add get_source_object_base(), deprecating get_source_object()
 3940   because it usually can never work.
 3941   (Murray Cumming, Daniel Elstner) Bug #608269 (Michael Hasselmann)
 3942 * File: Delete Gio::SlotFileProgress (and friends) at the correct time,
 3943   fixing a crash.
 3944   (Debarshi Ray) Bug #611521.
 3945 * IOStream: get_input_stream(), get_output_stream(): Fix reference counting,
 3946   fixing a crash.
 3947   (Murray Cumming) Bug #607554 (michi7x7)
 3948 * MemoryInputStream::add_data(): Minor documentation fix.
 3949   (Michael Hasselmann)
 3950 * MemoryOutputStream: Fix the constructor, so this really works.
 3951   (Krzysztof Kosiński) Bug #605710
 3952 
 3953 2.23.2 (unstable):
 3954 
 3955 Glib:
 3956 * BalanceTree: New class, wrapping GTree.
 3957   (Szilárd Pfeiffer, Jonathan Jongsma)
 3958 * NodeTree: get_root() const correction.
 3959   (Alexander Shaduri)
 3960 
 3961 Gio:
 3962 * Cancellable: Added release_fd() and make_polldf().
 3963 * File:
 3964   - Added has_parent(), supports_thread_contexts(), start_mountable(),
 3965   stop_mountable(), poll_mountable()
 3966   - Aded create_file_readwrite(),  create_file_readwrite_async().
 3967   - Added open_readwrite(), open_readwrite_async(), finish_readwrite(), r
 3968   replace_readwrite(), replace_readwrite_async() and finish_replace_readwrite().
 3969   - unmount_mountable(), eject_mountable(): Add overrides with MountOperation
 3970   parameters.
 3971 * NetworkService: Change hostname property to domain.
 3972   (Krzesimir Nowak)
 3973 * SocketConnection: Remove graceful-disconnect property.
 3974   (Krzesimir Nowak)
 3975 * UnixInputStream: Fix the constructor's implementation.
 3976   Bug #608665 (Matt Marsh)
 3977 
 3978 * Windows: giomm.h: Don't include files on Windows that are not available
 3979   on that platform.
 3980   (Armin Burgmeier)
 3981 
 3982 2.23.1 (unstable):
 3983 
 3984     This release adds the BalancedTree class (wrapping GTree) and fixes a number
 3985     of bugs, including one where we were accidentally depending on an unreleased
 3986     version of glib.
 3987 
 3988     Alexander Shaduri (1):
 3989           Bug #594173 - NodeTree::get_root() violates const-correctness
 3990 
 3991     Daniel Elstner (1):
 3992           Fine-tune Doxygen configuration to improve output
 3993 
 3994     Jonathon Jongsma (8):
 3995           Add non-cancellable versions of a bunch of SocketClient functions
 3996           wrap g_socket_connection_factory_create_connection()
 3997           A bunch of minor doxygen cleanups around the tree
 3998           Fix up some formatting issues for BalancedTree
 3999           Rename btree.* to balancedtree.*
 4000           Bug #606146 - Relax the glib requirement
 4001           Bug 581811 - Gio::content_type_guess() miss the version with a NULL filename
 4002 
 4003     Krzesimir Nowak (1):
 4004           Bug #606100 - Fix wrapping properties.
 4005 
 4006     Szilárd Pfeiffer (3):
 4007           Implement GTree wrapper
 4008           Implemented reference counting for BalancedTree.
 4009           Fixed several bugs of balanced binary tree wrapper.
 4010 
 4011 2.23.0 (unstable):
 4012 
 4013     This release adds API for the new Network I/O classes that were added in
 4014     glib 2.22.x (e.g. Gio::Socket, Gio::Resolver, etc). Testing of this new API
 4015     would be greatly appreciated. There are a few minor fixes in various other
 4016     areas as well.
 4017 
 4018     Armin Burgmeier (2):
 4019           Added new files to MSVC projects
 4020           ifdef-out inclusion of files not available on Windows in giomm.h
 4021 
 4022     Jonathon Jongsma (18):
 4023           Re-enable network IO stuff (GSocket, etc)
 4024           Re-enable network IO stuff (Socket, Resolver, etc)
 4025           Add socket-client example
 4026           Add socket-server example
 4027           Take an extra ref from the return of g_inet_socket_address_get_address
 4028           Fix another bug in resolver example
 4029           Regenerate gio_methods.defs, bump glib requirement
 4030           Re-generate gio_docs.xml
 4031           Wrap Gio::Mount::get_default_location()
 4032           _IGNORE a couple API that we've implemented manually
 4033           Wrap SocketClient, SocketConnection, TcpConnection, UnixConnection
 4034           Wrap SocketListener
 4035           Accidentally marked wrong SocketConnection as non-win32
 4036           Re-generate gio signal defs
 4037           Wrap SocketService
 4038           Wrap ThreadedSocketService
 4039           Wrap missing properties of SocketClient, SocketConnection, SocketListener
 4040           Add some more .gitignore stuff
 4041 
 4042     José Alburquerque (1):
 4043           Make build successful when exceptions, vfuncs, etc. are disabled.
 4044 
 4045     Murray Cumming (1):
 4046           Regex: Slight documentation improvement.
 4047 
 4048 
 4049 2.22.1 (stable):
 4050 
 4051     This is a quick follow-on release to fix a couple minor issues discovered in
 4052     2.22.0.  The tarball has been re-generated with the latest mm-common to fix
 4053     a devhelp installation issue. There is also a build fix for when building
 4054     with exceptions disabled.
 4055 
 4056     Daniel Elstner (1):
 4057           Fix KeyFile build with exceptions disabled
 4058 
 4059 
 4060 2.22.0 (stable):
 4061 
 4062     This it he first release in the stable 2.22 series.  It is essentially
 4063     equivalent to 2.21.5, but with a few build fixes, etc.
 4064 
 4065     Daniel Elstner (8):
 4066           Re-enable input file line markers in gmmproc
 4067           Fix broken test for empty _WRAP_METHOD argument
 4068           Allow the C documentation to be overridden
 4069           Slightly clean up gross Perl code in gmmproc.in
 4070           Correctly quote the extracted comment for M4
 4071           Enable verbose output of autoreconf
 4072           Do not complain about missing docs_override.xml
 4073           Support Automake silent rules
 4074 
 4075 
 4076 2.21.5 (unstable):
 4077 
 4078     This release is a release candidate for 2.22.0.  As such, some unfinished
 4079     API has been disabled (notably the network IO classes that we were not able
 4080     to finish in time).  Also, a few documentation-related fixes.
 4081 
 4082     Daniel Elstner (5):
 4083           Remove sigc from the Doxygen excluded symbols
 4084           Sanitize the Glib::Cond usage example
 4085           Officially deprecate GLIBMM_CHECK_PERL macro
 4086           Delete obsolete MAINTAINERS file
 4087           Implement Gio::Socket ctors using Gio::Initable
 4088 
 4089     Jonathon Jongsma (2):
 4090           Add Network I/O classes to new documentation module
 4091           disable network io stuff.  punt to next release
 4092 
 4093 
 4094 2.21.4.2 (unstable):
 4095 
 4096     This release corrects a mistake in the build setup which prevented
 4097     the installation of the gmmproc code generation support files.
 4098 
 4099     Daniel Elstner (1):
 4100           Always build tools/ subdirectory (bgo #593518, Vincent Untz)
 4101 
 4102 2.21.4.1 (unstable):
 4103 
 4104     Daniel Elstner (4):
 4105           Reenable hierarchy graphs for each class
 4106           Remove header and footer HTML fragments
 4107           Use shared mm-common Doxygen style sheet
 4108 
 4109 2.21.4 (unstable):
 4110 
 4111     Daniel Elstner (59):
 4112           Transition to new mm-common build infrastructure
 4113 
 4114     José Alburquerque (1):
 4115           Correct the if condition in Gio::MemoryInputStream::add_data().
 4116 
 4117 
 4118 2.21.3 (unstable):
 4119 
 4120     David King (1):
 4121           Only compile the properties example if properties are enabled.
 4122 
 4123     Jonathon Jongsma (10):
 4124           fix release target to use correct tagging scheme
 4125           Bug 587173 - Fails to install when bootstrapped with Automake 1.11
 4126           add _IGNORE() for a eject_with_operation() which is hand-written
 4127           add get_start_stop_type() and Gio::DriveStartStopType enum
 4128           add overloads for resolver methods without a cancellable object
 4129           add async versions of Resolver methods
 4130           Added a simple example showing how to resolve an internet address from a hostname
 4131           Fix MemoryInputStream::addData (Bug #589683)
 4132           Fix a build error in MemoryInputStream
 4133           Add Glib::ObjectBase::freeze_notify()/thaw_notify.  Fixes Bug #575533
 4134 
 4135     José Alburquerque (1):
 4136           Repair Glib::KeyFile docs with regard to exceptions. Bug# 587766.
 4137 
 4138     Krzesimir Nowak (1):
 4139           Wrapped several ISO 8601 related functions.
 4140 
 4141     Murray Cumming (1):
 4142           Corrected the ChangeLog to mention changes that I accidentally committed in last month, but which I did want to commit some time.
 4143 
 4144 2.21.2 (unstable):
 4145 
 4146 Glib:
 4147     Daniel Elstner (1):
 4148           Treat empty Glib::spawn*() working dir as unset
 4149 
 4150     Jonathon Jongsma (1):
 4151           Add OptionGroup::add_entry(.., double&)
 4152 
 4153 Gio:
 4154     Daniel Elstner (1):
 4155           Remove stray semicolons
 4156 
 4157     Jonathon Jongsma (9):
 4158           Fix build with glib from master
 4159           wrap a couple added GDrive methods
 4160           Wrap g_drive_eject_with_operation() and related functions
 4161           implement GDrive::stop-button signal
 4162           implement Gio::InetAddress::get_native_size()
 4163           Implement Gio::Mount::mount/eject_with_operation()
 4164           implement Gio::Volume::eject_with_operation()
 4165           fix accidental bug in Gio::Drive::eject() that the compiler warned me about
 4166           implement Gio::VolumeMonitor::drive-stop-button
 4167 
 4168 2.21.1 (unstable):
 4169 
 4170 Glib:
 4171 * Date: Constructor: Check for invalid dates.
 4172   (José Alburquerque)
 4173 * Added Glib::ValueArray, for use in gstreamermm.
 4174   (José Alburquerque)
 4175 * Added Glib::file_set_contents().
 4176   (Jonathon Jongsma)
 4177 * gmmproc:
 4178   - Avoid problems with spaces in _DEFS() calls.
 4179   (Hubert Figuiere) Bug #586785.
 4180   - Improve guessing of the *_get_type() function names from enum names.
 4181   (José Alburquerque) Bug #575870.
 4182 
 4183 Gio:
 4184 * Cancellable: Added connect() and disconnect().
 4185 * Added FileIOStream.
 4186 * Added InetAddress.
 4187 * Added Initable.
 4188 * Added IOStream.
 4189 * Added NetworkAddress.
 4190 * Added NetworkService.
 4191 * Added Resolver
 4192 * Added Socket.
 4193 * Added SocketAddress.
 4194 * Added SocketConnectable.
 4195 * Added SrvTarget.
 4196   (Jonathon Jongsma)
 4197 * File::load_contents() Added overload without the etag_out parameter.
 4198   (Hubert Figuiere) Bug #581349.
 4199 
 4200 Windows Build:
 4201 * General Windows fixes.
 4202 * Fix the build directly from git.
 4203 (Armin Burgmeier)
 4204 
 4205 2.20.0 (stable):
 4206 
 4207 * Documentation fixes (Daniel Elstner)
 4208 
 4209 2.19.8 (unstable):
 4210 (2.19.4 to 2.19.8 were skipped)
 4211 
 4212 * Added FILE_CREATE_REPLACE_DESTINATION enum value.
 4213 * Added Error::TOO_MANY_OPEN_FILES error code.
 4214 * Fix some compiler warnings about extra ;s.
 4215   (Murray Cumming)
 4216 
 4217 2.19.3 (unstable):
 4218 
 4219 * New API:
 4220   * BufferedInputStream: buffer_size property
 4221   * BufferedOutputStream: buffer_size, auto_grow properties
 4222   * DataInputStream: byte_order, newline_type properties
 4223   * DataOutputStream: byte_order property
 4224   * FilterInputStream: close_base_stream property, get/set_close_base_stream()
 4225   * FilterOutputStream: close_base_stream property, get/set_close_base_stream()
 4226   * UnixInputStream: fd and close_fd properties, get_fd(), get/set_close_fd()
 4227   * UnixOutputStream: fd and close_fd properties, get_fd(), get/set_close_fd()
 4228 * Make licenses consistent with eachother (library gpl vs. lesser gpl, etc)
 4229   (Deng Xiyue)
 4230 * Fixed some problems when building with exceptions disabled (Murray Cumming)
 4231 * Build fixes (Theppitak Karoonboonyanan)
 4232 
 4233 2.19.2 (unstable):
 4234 
 4235 * File: Added make_directory_with_parents() method overload with no parameter.
 4236   Bug #566003 (Philip Belemezov).
 4237 * NoteTree: Do not use a non-ASCII dash character in a comment, to
 4238   avoid the MSVC++ warning C4819 with Visual Studio 2008.
 4239   (Tao Wang) Bug #568072
 4240 * spawn_*() functions: Added alternative API for when
 4241   GLIBMM_EXCEPTIONS_ENABLED is not enabled. (Murray Cumming)
 4242   Bug #565487 (Jonathon Jongsma)
 4243 * uri_*() functions: Fix memory leak.
 4244   (Jonathan Jongsma) Bug #566845 (Jason Kasper)
 4245 * ustring: Add an overload which takes only a format string and no arguments
 4246   to be substituted. (Daniel Elstner) Bug #506394.
 4247 
 4248 2.19.1 (unstable):
 4249 
 4250  * Fix accidental ABI breakage in 2.19.0 caused by adding default handlers for
 4251    new Gio::Drive signals
 4252 
 4253 2.19.0 (unstable):
 4254 
 4255  * wrapped new glib 2.19.x API
 4256    * Gio::AppInfo: get_commandline(), can_delete(), do_delete(),
 4257      reset_type_associations(), launch_default_for_uri()
 4258    * Gio::Drive: new signals changed, disconnected, and eject_button
 4259    * Gio::Icon: create(std::string), to_string()(),
 4260    * Gio::Mount: guess_content_type_sync(), is_shadowed(), shadow(), unshadow()
 4261    * Gio::content_type_from_mine_type();
 4262    * Gio::DesktopAppInfo: create_from_keyfile()
 4263    * Gio::Emblem: new class
 4264    * Gio::EmblemedIcon: new class
 4265    * Gio::MemoryOutputStream: new class
 4266  * Bugs Fixed:
 4267    * 555743 - warning in glibmm
 4268    * 562716 - warning fixing cause more warnings.
 4269    * 396963 - Add Glib::signal_idle().connect_once()
 4270  * Thanks to contributions from Przemysław Grzegorczyk, Dave Foster, Hubert
 4271    Figuiere, and Jonathon Jongsma for changes in this release
 4272 
 4273 2.18.1 (stable):
 4274 
 4275  * Many windows build improvements
 4276  * Bugs fixed:
 4277    * 506410 - Call of overloaded Stringify is ambiguous
 4278    * 529496 - Gio::Error::HOST_NOT_FOUND clashes with a netdb.h #define
 4279    * 539891 - Can't use doxygen commands in *_override.xml
 4280    * 555576 - name clash in fileinfo.h with winbase.h from VS2005
 4281    * 556315 - Extra defs generation utility forgets to generate signals for inter...
 4282    * 556387 - FileEnumerator::next_file reference counting problems
 4283  * Thanks to contributions from Armin Burgmeier, Jonathon Jongsma, José
 4284    Alburquerque, Murray Cumming, and Szilárd Pfeiffer
 4285 
 4286 2.18.0 (stable):
 4287 
 4288  * Bug #550789: Fixed a licensing issue with some of the tools distributed with
 4289    the source tarball (Murray Cumming)
 4290 
 4291 2.17.3 (unstable):
 4292 
 4293  * More Glib::NodeTree improvements (Szilárd Pfeiffer, Murray Cumming)
 4294  * Windows build fixes (Armin Burgmeier)
 4295 
 4296 2.17.2 (unstable):
 4297 
 4298  * Changes to API that was added in this unstable series:
 4299    * Glib::Tree (wrapper around GNode) renamed to Glib::NodeTree  to avoid
 4300      confusion with GTree
 4301    * pass the node to the traversal the callback (Szilárd Pfeiffer)
 4302    * Move TraverseFlags inside the NodeTree class (Murray Cumming)
 4303  * New API:
 4304    * Added the drive_eject_button signal (Murray Cumming)
 4305  * Bug Fixes:
 4306    * #423990: glibmm et al don't recognize new GNU m4 (Damien Carbery)
 4307    * #529496: Gio::Error::HOST_NOT_FOUND clashes with a netdb.h #define (Murray
 4308      Cumming)
 4309    * #523043: Initialization of Glib::ObjectBase for derived types should be
 4310      mentioned in documentation (Moritz Ulrich)
 4311    * #506410: Call of overloaded Stringify is ambiguous (Szilárd Pfeiffer,
 4312      Murray Cumming)
 4313 
 4314 2.17.1 (unstable):
 4315 
 4316   * New API: (Murray Cumming)
 4317     * Gio::File: make_directory_with_parents(), query_file_type(), monitor().
 4318     * Gio::FileEnumerator: get_container().
 4319     * Gio::Mount: guess_content_type() and guess_content_type_finish().
 4320     * Gio:ThemedIcon: prepend_name().
 4321     * Gio::Volume: get_activation_root().
 4322   * Bug Fixes:
 4323     * #512348: provide documentation about threadsafety of
 4324       Glib::Thread::create() when the slot object is of type sigc::trackable (Chris Vine)
 4325     * #538803: minor fixes to Glib::Tree (Levi Bard)
 4326     * #540656: Pass NULL in a couple functions instead of an empty string allow
 4327       files to be overwritten (Armin Burgmeier)
 4328     * #540875: add documentation for Glib::OwnershipType (Johannes Schmid)
 4329     * #542929: Fix some compiler warnings (Benjamin Herr)
 4330     * Fix AppLaunchContext::get_display(),
 4331       AppLaunchContext::get_startup_notify_id() to use a list of Gio::File, not
 4332       filepath string.  properly documented we know that this is correct. It's an
 4333       API break but this function could nothave worked before. (Murray)
 4334     * Bug #543292: Fix visual studio project file (Jens Georg)
 4335   * Added Keyfile example (Murray Cumming)
 4336 
 4337 2.17.0 (unstable):
 4338 
 4339   * Added copy constructor and assignment operator, made GDate constructor visible (José
 4340     Alburquerque)
 4341   * Added Glib::Tree, a wrapper for GNode, providing an N-ary tree container, more or
 4342     less like a standard C++ container (Levi Bard)
 4343   * Bug #529648 - give helpful warning message when library user forgets to initialize the
 4344     library (Jonathon Jongsma)
 4345   * Bug #529533 - Fix bug that prevented for Gio::Mount, Gio::Drive, and Gio::Volume from
 4346     being wrapped for some backend implementations (Jonathon Jongsma)
 4347 
 4348 2.16.2 (stable):
 4349 
 4350  * Bug 526831 – G_OPTION_REMAINING no longer works with OptionEntry (Murray
 4351    Cumming)
 4352  * Bug 527687 – ustring::erase(iterator) incorrect for non ascii character
 4353    (Murray Cumming)
 4354  * add API documentation for spawn_* functions (Murray Cumming)
 4355  * fix possible memory leak in OptionEntr (Murray Cumming)
 4356 
 4357 2.16.1 (stable):
 4358 
 4359 * Reference-counting bugfix in Gio::File::create() and Gio::File::replace()
 4360   (Murray Cumming)
 4361 * Include Gio::Error header in headers that have API that can throw this
 4362   exception (Murray Cumming)
 4363 * Improve documentation (Murray Cumming)
 4364 * Build fixes for giomm on win32 (Jonathon Jongsma)
 4365 * fix warning with g++ 4.3 (Tim Retout)
 4366 
 4367 2.16.0 (stable):
 4368 
 4369 Changes compared to glibmm 2.14:
 4370 
 4371 * New Gio API. Check for giomm-2.4 with pkg-config to use this.
 4372   (Marko Anastasov, Jonathon Jongsma, José Alburquerque, Murray Cumming)
 4373 * New Glib::Checksum class.
 4374   (Naveen Verma, Murray Cumming)
 4375 * New uri helper functions: uri_unescape_string(), uri_parse_scheme(),
 4376   uri_escape_string().
 4377   (Murray Cumming)
 4378 
 4379 2.15.8 (unstable):
 4380 
 4381 * File: load_contents(), load_contents_finish(),  load_partial_contents_finish():
 4382   Use char*& instead of char** for contents.
 4383   Use std::string& instead of char**  for etag_out.
 4384   Added method overloads without cancellable.
 4385   (Murray Cumming)
 4386 * Improved documentation: Mention exceptions instead of errors.
 4387 
 4388 2.15.7 (unstable):
 4389 
 4390 * File:
 4391   - Added query_filesystem_info_async() and
 4392   query_filesystem_info_finish() because these were added to the C API.
 4393   (Murray Cumming)
 4394   - Renamed contains_file() to file_has_prefix() because this was changed in the
 4395   C API.
 4396   (Wouter Bolsterlee)
 4397 * ThemedIcon: Added append_name() because this was added to the C API.
 4398   (Murray Cumming)
 4399 
 4400 Glib:
 4401 * Renamed uri_get_scheme() to uri_parse_scheme() because this was changed
 4402   in the C API.
 4403   (Wouter Bolsterlee)
 4404 
 4405 Documentation:
 4406 * Corrections to the .devhelp file generation.
 4407   (Jonathon Jongsma. Bug #518673)
 4408 
 4409 
 4410 2.15.6 (unstable):
 4411 
 4412 Gio:
 4413 * Removed most vfuncs, because they are not useful to application developers,
 4414   and are a likely source of errors. (Murray Cumming)
 4415 * DesktopAppInfo:
 4416   - Added Added create(), create_from_file(),
 4417     is_hidden() and set_desktop_env()
 4418     Renamed new_from_file() to create_from_file().
 4419     (José Alburquerque)
 4420 * File: equal(), get_relative_file(), contains_file(): Take const File
 4421   parameters.
 4422 * FileAttributeInfoList: Added dup().
 4423 * MemoryInputStream: Added add_data(const void* data, gssize len).
 4424 * Mount: Really added signals.
 4425 * MountOperation: Wrapped the ask-question signal.
 4426   (Murray Cumming)
 4427 * Volume:
 4428   - Added should_automount().
 4429     (Marko Anastasov)
 4430   - Really added signals.
 4431     (Murray Cumming)
 4432 * UnixOutputStream, DataOutputStream, DataInputStream: Made constructors
 4433   protected.
 4434   (Marko Anastasov)
 4435 
 4436 
 4437 Documentation:
 4438 * Install a devhelp file like the existing gtkmm one.
 4439   (Jonathon Jongsma)
 4440 
 4441 2.15.5 (unstable)
 4442 
 4443 Gio:
 4444 * File, Mount, Volume:
 4445   Updated for latest gio API changes, adding a MountFlags parameter to some
 4446   methods.
 4447   (Jonathon Jongsma)
 4448 * Volume, VolumeMonitor, Added some vfuncs, though we might remove these
 4449   later as they seem useless and likely to be sources of problems.
 4450   (Murray Cumming)
 4451 
 4452 Glib:
 4453 * Actually install gi18n-lib.h
 4454   (Takao Fujiwara. Bug #515133)
 4455 
 4456 2.15.4 (unstable):
 4457 
 4458 Glib:
 4459 
 4460 * AppInfo: Added  vfuncs.
 4461   (Jonathon Jongsma)
 4462 * Added BufferedOutputStream, DataInputStream and DataOutputStream, and
 4463   FilterOutputStream.
 4464   (Jonathon Jongsma)
 4465 * Cancellable: Added the signal.
 4466   (Murray Cumming)
 4467 * Added ContentType functions.
 4468   (Jonathon Jongsma)
 4469 * File:
 4470   - Added overloads of create_file(), remove(), trash(),
 4471     make_directory(), make_symbolic_link(), query_settable_attributes(),
 4472     query_writable_namespaces(), query_filesystem_info(),
 4473     query_default_handler() and mount_mountable(() without cancellable
 4474     parameters.
 4475     (Murray Cumming)
 4476   - Added copy_attributes(), added mount_enclosing_volume(),
 4477     mount_enclosing_volume_finish(), find_enclosing_mount(), and
 4478     find_enclosing_mount_finish().
 4479     (Murray Cumming)
 4480   - set_attributes_from_info(): Reordered parameters so we can have default
 4481     values.
 4482     (Murray Cumming)
 4483   - Added copy_async(), with overloads without slot_progress. copy_finish(),
 4484     query_default_handler().
 4485     (Marko Anastasov)
 4486   - find_enclosing_mount(), append_to(): Reordered parameters and added
 4487     overloads without cancellable.
 4488     (Murray Cumming)
 4489   - Added non-cancellable set_attribute_string(), set_attribute_byte_string(),
 4490     set_attribute_{uint32, int32, uint64, int64}.
 4491     (José Alburquerque)
 4492 * Added FilenameCompleter.
 4493   (Murray Cumming)
 4494 * LoadableIcon:
 4495   - Derive from Icon, and no longer derive FileIcon from Icon directly.
 4496   (Murray Cumming)
 4497   - Wrapped some vfuncs and some extra methods.
 4498   (Jonathon Jongsma)
 4499 * Added MemoryInputStream.
 4500   (Jonathon Jongsma)
 4501 * Added ThemedIcon
 4502   (Murray Cumming)
 4503 * Added UnixInputStream, UnixOutputStream, and DesktopAppInfo, available only
 4504   on Unix/Linux.
 4505   (José Alburquerque, Murray Cumming)
 4506 * Volume: Added get_mount(), get_identifier(), enumerate_identifiers().
 4507   (Marko Anastasov)
 4508 * VolumeMonitor: Added signals and properties.
 4509   (Murray Cumming)
 4510 
 4511 Build:
 4512 * Use local gmmproc files again, instead of only installed ones.
 4513   (Murray Cumming)
 4514 * Fix compile with GCC 4.3.
 4515   (Kjartan Maraas)
 4516 
 4517 
 4518 2.15.3 (unstable):
 4519 
 4520 Gio:
 4521 * FilterInputStream: Really wrap this.
 4522 * VolumeMonitor: Workaround a crash in gio due to the
 4523   eccentric use of the GType system to discover GVolumeMonitor
 4524   implementations. See gio bug #511814.
 4525 * Added Gio::Error exception.
 4526 * Added more method overloads without optional parameters, and
 4527   reordered more parameters to allow default values.
 4528   (Murray Cumming)
 4529 * giomm.h: Added includes.
 4530   (Jonathan Jongsma)
 4531 
 4532 * Note that there are some examples in the gtkmm-documentation module.
 4533 
 4534 
 4535 2.15.2 (unstable):
 4536 
 4537 Glib:
 4538 
 4539 * Checksum: New class, wrapping GChecksum.
 4540   (Naveen Verma. Bug #510235)
 4541 * ObjectBase: Added connect_property_changed_with_return()
 4542   because connect_property_changed() does not return a sigc::connection.
 4543   Bug #433984 (Philip Langdale, Kalle Vahlman).
 4544 * enums.pl .defs generator: Handle parantheses.
 4545   (Marko Anastasov. Bug #498621)
 4546 
 4547 Gio:
 4548 * Added FilterInputStream, Mount, FileMonitor, VolumeMonitor.
 4549   (Marko Anastasov, Murray Cumming)
 4550 * Many methods' parameters have been reordered so we can
 4551   add default parameter values.
 4552 * Many methods now have overloads with less parameters.
 4553   (Murray Cumming, José Alburquerque, Marko Anastasov)
 4554 
 4555 
 4556 2.15.1 (unstable):
 4557 
 4558 Gio:
 4559 * Actually build the giomm library.
 4560 * Added API reference documentation.
 4561   (Murray Cumming)
 4562 * Added AppInfo and AppLaunchContext.
 4563 * Drive:
 4564   - Added poll_for_media() and poll_for_media_finish().
 4565   - Added capability-checking functions.
 4566   (Marko Anastasov)
 4567 * File: Renamed create() to create_file(),
 4568   create_async() to create_file_async() and
 4569   create_finish() to create_file_finish() to slightly
 4570   reduce confusion with the static create*() methods.
 4571 * FileInputStream, FileOutputStream: Derive from Seekable.
 4572   (Murray Cumming)
 4573 * FileInputStream, InputStream, Volume: Modified *_finish
 4574   functions to take a const AsyncResult.
 4575   (Marko Anastasov)
 4576 * Added LoadableIcon.
 4577   (Murray Cumming)
 4578 * MountOperation: Added MountOperationResult enumeration and make
 4579   reply() take this instead of a bool.
 4580   (Jonathon Jongsma)
 4581 
 4582   (Murray Cumming)
 4583 
 4584 Glib:
 4585 * Added uri_unescape_string(), uri_get_scheme() and uri_escape_string().
 4586   (Murray Cumming
 4587 
 4588 
 4589 2.15.0 (unstable):
 4590 
 4591 * New giomm library (check for giomm-2.4 with pkg-config)
 4592   in the glibmm tarball. This wraps the new gio API in glib 2.15/16.
 4593   However, this API could change considerably before the stable
 4594   glibmm 2.16 is released.
 4595   (Marko Anastasov)
 4596 * ustring:
 4597   - Added compose() to substitute placeholders in a format string, as an
 4598   equivalent to sprintf(), to help internationalization/translation.
 4599   - Added format() to simplify the common task of converting a value
 4600   (such as a number) to a string, with optional stream formatting
 4601   parmatters. This uses the regular C++ stream API in its implementation.
 4602   (Daniel Elstner, Openismus)
 4603 * Glib::RefPtr: Deprecate clear(), replacing it with
 4604   reset(), because people often do treemodel.clear() when they
 4605   mean treemodel->clear(). reset() is consistent with std::auto_ptr<>.
 4606   But the method is still there so the compiler still can't help
 4607   you to avoid the mistake.
 4608   (Murray Cumming)
 4609 * KeyFile: set_integer_list(),  set_boolean_list(), set_double_list()
 4610   actually work now without crashing.
 4611   (Daniel Elstner, Openismus)
 4612 * gmmproc:
 4613   - Refuse to generate a wrapper for a construct-only
 4614   property which is also write-only, and display a warning.
 4615   (Daniel Elstner, bug #436789)
 4616   - Added _DERIVES_INITIALLY_UNOWNED to sink floating
 4617   references in constructor of classes that wrap
 4618   GInitiallyUnowned-derived GTypes. Plus _INITIALLY_UNOWNED_SINK
 4619   for hand-written constructors.
 4620   (Murray Cumming)
 4621 * Build:
 4622 - Fix build for glib 2.15 by including
 4623   gtestutils.h instead of gmessages.h to get g_assert(),
 4624   though I am angry that this API break has been allowed.
 4625   (Murray Cumming)
 4626 - Fix build for pre-releases of gcc 4.3 - also an include
 4627   issue. (Sebastien Bacher, #498438)
 4628 
 4629 2.14.2:
 4630 
 4631 * Build: Hopefully fix the build on NetBSD-4.99.6/amd64.
 4632   Bug #386990. (was already in 2.12.7) (Murray Cumming)
 4633 * gmmproc: Added support for the new _CONFIGINCLUDE() macro.
 4634   (Armin Burgmeier)
 4635 
 4636 2.14.1:
 4637 
 4638 * Glib::wrap(): Don't fail when wrapping an interface that
 4639   is implemented by an unrecognized type.
 4640   gmmproc-generated code now uses the new wrap_auto_interface(),
 4641   so newly-generated source code will require this latest glibmm
 4642   version.
 4643 * Increase version number check for glib.
 4644   (Rémi Cardona)
 4645 
 4646 2.14:
 4647 
 4648 Changes sinze 2.12:
 4649 
 4650 * New Regex class, allowing string searching with regular expressions.
 4651   (Murray Cumming, Daniel Elstner)
 4652 * New KeyFile class.
 4653   (Rob Page, Jonathan Jongsma, Murray Cumming)
 4654 * Main: Added SignalTimeout::connect_seconds().
 4655   (Murray Cumming)
 4656 * OptionContext: Added get/set_summary(), get/set_description(),
 4657   set_translation_domain() and set_translate_func().
 4658   (Jonathan Jongsma)
 4659 * Added Glib::get_user_special_dir(), get_user_data_dir(),
 4660   get_user_config_dir(), and get_user_cache_dir().
 4661   (Jonathan Jongsma, Murray Cumming)
 4662 * Improved documentation.
 4663   (Johannes Schmid, Jonathan Jongsma, Ralf Stephan)
 4664 
 4665 2.14.0:
 4666 
 4667 * Regex:
 4668   - Add escape_string().
 4669   - match_full(): Rename to match().
 4670   - match_all_full(): Rename to match_all().
 4671   - split_full(): Rename to split().
 4672 
 4673 2.13.9:
 4674 
 4675 * KeyFile: Added Added get_double(), set_double(), get_double_list()
 4676   and set_double_list().
 4677   (Murray Cumming)
 4678 
 4679 2.13.8:
 4680 
 4681 * OptionContext: Added get/set_summary(), get/set_description(), set_translation_domain(),
 4682   and set_translate_func().
 4683   (Jonathon Jongsma)
 4684 * Documenation:
 4685   Added RegEx class documentation. (Johannes Schmid)
 4686   Show new API in 2.14.
 4687 
 4688 2.13.7:
 4689 
 4690 * Regex: Added a create() method and added default parameter values.
 4691   Added a simple example.
 4692 * Added  SignalTimeout::connect_seconds(), in addition to the existing
 4693   SignalTimeout::connect(), as a wrapper of g_timeout_add_seconds().
 4694   Improveed the documentation.
 4695 * Added get_user_special_dir().
 4696   (Murray Cumming)
 4697 
 4698 2.13.6:
 4699 
 4700 * Added Glib::Regex, an API for doing regular expression search/matching.
 4701   This is not fully wrapped yet, but the simple versions of the API are there.
 4702   We need to write an example for this.
 4703   (Murray Cumming)
 4704 
 4705 2.13.5:
 4706 
 4707 * Correctly ifdef-out initialization of deprecated classes.
 4708   (Johannes Schmid, Openismus)
 4709 * Build: Cope with newer m4 versions. (Yselkowitz)
 4710 
 4711 2.13.4:
 4712 
 4713 * Correct initialization when using --disable-deprecated for reduced code-size
 4714   on embedded devices. (Johannes Schmid, Openismus)
 4715 * Glib::ObjectBase::is_derived_() is now public, though it is still only for
 4716   internal use. This allows us to do some optimization of default signal handlers and
 4717   vfuncs.
 4718   (Armin Burgmeier, Openismus)
 4719 * Options: Don't overwrite default arguments. This change was lost in
 4720   March 2006, but now it is back.
 4721   (Armin Burgmeier)
 4722 * Dispatcher: Several minor implementation improvements. (Daniel Elstner)
 4723 * ustring: Minor improvements. (Daniel Elstner)
 4724 * Documentation: Actually use the signals documentation again.
 4725   (Armin Burgmeier, Openismus)
 4726 * Build:
 4727   - Fix code generation when using the latest m4, and functions named
 4728   mkstemp, as experienced on Ubuntu Feisty.
 4729   Bug #397167 (Dodji Seketeli, Daniel Elstner)
 4730   - helperlist.h: Avoid warnings about a shadowed member.
 4731   Bug #420316 from Bradley Bell.
 4732   - utility.h: Avoid a warning about a redundant declaration.
 4733   Bug #420339 from Bradley Bell.
 4734 
 4735 2.13.3:
 4736 
 4737 
 4738 * Glib::ObjectBase::is_derived_() is now public, though it is still only for
 4739   internal use. This allows us to do some optimization of default signal handlers and
 4740   vfuncs.
 4741   (Armin Burgmeier, Openismus)
 4742 * Build:
 4743   - helperlist.h: Avoid warnings about a shadowed member.
 4744   Bug #420316 from Bradley Bell.
 4745   - utility.h: Avoid a warning about a redundant declaration.
 4746   Bug #420339 from Bradley Bell.
 4747 * gmmproc improvements:
 4748   - gmmproc: Allow () in property and signal docuemntation.
 4749   - gmmproc: Do not try to remove a common prefix from the
 4750   C enam values, if there is no common prefix.
 4751   - enum.pl: Allow whitespace in front of an enum typedef.
 4752   (Daniel Elstner)
 4753   - enum.pl: Fix an infinite loop.
 4754 * ObjectBase: Added connect_property_changed(),
 4755   as an alternative to use when the property proxies are not
 4756   available because GLIBMM_PROPERTIES_ENABLED is not defined.
 4757   (Murray Cumming)
 4758 * Value: When registering float parameters, use
 4759   G_MAXFLOAT as the minimum, instead of G_MINFLOAT.
 4760   Likewise for doubles.
 4761   (Oliver Nittka)
 4762 
 4763 2.13.2:
 4764 
 4765 *Build:
 4766  - Fix for api-default-signal-handlers option.
 4767    Bug #357830 (Matt Hoosier)
 4768  - win32: Remove unused source file from Visual Studio project.
 4769    (Cedric Gustin)
 4770 
 4771 2.13.1:
 4772 
 4773 * KeyFile class added, wrapping GKeyFile,
 4774   for parsing of .ini-style files.
 4775   (Rob Page)
 4776 * Added get_user_data_dir(), get_user_config_dir(), and
 4777   get_user_cache_dir().
 4778   (Jonathon Jongsma)
 4779 * Support optional ifdef parameters in the .hg macros,
 4780   to allow, for instance the --enable-atk=no option,
 4781   to disable the build and use of the atkmm API,
 4782   for use in embedded environments.
 4783   (Johannes Schimd, Murray Cuming, Openismus)
 4784 * Documentation:
 4785   - Small ustring reference documentation improvement.
 4786   (Ralf Stephan)
 4787 
 4788 2.12.0:
 4789 
 4790 Changes sinze 2.10:
 4791 * Added the --enable-api-default-signal-handlers option, for use in
 4792   embedded environments that have reduced resources. See configure --help
 4793   for the other subsets.
 4794 * Value: Added init(const GValue*), so we can copy GValue instances
 4795   of any type at runtime. Needed by the new branch of libgdamm.
 4796 
 4797 2.11.3:
 4798 
 4799 * Build: Added the --enable-api-default-signal-handlers option, for use in
 4800   embedded environments that have reduced resources. See configure --help
 4801   for the other subsets.
 4802 
 4803 2.11.2:
 4804 
 4805 * Date: Fix implementation of Glib::Date::set_time_current() so
 4806   that it doesn't set the date to Dec 31, 1969.
 4807   (Jonathon Jongsma)
 4808 * Value: Added init(const GValue*), so we can copy GValue instances
 4809   of any type at runtime. Needed by the new branch of libgdamm.
 4810   (Murray Cumming)
 4811 * Added a #warning to warn about including X11/Xlib.h before a glibmm header,
 4812   which would break things. Bug #316726 from Mert Tugcu and Javeed Shaikh.
 4813   (Murray Cumming)
 4814 * Build:
 4815   - Quote some m4 macros to avoid warnings. Bugs (with patches) #347076
 4816   and #347077
 4817   (Kevin McBride).
 4818   - Fix exporting of get/set_property() on mingw32-gcc.
 4819   (Cedric Gustin)
 4820 
 4821 
 4822 
 4823 
 4824 2.10.1
 4825 
 4826 * Windows Build:
 4827  - Define GLIBMM_DLL when building with mingw32 or cygwin,
 4828    because it is needed by gtkmm. Bug #309030
 4829  (Cedric Gustin)
 4830 * OptionGroup: Allow default values, by not initializing them all.
 4831   (Armin Burgmeier)
 4832 * Slight code size reduction by marking private functions as static.
 4833   (Murray Cumming)
 4834 
 4835 2.10.0:
 4836 
 4837 * Windows Build:
 4838  - ustring.h: Tag npos with GLIBMM_API, in order to
 4839    dllexport it on win32. Bug #332438.
 4840  - Updated MSVC++ build files and README, for MS Visual Studio 2005.
 4841  (Cedric Gustin)
 4842 * gmmproc code generator:
 4843  - WRAP_METHOD() Take an extra optional argument: deprecated deprecationtext -
 4844   so that we can insert the appropriate doxygen tag in the documentation, where
 4845   the C documentation does not do it for us.
 4846 
 4847 2.9.1:
 4848 
 4849 * Date:
 4850   - Added set_time(time_t), set_time(GTimeVal), and deprecated
 4851     set_time(GTime)
 4852   - Added set_time_current().
 4853   (Murray Cumming)
 4854 * Build: Added --enable-deprecated-api  option. When set to disabled,
 4855   it does not build deprecated API. This reduces the size of the
 4856   library, and might be useful for embedded devices.
 4857   (Murray Cumming)
 4858 
 4859 2.8.2:
 4860 
 4861 * Solaris build fix: Correct the detection
 4862   of make. (Mark Rouchal)
 4863 
 4864 2.8.1:
 4865 
 4866 * Build: Check for glib 2.8.
 4867 
 4868 2.8.0:
 4869 
 4870 API additions since glibmm 2.6:
 4871 
 4872 * GModule: Add BIND_LOCAL enum value.
 4873   (Bug #172748 from Phillip Neiswanger).
 4874 * MainContext Added signal_child_watch()
 4875   and examples/child_watch.
 4876   (Yair Hershkovitz)
 4877 * OptionEntry: Added FLAG_NO_ARG, FLAG_FILENAME,
 4878   FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values.
 4879   (Murray Cumming)
 4880 
 4881 2.7.3:
 4882 
 4883 * Updated reference documentation from glib documentation.
 4884 
 4885 2.7.2:
 4886 
 4887 * OptionEntry: Added FLAG_NO_ARG, FLAG_FILENAME,
 4888   FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values.
 4889 * build_filename() and build_path(): Now use the implementation
 4890   from glib.
 4891 
 4892 2.7.1:
 4893 
 4894 * GModule: Add BIND_LOCAL enum value.
 4895   (Bug #172748 from Phillip Neiswanger).
 4896 * MainContext Added signal_child_watch()
 4897   and examples/child_watch.
 4898   (Yair Hershkovitz)
 4899 * Fixes from 2.6.2.
 4900 
 4901 2.6.1:
 4902 
 4903 * Interface::add_interface(): Disabled the check for a second call,
 4904   introduced in 2.6.0, for now, because it stops some valid uses.
 4905   (Bryan Forbes)
 4906 
 4907 2.6.0:
 4908 
 4909 New stable version. Changes compare to glibmm 2.4.x:
 4910 
 4911 * Added Option, OptionContext, OptionGroup for parsing of command-line arguments.
 4912 * Added filename_display_basename() and filename_display_name().
 4913 * Added setenv() and unsetenv().
 4914 * add_interface() methods will no longer give warnings if you
 4915   call them twice.
 4916 * gmmproc:
 4917   - Now reuses C properties documentation.
 4918 
 4919 2.5.6:
 4920 
 4921 * add_interface() methods will no longer give warnings if you
 4922 call them twice.
 4923 * gmmproc: Output properties documentation taken from the .defs.
 4924 * examples now build on AIX.
 4925   (Murray Cumming)
 4926 * MSVC++ .Net 2003 build fix. (Cedric Gustin)
 4927 
 4928 2.5.5:
 4929 
 4930 * Now builds with the following compilers, in addition to
 4931 the existing GNU g++, and Intel compilers:
 4932 - SUN Forte CC 5.5
 4933 - IBM AIX xlC v7
 4934 - Tru64 C++ V6.5-042
 4935 - IRIX MIPSpro 7.4.2m
 4936   (Older versions of all these compilers might also work.)
 4937   (Murray Cumming, www.thewrittenword.com)
 4938 * Now builds with MSVC++ .Net 2003 (gtkmm 2.4 already did).
 4939   (Cedric Gustin)
 4940 
 4941 2.5.4:
 4942 
 4943 Options:
 4944 * Added Option(GOptionGroup* cast_item) constructor,
 4945   needed by Gtk::Main.
 4946 * Added reference documentation.
 4947 (Murray Cumming)
 4948 
 4949 2.5.3:
 4950 
 4951 * Options:
 4952   - Allow parsing of boolean arguments (arguments with no value).
 4953   - Really use the short names.
 4954   (Daniel Holbach, Murray Cumming)
 4955 * Added filename_display_basename() and filename_display_name().
 4956   (Murray Cumming)
 4957 * Added setenv() and unsetenv(). (Murray Cumming)
 4958 * Use static keyword to prevent exporting private API.
 4959   (Benoît Dejean)
 4960 * input example: Improvements and simplification. (Chris Vine)
 4961 
 4962 2.5.2:
 4963 
 4964 * OptionEntry: Remove useless enum. (Murray Cumming)
 4965 * Documentation:
 4966   - examples: Added iochannel_stream example. (Chris Vine)
 4967   - reference: Generate more reference API from the C documentation, and
 4968     try to use the libstdc++ doxygen tags file to link to their
 4969     documentation. (Murray Cumming)
 4970 
 4971 2.5.1:
 4972 
 4973 * OptionContext, OptionGroup, OptionEntry: Made the add_entry() methods
 4974   type-safe and fixed several problems memory-management problems. This
 4975   API is now worth looking at.
 4976 
 4977 2.5.0:
 4978 
 4979 * Added OptionContext, OptionGroup, and OptionEntry classes, for
 4980   parsing of command-line options. See examples/options/
 4981 
 4982 2.4.4:
 4983 
 4984 * Signals: Avoid crashes when disconnecting a signal when handling that signal.
 4985   (Murray Cumming, Martin Schulze)
 4986 *
 4987 2.4.3:
 4988 
 4989 * Minor improvements to reference documentation. (Daniel Elstner)
 4990 * Minor Glib::Dispatcher improvements (Daniel Elstner)
 4991 
 4992 2.4.2:
 4993 
 4994 * Glib::Dispatcher: win32 implementation rewritten, and hopefully, improved.
 4995   (Daniel Elstner)
 4996 * Glib::ustring:
 4997   - Optimization and code-cleanup. (Daniel Elstner)
 4998   - Added reference documentation for constuctors. (Murray Cumming)
 4999 * Fixed some compiler warnings.
 5000   (Daniel Elstner)
 5001 * gmmproc: Some improvements for libgdamm. (Murray Cumming)
 5002 
 5003 
 5004 2.4.1:
 5005 
 5006 * Build fixes for gcc 3.4.0.
 5007 * Doxygen not required when building from tarballs.
 5008   (Murray Cumming)
 5009 
 5010 
 5011 2.4.0:
 5012 
 5013 Changes since 2.2.0:
 5014 
 5015 * 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.
 5016 * When using pkg-config, you should check for "glibmm-2.4".
 5017 * Glib::ObjectBase inherits virtually from SigC::Object, allowing multiple inheritance with other classes that inherit from SigC::Object.
 5018 * RefPtr:
 5019   - is_null() was removed, to encourage you to use "== 0" instead.
 5020   - operator=(CppObject*) was removed.
 5021 * The gtkmmproc code-generator is now gmmproc, and has several improvements to support gtkmm 2.4.
 5022 * Now uses improved libsigc++ 2.0 API.
 5023 * Added i18n.h and i18n-lib.h, which include the relevant
 5024   glib headers, which declare internationalization
 5025   macros such as _().
 5026 * New methods:
 5027   Glib::spawn_close_id(), Glib::MainLoop::depth(),
 5028   Glib::Date::clamp_min(),  Glib::Date::clamp_max().
 5029 * Improved documentation.
 5030 
 5031 
 5032 2.3.8:
 5033 
 5034 * Fix crash when using Glib::Main signals.
 5035   (Martin Schulze)
 5036 * Corrected the configure-time SUN compiler check.
 5037   (Murray Cumming, Alexander Nedotsukov)
 5038 
 5039 2.3.7:
 5040 
 5041 * Added configure macros to detect SUN compiler oddities.
 5042 * Various SUN Forte C+ and g++ 3.4 (cvs) build fixes.
 5043   (Murray Cumming)
 5044 * gmmproc: Improved parsing of C docs.
 5045   (Hagen Moebius)
 5046 
 5047 2.3.6:
 5048 
 5049 * Added i18n.h and i18n-lib.h, which include the relevant
 5050   glib headers, which declare internationalization
 5051   macros such as _(). (Murray Cumming)
 5052 * Added Glib::spawn_close_id(). (Murray Cumming)
 5053 * Added Glib::MainLoop::depth(). (Murray Cumming)
 5054 * Documentation: corrections to CHANGES (Martin Schulze).
 5055 * gmmproc: Can now handle "const const_iterator& iter"
 5056   parameter names without getting confused by 2 consts.
 5057   (Murray Cumming)
 5058 
 5059 2.3.5:
 5060 
 5061 * glibmm now uses libsigc++ 2 rather than libsigc++ 1.2.
 5062 
 5063 2.3.4:
 5064 
 5065 * ListHandle/SListHandle (intermediate container types):
 5066   - Added a const_cast<> to allow lists of const elements.
 5067 * gmmproc: _WRAP_SIGNAL(): Added optional custom_c_callback
 5068   parameter.
 5069   (Murray Cumming)
 5070 * WIN32: Build fixes, mostly merged from the 2.2 branch.
 5071   (Cedric Gustin)
 5072 
 5073 2.3.3:
 5074 
 5075 * gmmproc (code generator)
 5076   - properties: Make read-only properties have const accessors,
 5077     and add a second read-only const accessor for normal
 5078     properties. Wrap construct-only properties as read-only,
 5079     instead of ignoring them.
 5080   - vfuncs: Really generate const vfuncs when requested. Put
 5081     the method declaration directly into the .h file, so that
 5082     the doxygen documentation can be next to it.
 5083   - documentation:
 5084     - Remove mergecdocs configure option - always
 5085     merge the C docs, to avoid any risk of uploading or
 5086     releasing empty documentation. Just delete the *_docs.xml
 5087     files to make building from cvs faster.
 5088     - Install a GLIBMM_CHECK_PERL() macro, for use by gtkmm
 5089     and other *mm projects, to get the perl path needed by
 5090     doxygen.
 5091     - Install beautify_docs.pl so it can be reused in gtkmm
 5092     and other *mm projects, instead of having lots of copies.
 5093 * Glib::ObjectBase: The default constructor, never before used,
 5094   now generates a custom GType, for use when creating new
 5095   implementations of Glib::Interfaces - for instance, see the
 5096   new custom tree model example in gtkmm.
 5097 * Glib::Date: Added clamp_min() and clamp_max().
 5098   (Murray Cumming)
 5099 
 5100 * Documentation:
 5101   - Added reference documentation for MainLoop, MainContext,
 5102     Source, and Date. (Alberto Paro)
 5103 
 5104 2.3.2:
 5105 
 5106 * gmmproc (code generator):
 5107   - signal proxies have extra space to avoid << with templates.
 5108   - Added WRAP_METHOD_DOCS_ONLY() for reusing documentation even
 5109     when the method is hand-coded.
 5110   - _WRAP_SIGNAL(): Added optional no_default_handler parameter,
 5111     because some of the new GTK+ signals have no public default
 5112     handler vfunc.
 5113 * Added Glib::init(), for use by non-GUI apps which need to
 5114   use Glib::wrap().
 5115 * PropertyProxy: Can now be used with Interfaces.
 5116 * Documentation improvements, so that gtkmm docs link to glibmm
 5117   docs.
 5118   (Murray Cumming)
 5119 
 5120 2.3.1:
 5121 
 5122 * gmmproc changes needed by gtkmm 2.3.0
 5123   (Murray Cumming)
 5124 * examples updated and buildable and working,
 5125   without gtkmm code.
 5126   (J. Abelardo Gutierrez)
 5127 
 5128 Changes in glibmm 2.3.0:
 5129 
 5130 * Now separate from gtkmm, so you can use things like Glib::ustring without depending on gtkmm.
 5131   This glibmm 2.4 API installs in parallel with gtkmm 2.0/2.2, so you can install this unstable library
 5132   without the risk of breaking existing application.
 5133 * This does not yet require glib 2.3 because there has been no tarball release of that yet. For now, you
 5134   can use glibmm 2.3.0 with glib 2.2.x.
 5135 * When using pkg-config, you should check for "glibmm-2.4".
 5136 * Glib::ObjectBase inherits virtually from SigC::Object, allowing multiple inheritance with other
 5137   classes that inherit from SigC::Object.
 5138 * RefPtr:
 5139   - is_null() was removed, to encourage you to use "== 0" instead.
 5140   - operator=(CppObject*) was removed.
 5141 * gtkmmproc is now gmmproc.
 5142 * All the glibmm bugfixes in gtkmm 2.2.x.