2.66.7 (stable):

Gio:
* content_type_guess(): Remove most of an unnecessary overload
  (Kjell Ahlstedt) Issue #118 (LinuxUser GD)

Documentation:
* Gio::File: Fix various spelling errors
  (Daniel Boles)
* Remove AUTHORS and README.SUN; add info to README.md
  (Kjell Ahlstedt) Issue gtkmm#140

gmmproc:
* enum.pl, enumextract.py: Accept XXX = YYY + 1
* h2def.py: Make return types that are unsigned work.
  Required by gtkmm4, GdkDmabufTextureBuilder
  (Kjell Ahlstedt)

Tests:
* Giomm tests: Test for /etc/passwd instead of /etc/fstab
  (Jeremy Bicha) Merge request !60

Build:
* Meson build: Don't fail if warning_level=everything
  (Daniel Boles, Kjell Ahlstedt) Merge request gtkmm!87
* MSVC, NMake: Make dep paths configurable
  (Chun-wei Fan)


2.66.6 (stable):

Glib:
* Dispatcher: Don't warn when a Dispatcher is deleted while
  messages are pending.
  (Kjell Ahlstedt) Issue #108 (PBS)

Gio:
* NetworkMonitor::get_default(): Add refreturn
  (Kjell Ahlstedt) Issue #104 (ilya-fedin)

gmmproc:
* generate_wrap_init.pl.in: Disable warning C4273 on Visual Studio
  (Chun-wei Fan) Merge request !57

Meson build:
* Detect if we build from a git subtree
  (William Roy) Merge request gtkmm!72
  (Kjell Ahlstedt) Issue gtkmm#131 (William Roy)
* Don't copy files with configure_file()
  (Kjell Ahlstedt)


2.66.5 (stable):

Gio:
* ListStore: Don't derive a gtkmm__GListStore GType
  (Kjell Ahlstedt) Issue glib#2661
* DBus::Proxy: get_connection(), get_interface_info(): Add refreturn
  (Kjell Ahlstedt) Issue #102 (우정모)

Documentation:
* Gio::Action: Improve the documentation
  (Kjell Ahlstedt) Issue #100 (Diederik van Lierop)

gmmproc:
* Improved handling of final types
  (Kjell Ahlstedt) Issue glib#2661

Build:
* Meson build: Avoid unnecessary configuration warnings
  (Kjell Ahlstedt)
* Meson/MSVC: Add more warnings to ignore
  (Chun-wei Fan)
* NMake Makefiles: Ensure g[lib|io]mm[config.h|.rc] are created
  (Chun-wei Fan) Issue #99 (Martin Ammermüller)


2.66.4 (stable):

Glib:
* ustring_Iterator: Don't declare copy constructor =default.
  The fix in the 2.66.3 release broke ABI.
  (Kjell Ahlstedt) Issue #98 (Scotty Trees)


2.66.3 (stable):

Glib, Gio:
* Declare some copy constructors =default,
  avoiding warnings from the clang++ compiler
  (Kjell Ahlstedt)

Gio:
* TlsCertificate: Fix the create*() methods
  (Kjell Ahlstedt)

gmmproc:
* Add "ignore_deprecations" argument in _WRAP_METHOD()
  (Kjell Ahlstedt)

Build with Meson:
* MSVC build: Support Visual Studio 2022
  (Chun-wei Fan)
* Specify 'check' option in run_command()
* Check if Perl is required for building documentation
  (Kjell Ahlstedt)


2.66.2 (stable):

Glib, Gio:
* Replace all g_quark_from_static_string() by g_quark_from_string()
  (Kjell Ahlstedt) Issue #96 (小太)

Gio:
* FileEnumerator: Remove refreturn to avoid memory leak
  (talisein) Merge request !55
* ListModel::get_object(): Make it work for interface classes
  (Kjell Ahlstedt) Issue #93 (pumkinpal)

Build:
* MSVC build: Remove extraneous GLIBMM_API in Glib::ustring
  (Kjell Ahlstedt) Issue #92 (Christoph Reiter)


2.66.1 (stable):

Glib:
* Variant: Fix template constructors so they work with C++20
  (Magne Oestlyngen) Merge request !50

Build:
* Meson build: Use relative paths to untracked/
  (Kjell Ahlstedt) Merge request gtkmm!61 (Mingli Yu)
* MSVC build: Export Glib::manage()
  (Chun-wei Fan) Merge request !48
* [gio|glib]mmconfig.h.*: Don't dllimport on MinGW
  (Chun-wei Fan) Issue gtkmm#90 (Lukas K.)
  (Chun-wei Fan) Merge reqest !49
* Meson build: examples and tests: Add dependency('threads')
  (Kjell Ahlstedt)
* Meson build: Make it possible to use glibmm as a subproject
  (Kjell Ahlstedt)
* Meson build: No implicit_include_directories
  (Kjell Ahlstedt)
* Meson build: Make quiet installations possible
  (Kjell Ahlstedt)
* MSVC build: Avoid exporting classes with std::string members
  (Chun-wei Fan) Merge reqest !52


2.66.0: (stable):

The tarball for 2.66.0 has been created with 'meson dist'.
If you build with Autotools from the tarball, please read the relevant
part of the README file.

Glib:
* Binding: Add set_manage() and Glib::manage()
  (Daniel Boles) Issue #62
* Deprecate BalancedTree in favour of std::map and std::unordered_map
  (Kjell Ahlstedt) Issue #78

Gio:
* ListStore: Accept interfaces
  (Andreas Persson) Merge request !38
* MenuAttribute: Add new enum values
  (Kjell Ahlstedt) Issue #78
* SettingsSchemaSource: Wrap new_from_directory() and list_schemas()
  (Daniel Boles, Kjell Ahlstedt) Issue #19


2.64.5: (stable):

The tarball for 2.64.5 has been created with 'meson dist'.
If you build with Autotools from the tarball, please read the relevant
part of the README file.

gmmproc:
* Fix compatibility with gtkmm 3.24.2
  (Kjell Ahlstedt) Issue #82 (Michael Catanzaro)

Build:
* Meson build: Fix Cocoa (macOS) detection
  (Tom Schoonjans) Merge request !43


2.64.4: (stable):

The tarball for 2.64.4 has been created with 'meson dist'.
If you build with Autotools from the tarball, please read the relevant
part of the README file.

Glib:
* PropertyProxyConnectionNode::connect_changed():
  Fix using without property name
  (Daniel Boles) Issue #74 (wswfc), merge request !35

gmmproc:
* Add optional decl_prefix parameter to _WRAP_GERROR and _WRAP_ENUM
  Used for adding GLIBMM_API or similar for MS Visual C++
  (Chun-wei Fan) Merge request !31
* Allow decorating comparison operators (for Visual Studio builds)
  (Chun-wei Fan) Merge request !34
* _CLASS_BOXEDTYPE, _CLASS_OPAQUE_COPYABLE: Fix move assignment
  (Kjell Ahlstedt) Issue #76 (misos1)
* Decorate private generated classes with __declspec when building
  with Visual Studio
  (Chun-wei Fan) Merge request !40, !42
* generate_wrap_init.pl.in: Use g_type_ensure(SomeClass::get_type())
  to ensure that get_type() is called
  (Kjell Ahlstedt)

Build:
* Use __declspec(dllexport) consistently when building glibmm with
  Visual Studio
  (Chun-wei Fan) Merge request !31
* Meson build: Set default value of the 'warnings' option to 'min'
  (Kjell Ahlstedt)
* Improve NMake support
  (Chun-wei Fan)
* Improve Visual Studio support
  (Chun-wei Fan) Merge request !36
* docs/reference/: Update for Doxygen >= 1.8.16
  (Kjell Ahlstedt)
* Meson build: Fix versioning on macOS
  (Kjell Ahlstedt) Pull request libsigcplusplus#65 (Tom Schoonjans)

Documentation:
* Glib::BalancedTree docs: Recommend std::map or std::unordered_map
  (Kjell Ahlstedt)
* Meson build: Add missing Glib::Value and Variant documentation
  (Kjell Ahlstedt)


2.64.2: (stable):

Glib:
* build_filename(): Fix the template overload
  (Kjell Ahlstedt) Issue #71 (Kalev Lember)

Build:
* Meson build: Install generate_extra_defs.h
  (Kjell Ahlstedt) Issue #70 (Jan Alexander Steffens)


2.64.1: (stable):

Glib:
* Add missing #includes
  (Kjell Ahlstedt) Issue #69 (Kalev Lember)


2.64.0 (stable):

Glib:
* Add get_user_runtime_dir()
  (scx) Issue #57, merge request !14
* Add get_host_name()
  (scx) Issue #58, merge request !15
* MainContext: Add push/pop/get_thread_default()
  (Kjell Ahlstedt) Issue #56 (Yackie-Yang)
* Add StdStringView and UStringView
  Use them in build_filename()
  (Thomas Holder, Kjell Ahlstedt) Issue #34
* Regex: match(), match_all(): Deprecate rvalue string references
  (Thomas Holder, Kjell Ahlstedt) Issue #66, merge request !26
* Add Glib::canonicalize_filename()
  (Kjell Ahlstedt) Issue #59 (Patrick Storz)
* ustring: Fix insert(iterator, In, In)
  (Thomas Holder) Merge request !19

Gio:
* DBus::Connection: Make the wrap() function thread-safe
  (Kjell Ahlstedt) Issue #56 (Yackie-Yang)
* DBus::Message::get_unix_fd_list(): Add refreturn
  (Kjell Ahlstedt) Issue #68 (kr.woaini)

gmmproc:
* Add optional decl_prefix parameter to _CLASS_BOXEDTYPE,
  _CLASS_BOXEDTYPE_STATIC, _CLASS_GOBJECT, _CLASS_INTERFACE,
  _CLASS_OPAQUE_COPYABLE, _CLASS_OPAQUE_REFCOUNTED, _WRAP_GERROR
  Used for adding GLIBMM_API or similar for MS Visual C++
  (Chun-wei Fan)

Build:
* Add Meson support
  (Chun-wei Fan, Kjell Ahlstedt) Merge request !28
* Drop gendef from Windows builds
  (Chun-wei Fan) Issue #12 (Mikhail Titov), merge request !30

Documentation:
* Correct spelling of spawn_async_with_pipes()
  (Mike Fleetwood) Merge request !16
* Glib::Binding: Several doc improvements
  (Daniel Boles) Merge request !17
* Glib::Binding: Explain why SlotTransform takes GValue*
  (Kjell Ahlstedt) Issue #61 (Daniel Boles)
* Regex: Note that Glib::ustring must be used in match methods
  (Kjell Ahlstedt) Issue #66, merge request !26
* Gio::AsyncResult: Improve the class description
  (Kjell Ahlstedt) Issue #27 (Alberto Mardegan)


2.62.0 (stable):

Glib:
* Add ustring::make_valid()
  (Krzysztof Piecuch) Bug #780075
  (Martin Ejdestig) Merge request !11
  Issue #40 (Tanu Kaskinen)
* Use convert_return_gchar_ptr_to_*() in a couple of ustring methods
  (Martin Ejdestig) Merge request !11
* Add ustring::sprintf(), wrapping g_strdup_printf()
  (Daniel Boles) Issue #21
* Fix callback races in glibmm when GSource is destructed
  (Dainis Jonitis) Issue #41
* Checksum, Datetime, TimeZone: Add Glib::Value specializations
  (Kjell Ahlstedt)
* Property: Add const get_proxy() returning ReadOnly
  Getting Proxy from ReadOnly is const
  (Daniel Boles) Issue #44
* Property: Update for compatibility with Gtk::Builder
  (Kjell Ahlstedt)
* Fix memory leak in Variant<std::tuple<>>::create()
  (Van de Bugger, Kjell Ahlstedt) Issue #48
* Deprecate TimeVal
  (Kjell Ahlstedt)

Gio:
* Add Application::add_option_group()
  (Kjell Ahlstedt Issue #46 (Patrick Storz)
* DBus::Object: Fix refcounts in some vfuncs
  (Kjell Ahlstedt)
* Gio::DBus: Add ObjectProxy, ObjectSkeleton, ObjectManager,
  ObjectManagerClient, ObjectManagerServer
  (Kjell Ahlstedt) Issue #43 (Martin Ejdestig)
* Drive, MountOperation, ThemedIcon, TlsDatabase, VolumeMonitor:
  Fix ownership of some lists and arrays (Fixes memory leaks
  and dangling pointers)
  (Kjell Ahlstedt) Issue #50 (Gary Wang)
* Add SocketControlMessage::add_deserialize_func()
  (Kjell Ahlstedt) Issue #52 (Ankur deep jaiswal)

gmmproc:
* Update for new glib deprecation macros
  (Kjell Ahlstedt)

Build:
* Require glib-2.0 >= 2.61.2
  (Kjell Ahlstedt)

Documentation:
* Glib::init(), Gio::init(): Improve the documentation
  (Kjell Ahlstedt) Issue #49 (Van de Bugger)
* Glib::ustring can't always replace std::string
  (Kjell Ahlstedt) Issue #47 (Patrick Storz)


2.60.0 (stable):

Glib:
* Add DateTime::get_timezone()
  Add KeyFile::get_locale_for_key()
  Add TimeZone::get_identifier()
  (Kjell Ahlstedt)
* Add Value_RefPtrBoxed<>
  Add Value<std::vector<string>> specializations and other Value
  specializations that are necessary for _WRAP_PROPERTY
  (Kjell Ahlstedt)
* Object construction: Add custom class init and instance init functions
  (Kjell Ahlstedt) Issue #33

Gio:
* Add AppInfo::launch_uris_async() and launch_uris_async()
  Add DBusConnection::get_flags() and property_flags()
  (Kjell Ahlstedt)
* Settings: Add property_settings_schema()
  (Kjell Ahlstedt)
* TlsClientConnection: Deprecate property_accepted_cas()
  (Kjell Ahlstedt)
* ThemedIcon: Add create(const std::vector<Glib::ustring>& iconnames)
  (Kjell Ahlstedt)
* Remove NO_GTYPE from some _WRAP_ENUMs
  (Kjell Ahlstedt) Issue #37 (Jan Tojnar)
* TlsConnection: Deprecate rehandshake API
  (Kjell Ahlstedt)
* Application: Add signal_name_lost()
  (Kjell Ahlstedt)

gmmproc:
* Add _IS_REFCOUNTED_BOXEDTYPE
  (Kjell Ahlstedt)

Build:
* Require glib-2.0 >= 2.59.2
  (Kjell Ahlstedt)


2.58.1 (stable):

gmmproc:
* _WRAP_ENUM and _WRAP_GERROR: Add gtype_func parameter
  (Kjell Ahlstedt)
* docextract_to_xml.py: Add --exclude-file option.
  (Kjell Ahlstedt)

Documentation:
* README: Add installation instructions
  (Tapasweni Pathak) Merge request !10
* Don’t use @retval on out args, use @param[out]
  (Daniel Boles) Merge request !6


2.58.0 (stable):

This release is identical to 2.56.1.


2.56.1 (stable):

Glib:
* ustring: Fix wchar conversion on macOS with libc++
  (Clemens Lang) Bug #795338
* Avoid compiler warnings from function pointer conversions
  (Kjell Ahlstedt) Issue libsigcplusplus#1 (sharkcz)
  (Kjell Ahlstedt) Issue libsigcplusplus#8 (db0451)

Gio:
* SocketClient: Take copy in RefPtrs for signal args
  (Daniel Boles) Issue #28 (Jens Mühlenhoff)

Build:
* Require glib-2.0 >= 2.55.1
  (Kjell Ahlstedt) Issue #29 (Mart Raudsepp)
* Replace the Visual Studio project files with MSVC NMake project files
  (Chun-wei Fan) Merge request !5


2.56.0 (stable):

Glib:
* Threads::Private: Fix gobj().
  (Kjell Ahlstedt) Bug #791711 (octoploid)
* TimeoutSource: Use monotonic time consistently.
  (Kjell Ahlstedt) Bug #792524 (Dainis Jonitis)
* Add RefPtr::get().
  (Kjell Ahlstedt) Bug #495762 (Hubert Figuiere)

Gio:
* TlsClientConnection: Deprecate set/get/property_use_ssl3().
  (Kjell Ahlstedt)
* DataInputStream: Deprecate read_until().
  (Kjell Ahlstedt)
* Application: Add property_resource_base_path_string().
  This is a replacement for property_resource_base_path() which can't be
  fixed without breaking ABI.
  (Kjell Ahlstedt) Bug #787496 (Daniel Boles)
* Application: Add three set_option_context_*() methods.
  (Kjell Ahlstedt)
* DesktopAppInfo: Add get_locale_string().
  (Kjell Ahlstedt)

Documentation:
* Slightly elaborate Glib::Variant<Variant> docs.
  (Daniel Boles) Bug #778219

tests:
* glibmm_variant: Don't use C++14 features when a C++11 compiler is used.
  (Kjell Ahlstedt, Jonathan Wakely) Bug #787648 (Armin K.)
* glibmm_interface_move test: Avoid unused function warnings.
  (Murray Cumming)

gmmproc:
* _WRAP_METHOD: Accept optional list of exceptions in errthrow.
  (Kjell Ahlstedt) Bug #787979 (Daniel Boles)
* _WRAP_METHOD: Suppress the @return section in generated documentation
  if return type is void.
  (Kjell Ahlstedt) Bug #787978 (Daniel Boles)
* Add _MEMBER_SET_STR macro, setter for strings.
  (Pavlo Solntsev) Bug #793778


2.54.1 (stable):

Glib:
* Variant: Don't use std::index_sequence from C++14.
  (Kjell Ahlstedt, Jonathan Wakely) Bug #787648 (Armin K.)

Documentation:
* Note that Gio::Application::property_resource_base_path() shall not
  be used. It has a bug that's hard to fix without breaking ABI.
  (Kjell Ahlstedt) Bug #787496 (Daniel Boles)

gmmproc:
* Convert all property documentation to C++.
  (Kjell Ahlstedt) Bug #787698 (Daniel Boles)

2.54.0 (stable):

Glib:
* Added DBusObjectPathString and DBusSignatureString, for Variants with D-Bus object paths or D-Bus signatures,
  and add Variant specializations for Variant<Glib::DBusObjectPathString>,
  Variant<Glib::DBusSignatureString> and Variant<std::vector<Glib::DBusObjectPathString>>.
  (Kjell Ahlstedt) Bug #785700
* Variant: Add template specialization for std::tuple.
  (Alexander Rössler) Bug #777791

Gio:
* ActionGroup: Add optional action_name parameters to some signals.
  (Kjell Ahlstedt)
* Settings: Add optional key parameter to the writable_changed signal.
  (Kjell Ahlstedt)

gmmproc:
* Write signal flags to generated documentation
  (Kjell Ahlstedt) Bug #785895 (Daniel Boles)
* Write default values of properties to generated documentation
  (Kjell Ahlstedt) Bug #785895 (Daniel Boles)
* Warn for unmatched deprecations in signals and properties.
  (Kjell Ahlstedt)
* Accept curly braces in default values in _WRAP macros.
  (Kjell Ahlstedt) Bug #783216 comment #13 (Daniel Boles)
* Fix _WRAP_ENUM for enumerators with apostrophes.
  (Kjell Ahlstedt)
* Add new elements types for the docs_override:
  substitute_type_name and substitute_enumerator_name.
  (Kjell Ahlstedt) Bug #86864


2.52.1 (stable):

Gio:
* TlsDatabase: Fix memory leak in a vfunc.
  (Kjell Ahlstedt) Bug #783360

Documentation:
* Update docs of get_*_name().
  (Daniel Boles)

Build:
* MacOS: Really correct build without gdesktopinfo.
  (Kjell Ahlstedt) Bug #781947

2.52.0 (stable):

Gio:
* UnixSocketAddress::create(): Remove the default value for the type
  parameter to avoid ambiguity.
  (Kjell Ahlstedt) Bug #782592

Gio::DBus
* Proxy: Wrap call() and call_sync() methods.
  (Vyacheslav Yurkov) Bug #781818

Documentation:
* RefPtr: Clarify comment about undefined behaviour.
  (Daniel Boles)

2.51.7 (unstable):

Glib:
* SettingsSchemaKey: Add missing value/range methods.
  (Daniel Boles) Bug #774903
* Variant: Replace throw(std::bad_cast) with noexcept(false),
  to fix the build with C++17.
  See https://bugzilla.redhat.com/show_bug.cgi?id=1438766
  (Murray Cumming)
* VariantType: Deprecate first() and next(). Add get_item_types()
  (Kjell Ahlstedt) Bug #775741

Gio:
* ActionMap: Add add_action_with_parameter() that takes a parameter type,
  and deprecated the existing method, because it cannot work.
  (Daniel Boles) Bug #774444
* SimpleAction: Make set_state() public.
  (Daniel Boles) Bug #777953

Build:
* MacOS: Correct build without gdesktopinfo.
  (John Ralls) Bug #781947
* Glib::Object: Suppress deprecation warning for g_object_newv() with glib 2.54.
  (Kjell Ahlstedt)


2.51.6 (unstable):

This is version 2.51.6 of glibmm-2.24. Ignore versions 2.51.1 to 2.51.5 of
unstable glibmm-2.52. Unstable glibmm-2.52 is now unstable glibmm-2.54,
leaving the 2.51/52 version numbers again for use by stable glibmm-2.52.

Glib:
* Dispatcher:
  - autodeduce the type of the fd field.
  (Marcin Kolny) Bug #772074
  - Don't cast a HANDLE to an int on Windows.
  (Kjell Ahlstedt) Bug #772074
* ustring: Add cbegin() and cend().
  (Murray Cumming)

Gio:
* Action: Include variant.h in the heaer.
  (Daniel Boles) Bug #777953
* Application: get_default(): Correct the reference counting.
  (Kjell Ahlstedt) Bug #779936
* Settings:
  - Really add set_enum() and set_flags().
  (djb) Bug #774647
  - Writable-change-event signal: Correct the type of the key parameter.
  (Marcin Kolny) Bug #773977
* SettingsSchemaSource: get_default(): Correct the refcounting.
  (Marcin Kolny) Bug #774593

Gio::DBus:
* Proxy: Fix memory leak in get_cached_property_names().
  (Kjell Ahlstedt) Bug #775210

Documentation:
* Glib::Variant: Improve documentation of maybe types.
  (Daniel Boles) Bug #778219
* Gio::ActionMap: Clarify doc of ActivateWithParameterSlot
  (Daniel Boles)

Build:
* Visual Studio builds: "Install" the .pdb files
  (Chun-wei Fan)


2.50.0:

No changes since 2.49.7.

2.49.7:

Gio
* AppInfo: Add launch_default_for_uri_async().
  (Murray Cumming)
* Application::get_busy(): return the bool.
  (Murray Cumming) Bug #770304
* Drive: Add is_removable().
  (Murray Cumming)
* Settings:
  - set_uiint(): Deprecate for set_uint().
  - Add get/set_uint64().
  - Add get/set_int64().
  (Murray Cumming)
* giomm.h: Add include for settingsschemasource.h
  (Murray Cumming)

Documentation:
* Glib::OptionGroup: Improve the documentation of add_entry()
  (Kjell Ahlstedt)


2.49.5:

Glib:
* OptionContext: Wrap g_option_context_parse_strv()
  (Kjell Ahlstedt)

gmmproc:
* Add DocsParser::remove_c_memory_handling_info()
  (Kjell Ahlstedt)
* Add missing objects to glib/gio_extra_objects.defs
  (Kjell Ahlstedt)
* Remove DocsParser::non_object_method_name()
  (Kjell Ahlstedt)
* swap() implementations: Use std::swap().
  (Murray Cumming <murrayc@murrayc.com>

Documentation:
* Gio::SocketService: Update the class documentation
  (Kjell Ahlstedt)

2.49.4:

glib:
* Replace some use of some deprecated libsigc++ API.
  (Murray Cumming)

Build:
* Really enable silent builds.
  (Sebastian Geiger) Bug #768797

2.49.2:

Gio:
* FilterInputStream: Added a constructor.
  (Krzysztof Kosiński, Kjell Ahlstedt) Bug #572471
* FilterOutputStream:
  - Correct the property_base_stream() return type.
  (Krzysztof Kosiński) Bug #572471
  (Krzysztof Kosiński, Kjell Ahlstedt) Bug #572471
* InputStream: Added a constructor, is_closed(), has_pending(),
  set_pending(), clear_pending()
  (Krzysztof Kosiński, Kjell Ahlstedt) Bug #572471
* OutputStream: Added a constructor, is_closed(), is_closing(),
  has_pending(), set_pending(), and clear_pending().
  (Krzysztof Kosiński, Kjell Ahlstedt) Bug #572471
* Pollable, InputStream, OutputStream: Return -1 on error in vfuncs.
  (Kjell Ahlstedt)

gmmproc:
* Make h2def.py recognize some GDK_PIXBUF macros
  (Kjell Ahlstedt)
* Add optional argument err_return_value in _WRAP_VFUNC
  (Kjell Ahlstedt)

Build:
* Visual Studio build files: Update projects
  (Chun-wei Fan)

2.49.1:

gmmproc:
* Discard unused m4 sections.
  (Kjell Ahlstedt)
* Add 'deprecated' option in _WRAP_ENUM and _WRAP_GERROR
  (Kjell Ahlstedt)
* _CLASS_GOBJECT(): Allow custom move operation implementations with
  _CUSTOM_MOVE_OPERATION().
  (Marcin Kolny) Bug #756593

Gio:
* Added ListModel, ListStoreBase and ListStore<>, and tests.
  (Kjell Ahlstedt, Murray Cumming, Marcin Kolny)
  Bug #755307
* SocketAddress: Correct the constructor's implemention.
  (Murray Cuming) Bug #766150 (Vladimir)

Gio:DBus:
* Proxy: allow using GDBusProxy* conversion outside DBus namespace

Glib:
* FileAtrributeInfoList, Checksum, Module, RefPtr:
  Make operator bool explicit.
  (Murray Cumming)
* Property: Allow to set property nick, blurb, and flags.
  (Marcin Kolny) Bug #755256
* VariantBase: Add explicit operator bool(), deprecating
  operator const void*.
  (Murray Cumming)

Documentation:
* Examples: Use libsigc++ 2.9/10 and its slot/signal<R(Args...)> syntax.
  (Murray Cumming)

2.48.1:

Build:
* MacOS X: Add alternative #ifdefed code when thread_local
  is not supported by the compiler.
  (Tom Schoonjans) Bug #759791
* Replace most typedefs with the C++11 using keyword.

2.48.0:

* No major changes compared to 2.47.92.

2.47.92:

* Adapt to libsigc++-2.0 2.8:
  - using only the non-deprecated sigc::mem_fun() API.
  (Kjell Ahlstedt)
  - using std::ref instead of deprecated sigc::ref.
  (Murray Cumming)
  -  Correct bad uses of sigc::bind<1>.
  (Murray Cumming)


gmmproc:
* defs generation: Mark deprecated signals and properties as such in the
  generated .defs file.
* gmmproc: Check if signals and properties are deprecated appropriately
  (Kjell Ahlstedt)

Build:
* MSVC builds: Look for includes in include/gio-win32-2.0.
  (Chun-wei Fan)

2.47.6:

Glib:
* Add and uses Glib::c_str_or_nullptr().
  (Kjell Ahlstedt) Bug #755245
* Add some connect() overloads that move the sigc::slot.
  (Kjell Ahlstedt)
* Fix definition of VARIANT_TYPE_DICT_ENTRY to match header declaration
  (Aurelien Jacobs) Bug #761046
* Replace, via deprecation, ScopedPtr with make_unique_ptr_gfree().
  (Murray Cumming) Bug #760223
* SignalProxy: use variadic templates.
  (Marcin Kolny)
* ustring: Add move operators.
  (Kjell Ahlstedt) Bug #760282
*  Put deprecation ifdefs around aleady-deprecated GLIBMM_INITIALIZE_STRUCT.
  (Murray Cumming)
  
Gio:
* FileInfo::list_attributes(): Make name_space optional.
  (Murray Cumming)
* Icon: Add serialize(), deserialize() and documentation of create().
  (Kjell Ahlstedt)
* PropertyBase: Make custom properties more flexible
  (Kjell Ahlstedt) Bug #731484.
* SocketConnectable: Add to_string().
  (Kjell Ahlstedt)

Gio::DBus::
* Connection: Pass an empty bus name as nullptr.

gmmproc:
* Fix errthrow in _WRAP_VFUNC
  (Kjell Ahlstedt) Bug #762437
* Add NULL option to _WRAP_METHOD
  (Kjell Ahlstedt)
* h2def.py: Accept parameter names beginning with const.
  (Kjell Ahlstedt)

Build:
* Use some more minor C++11 features.
  (Murray Cumming)
* Threads example: Fix build on Visual Studio
  (Chun-wei Fan) Bug #760612
* glibmmconfig.h.in: Fix Visual Studio 2013 builds.
  (Chun-wei Fan) Bug #760612
* Glib::ustring: fix -Wmisleading-indentation gcc 6 warning in public header.
  (Aurelien Jacobs) Bug #760641.

Other:
* Reformat our hand-written C++ code with clang-format.
  (Murray Cumming)


2.47.4:

Glib::
* ustring: Don't allow comparison to 0.
  (Kjell Ahlstedt) Bug #572978 (Armin Burgmeier)

Gio:
* ActionMap: Fix the ref count in lookup_action_vfunc().
  (Kjell Ahlstedt) Bug #758813 (Aurimas Černius)

Build:
* Dispatcher: #include <mutex> in Windows builds.
  (T Sailor) Bug #758894
* Gio::Application: Destructor: Use noexcept in the implementation too.
  (Murray Cumming) Bug #758798 (Émeric MASCHINO)
* Fix the build with --disable-deprecated-api.
  (Kjell Ahlstedt)

2.47.3.1:

* Use thread_local instead of (deprecated) Glib::Threads::Private.
  (Murray Cumming, Kjell Ahlstedt) 

2.47.3:

* Deprecate all of Glib::Threads, including Mutex, Lock, Thread, etc.
* Deprecated Glib::ThreadPool.
  (Murray Cumming, Kjell Ahlstedt) 

2.46.2:

* ObjectBase, Object, Interface: Correct move constructors and move assignment
  operators.
  (Kjell Ahlstedt) Bug #756962


Changes in 2.46 compared to 2.44:

General:
* Use, and require C++11, using features such as move operations, noexcept
  auto, = delete, nulltpr, override.
  (Murray Cumming, Kjell Ahlstedt))

Glib::
* RefPtr:
  - Make it possible to stop use of RefPtr with certain classes.
  (Kjell Ahlstedt)
  - Make methods noexcept (C++11).
  (Murray Cumming)
  - Add move operations.
  (Murray Cumming, Marcin Kolny, Kjell Ahlstedt)
  * Add release():
  (Marcin Kolny)
* ObjectBase: Don't use std::auto_ptr (deprecated in C++11).
  (Kjell Ahlstedt)
* ObjectBase, Object, Interface, IOChannel, Markup: Add move operations
  (Murray Cumming) Add C++11 move operations.
  (Murray Cumming)
* HelperList: fix iterator check in operator[]
  (Maks Naumov)
* Add SettingsSchema, SettingsSchemaKey and SettingsSchemaSource.
  (Murray Cumming)
* Add Glib::format_size().
  (Kjell Ahlstedt)
* Add get_user_special_dir(UserDirectory), deprecating 
  get_user_special_dir(GUserDirectory directory).
  (Kjell Ahlstedt)
* Threads::Thread: Use GThread only via a pointer.
  Kjell Ahlstedt
* VariantBase: Add is_castable_to().
* VariantContainerBase: get_iter(): Accept casts of complicated types
  containing object paths and DBus type signatures to Variant<> types
  containing Glib::ustring and std::string.
  (Kjell Ahlstedt)
* Variant: Wrap handles and add get_data_as_bytes()
  (Kjell Ahlstedt)
* Added SignalProxyDetailed.

Gio:
* Application: Add the shutdown signal.
  (Murray Cumming)
* NetworkMonitor: Add get_network_metered() and property.
  (Murray Cumming)
* Settings: Add signal_changed(key).
  (Kjell Ahlstedt, Murray Cumming)
* Added SimpleIOStream.
  (Kjell Ahlstedt)
* SocketService: Add active property.
  (Murray Cumming)
* TlsClientConnection: Add copy_session_state().
  (Murray Cumming)

Gio::Dbus:
* Connection::signal_subscribe(): Pass nullptr instead of "".
  (Murray Cumming)

gmmproc:
* Generate C++11 move operations.
  (Murray Cumming)
* Mark all _CLASS_OPAQUE_REFCOUNTED classes as final (C++11).
  (Murray Cumming)
* generate_wrap_init.pl: Allow use of nested namespaces for whole module.
  (Marcin Kolny)
* _WRAP_METHOD: deprecated: Use G_GNUC_[BEGIN|END]_IGNORE_DEPRECATIONS
  per function, instead of one big undef [G|GDK|GTK]_DISABLE_DEPRECATED.
  (Kjell Ahlstedt)
* Add _IGNORE_PROPERTY() and _IGNORE_CHILD_PROPERTY() macros.
  (Kjell Ahlstedt)
* Add support for 'newin "n,m"' in some _WRAP macros.
  (Kjell Ahlstedt)
* _WRAP_SIGNAL: Add support for detail_name.
  (Kjell Ahlstedt)
* Fetch property documentation from the docs.xml file, if available there.
  (Kjell Ahlstedt)

Build:
* MSVC Builds: Many improvements
  (Chun-wei Fan)
* Add missing GLIBMM_API for Interface
  (Mikhail Titov)


2.46.1 (stable):

* gmmmproc: _CLASS_GOBJECT():
  Move the "= delete"ed constructor and operator= to public, instead of private.
  (Murray Cumming)

2.46.0 (stable):

Glib::
* RefPtr: Make it possible to stop use of RefPtr with certain classes.
  (Kjell Ahlstedt) Bug #755048
* WeakRef: Use noexcept.
  (Kjell Ahlstedt) Bug #583399.

Gio:
* Application: Remove bind/unbind_busy_property() because they are not
  quite ready.
  (Murray Cumming)

Gio::Dbus:
* Connection::signal_subscribe(): Pass nullptr instead of "".
  (Murray Cumming)

2.45.80 (unstable):

Gio:
* Application: Add bind/unbind_busy_property() and set_state_hint().
  (Murray Cumming)
* TlsClientConnection: Add copy_session_state().
  (Murray Cumming)

Build:
* MSVC Builds: Require MSVC.Net 2013 for C++11 support.
  (Chun-wei Fan) Bug #753271.
* MSVC Builds: Adapt for recent source code changes.
  (Chun-wei Fan) Bug #753271.
* MSVC Builds: Improve Build Speed and Debugging Experience
  (Chun-wei Fan)


2.45.70 (unstable):

Glib:
* C++11: Add move operations to ObjectBase and Object.
