Changelog:
Version 2.2.13 (9 May 2016)
--------------
Use glib's unix fd implementation for io_watch where glib >= 2.36
is installed, unless otherwise chosen during configuration
(acinclude.m4, configure-gtk2.ac, configure-gtk-3.ac;
io_watch.cpp).
Update documentation (callback.h, extension.h, future.h).
Version 2.2.12 (18 October 2015)
--------------
Simplify Cgu::Application::add() method (application.cpp).
Minor implementation improvement for
Cgu::Thread::parallel_transform* functions (do pointer arithmetic
before not after tasks are launched) (parallel.h).
Permit return value optimisation when returning thread object on
starting new thread (thread.cpp).
Update libtool to version 2.4.6.
Documentation fix for doxygen-1.8.9 (docs/Doxyfile.in).
Update code comments (emitter.h).
Update documentation (doxygen.main.in, application.h, emitter.h,
extension.h, future.h, future.tpp, shared_handle.h, shared_ptr.h,
task_manager.h, thread.h).
Problems found locating distfiles:
Package modular-xorg-server: missing distfile xorg-server-1.17.4.tar.bz2
Package py-qt4: missing distfile PyQt-mac-gpl-4.11.1.tar.gz
Package xservers: missing distfile xservers-3.3.6.5.tar.bz2
Package xview-clients: missing distfile xview3.2p1-X11R6.tar.gz
Package xview-lib: missing distfile xview3.2p1-X11R6.tar.gz
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
Changelog:
Version 2.2.11 (6 April 2015)
--------------
Provide a mutex for calls to make-fresh-user-modules to deal with
guile thread safety issues (c++-gtk-utils/Makefile.am;
extension.h, extension_helper.cpp).
Improve efficiency of scheme to C++ list translators for long
lists (extension.h).
Update libtool to version 2.4.4.
Update code comments (extension.h, future.h, parallel.h,
task_manager.h, task_manager.tpp).
Update documentation (README; application.h, parallel.h, param.h).
Version 2.2.10 (24 November 2014)
--------------
Permit Cgu::Thread::parallel_for_each(),
Cgu::Thread::parallel_for_each_partial(),
Cgu::Thread::parallel_transform() and
Cgu::Thread::parallel_transform_partial() to take const source
iterators (parallel.h).
Provide Cgu::IntIter class to enable for loops to be more easily
implemented with the parallel algorithms (doxygen.h.in,
parallel.h; tests/test_parallel.cpp).
With gcc >= 4.8 or clang >= 3.4, implement callback classes using
std::tuple (this enables Callback::make() and Callback::make_ref()
to take up to 10 bound arguments, avoids a lot of code duplication
and makes for a cleaner implementation) (acinclude.m4,
configure-gtk2.ac, configure-gtk3.ac; cgu_config.h.in,
doxygen.main.in; callback.h, param.h; tests/Makefile.am,
tests/test_tuple.cpp).
Preallocate vectors in translator functions which return
std::vector (extension.h).
Correct information about clang compatibility (doxygen.main.in).
Update documentation (async_queue.h).
Version 2.2.9 (6 October 2014)
-------------
Provide AsyncQueue::move_pop_basic(),
AsyncQueueDispatch::move_pop_basic(),
AsyncQueueDispatch::move_pop_dispatch_basic() and
AsyncQueueDispatch::move_pop_timed_dispatch_basic() methods
(async_queue.h; tests/test_async_queue.cpp).
Prevent new GTK+-3.14 deprecation warnings interfering with tests
(test/test_application.cpp).
Update build system to automake-1.14.1 (bootstrap-gtk2.sh,
bootstrap-gtk3.sh, compile, Makefile.am).
Update build system to gettext-0.18.2 (config.rpath; m4/*.m4;
po/Makefile.in.in, po/Rules.quot, po/Makevars;
c++-gtk-utils/Makefile.am, tests/Makefile.am,
tests/extension/Makefile.am).
Update tests (tests/test_callback.cpp).
Add comments about strict aliasing with character set conversion
functions (convert.cpp).
Update documentation, including to cover C++14 (README;
doxygen.main.in, async_queue.h, callback.h, convert.h,
extension.h, fdstream.h, future.h, gstream.h, mem_fun.h, mutex.h,
shared_handle.h, shared_ptr.h, task_manager.h, thread.h,
window.h).
Changelog:
Version 2.2.8 (16 July 2014)
-------------
Correct testing of minimum values in Extension::real_to_double()
and Extension::list_to_vector_double() (extension.h).
Deal properly with unexpected out-of-memory conditions in
executing Extension::exec() and Extension::exec_shared()
(extension.h).
Minor code refactoring in EmitterArg::connect() and
SafeEmitterArg::connect() (emitter.h).
Update documentation (callback.h, emitter.h, extension.h,
notifier.h, parallel.h, task_manager.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+.