Changelog:
Version 2.2.15 (24 December 2017)
--------------
Provide configuration option for GTK+-4 (acinclude.m4,
bootstrap-gtk2.sh, bootstrap-gtk3.sh, bootstrap-gtk4.sh,
configure-gtk4.ac, Makefile.am, README; doxygen.main.in,
file_print_manager.cpp, text_print_manager.cpp, window.h;
tests/test_application.cpp;
tests/extra/test_file_print_manager.cpp,
tests/extra/test_text_print_manager.cpp).
Use streambuffers not streams when testing fdstream and gstream
with char16_t and char32_t character types
(tests/test_fdstream.cpp, tests/test_gstream.cpp).
Update documentation (doxygen.main.in; async_channel.h,
callback.h, fdstream.h, gstream.h, task_manager.h,
task_manager.cpp).
Version 2.2.14.1 (23 November 2016)
----------------
Explicitly qualify malloc() as being within the std namespace
(async_channel.h).
Do not document the Cgu::Thread::FutureHelper and
Cgu::Thread::TaskManagerHelper2 namespaces (future.h,
task_manager.h).
Update documentation (async_channel.h).
Version 2.2.14 (9 November 2016)
--------------
Provide Cgu::AsyncChannel class (c++-gtk-utils/Makefile.am;
doxygen.main.in; async_channel.h, async_queue.h;
tests/Makefile.am, tests/test_async_channel.cpp).
Remove the 'noexcept' specifier for Cgu::Thread::Cond::wait() and
Cgu::Thread::Cond::timed_wait(): any cancellation pseudo-exception
is inconsistent with this specifier (mutex.h).
Provide TaskManager::get_max_tasks() method with documentation on
rate limiting (parallel.h, task_manager.h, task_manager.cpp).
Zero initialise the character buffer in Reassembler class
(reassembler.h).
Adjust configuration macros to enable use of Cgu::Extension with
guile-2.2 (acinclude.m4; cgu_config.h.in, extension.h).
Increase coverage of io_watch tests (tests/test_iowatch.cpp).
Update documentation (async_queue.h, async_result.h, future.h,
task_manager.h, thread.h).
c++-gtk-utils is a lightweight library containing a number of
classes and functions for programming GTK+ programs using C++ in
POSIX (unix-like) environments, where the user does not want to
use a full-on wrapper such as gtkmm or wxWidgets, or is concerned
about exception safety or thread safety of the wrapper and their
documentation. It is parallel installable for both GTK+2 and GTK+3.
There is also an option to install a subset of the library with
only glib/gobject/gio support, without GTK+.