Chris's work on the region list
[ardour.git] / libs / glibmm2 / ChangeLog
index 2862d348ffddeb7c457f9187b9ad8a924e23c320..af229af44ed6c9f703a4a19ea2e95b525caa4904 100644 (file)
@@ -1,3 +1,370 @@
+2.14.2:
+
+2007-10-22  Murray Cumming  <murrayc@murrayc.com>
+
+       * Merged this change from 2007-03-03 from the glibmm-2-12 branch, which was 
+       missing from this branch:
+       * configure.in:
+       * glib/glibmmconfig.h.in:
+       * glib/src/date.ccg:
+       * glib/src/date.hg:
+       * scripts/Makefile.am:
+       * scripts/c_std.m4: Added a test for the case that time_t is equivalent to 
+       guint32, as seems to be the case on NetBSD-4.99.6/amd64, so we can ifdef-out 
+       the (deprecated, anyway) Glib::Date::set_time(GTime) method when necessary, because 
+       GTime is also equivalent to guint32.
+       Bug #386990.
+
+2007-10-12  Armin Burgmeier  <armin@openismus.com>
+
+       * tools/m4/base.m4: Added a new section called SECTION_HEADER_FIRST
+       that within the header file that is before any generated code (apart
+       from the include guards) and a _CONFIGINCLUDE macro that includes a
+       file within this section. This is intended to be used with
+       g*mmconfig.h so the *_DISABLE_DEPRECATED define is set for deprecated
+       classes also when included from other code.
+
+2.14.1:
+
+2007-09-29  RĂ©mi Cardona  <remi@gentoo.org>
+
+       * configure.in:
+       increase the minimum glib requirements.
+       Bug #481566.
+
+2007-10-02  Murray Cumming  <murrayc@murrayc.com>
+
+       * glib/glibmm/wrap.cc:
+       * glib/glibmm/wrap.h: Replaced wrap_create_new_wrapper() 
+       (introduced by the last commit) with wrap_create_new_wrapper(),
+       allowing us to check that the parent GType actually implements 
+       the interface. This allows us to return a parent known type 
+       if it implements the wanted interface.
+
+2007-09-25  Murray Cumming  <murrayc@murrayc.com>
+
+       * glib/glibmm/wrap.cc:
+       * glib/glibmm/wrap.h: Added wrap_auto_interface<>(), which should 
+       be used by wrap() specializations for interfaces, so we create 
+       instances of the interface even if the derived C type is unknown to 
+       us.
+       * glib/glibmm/signalproxy_connectionnode.h: Do not wrap.h from here 
+       unnecessarily, to allow us to include objectbase.h in wrap.h, 
+       needed by the new templated method.
+       * tools/m4/class_interface.m4: Use wrap_auto_interface<>() 
+       instead of wrap_auto() for interfaces.
+
+2.14.0:
+
+2007-09-06  Daniel Elstner  <danielk@openismus.com>
+
+        * glib/src/regex.{ccg,hg} (Regex): Some cosmetic cleanup.  Also
+        replace C-style casts in default argument values with static_cast<>.
+        (escape_string): Wrap missing function.
+        (match_full): Rename to and add as overloads of match().
+        (match_all_full): Rename to and add as overloads of match_all().
+        (split_full): Rename to and add as overloads of split().
+
+       This has freeze-break approval from the release team.
+
+2007-08-16  Jonathon Jongsma  <jjongsma@gnome.org>
+
+       * docs/reference/glibmm_footer.html_fragment,
+       docs/reference/glibmm_header.html_fragment: added <div> to doxygen header
+       and footer to make it easier to integrate with library.gnome.org, per a
+       request by Frederic Peters
+
+2.13.9:
+
+2007-07-28  Murray Cumming  <murrayc@murrayc.com>
+
+       * glib/src/keyfile.hg:
+       * glib/src/keyfile.ccg: Added a set_double() without the group_name 
+       parameter, because the C function can take NULL.
+       * glib/src/glib_docs_override.xml: Corrected the documnentation for 
+       g_keyfile_set/get_double() to mention 2.14, instead of 2.12, 
+       because we only added these to glibmm in 2.14.
+       * glib/src/regex.hg: Correct the since documentation to be 2.14 
+       not 2.12.
+       * glib/src/iochannel.hg: read(): Corrected a parameter name to 
+       match the generated documentation.
+       * glib/glibmm/miscutils.h: Fixed typos in the use of newin2p14.
+
+2007-07-28  Murray Cumming  <murrayc@murrayc.com>
+
+       * docs/Makefile_web.am_fragment: Corrected the rsync options, to 
+       match those used by gtkmm, to fix the examples upload.
+       * glib/src/glib_docs.xml: Regenerated from the C documentation.
+
+2007-07-14  Murray Cumming  <murrayc@murrayc.com>
+
+       * glib/src/keyfile.ccg:
+       * glib/src/keyfile.hg: Added get_double(), set_double(), get_double_list() 
+       and set_double_list().
+
+2.13.8:
+
+2007-07-07  Jonathon Jongsma  <jjongsma@gnome.org>
+
+       * glib/src/optioncontext.ccg:
+       * glib/src/optioncontext.hg: add some new API that was added in glib 2.12,
+       including get/set_summary(), get/set_description(), set_translation_domain(),
+       and set_translate_func().
+       * glib/src/glib_docs.xml: Regenerated with docextract_to_xml.py
+       * glib/src/glib_docs_override.xml: override docs for the new functions so
+       that they say that they were introduced in glibmm 2.14 instead of 2.12
+
+2007-07-02  Johannes Schmid <johannes.schmid@openismus.com>
+
+       * glib/src/regex.hg:
+       Added class documentation
+
+2007-07-02  Murray Cumming  <murrayc@murrayc.com>
+
+       * tools/pm/DocsParser.pm: convert_tags_to_doxygen():
+       Handle newin markers for 2.12 and a few after that. 
+       * docs/reference/Doxyfile.in: Added ALIASES for newin2p12 and 
+       a few more.
+
+2.13.7:
+
+2007-06-22  Murray Cumming  <murrayc@murrayc.com>
+
+       * glib/glibmm/main.cc:
+       * glib/glibmm/main.h: Added SignalTimeout::connect_seconds() 
+       as an equivalent for g_timeout_add_seconds() and took the improved 
+       documentation from glib.
+
+       * glib/glibmm/miscutils.cc:
+       * glib/glibmm/miscutils.h: Added get_user_special_dir(), though we 
+       should maybe wrap the enum.
+       Reimplemented many of the functions with the 
+       convert_return_gchar_ptr_to_stdstring() and 
+       convert_const_gchar_ptr_to_stdstring() functions to simplify them 
+       and make them handle NULLs properly.
+
+2007-06-22  Murray Cumming  <murrayc@murrayc.com>
+
+       * glib/src/regex.ccg:
+       * glib/src/regex.hg: Added a create() method, and added some 
+       more default parameter values to the methods.
+
+       * configure.in:
+       * examples/Makefile.am:
+       * examples/regex/main.cc: Added a very simple example.
+
+       * glib/glibmm/value_custom.h: Put header guards around this, though 
+       this should never be included directly anyway.
+
+2.13.6:
+
+2007-06-17  Murray Cumming  <murrayc@murrayc.com>
+
+       * glib/src/regex.hg:
+       * glib/src/matchinfo.hg: Removed API that uses GMatchInfo, until we 
+       wrap this properly, probably as a C++ iterator. This will avoid this 
+       API accidentally being released as stable sometime.
+
+2007-06-12  Murray Cumming  <murrayc@murrayc.com>
+
+       * glib/src/glib_enums.defs: Regenerated with enums.pl
+       * glib/src/glib_functions.defs: Regenerated with h2defs.py
+
+       * glib/src/Makefile_list_of_hg.am_fragment:
+       * tools/m4/convert_glib.m4:
+       * glib/src/matchinfo.ccg:
+       * glib/src/matchinfo.hg:
+       * glib/src/regex.ccg:
+       * glib/src/regex.hg: Added the RegEx and MatchInfo classes.
+       These need some examples to test them. The MatchInfo class is 
+       probably particularly broken at the moment. See the TODO comments.
+
+       * glib/glibmm.h: Added regex.h
+
+2007-05-14  Murray Cumming  <murrayc@murrayc.com>
+
+       * tools/m4/class_boxedtype.m4:
+       * tools/m4/class_gobject.m4:
+       * tools/m4/class_gtkobject.m4:
+       * tools/m4/class_interface.m4:
+       * tools/m4/class_opaque_copyable.m4:
+       * tools/m4/class_opaque_refcounted.m4: Explicitly mention Glib::wrap() 
+       in the documentation for generated Glib::wrap() functions, because doxygen 
+       does not show their namespace.
+
+2007-05-04  Murray Cumming  <murrayc@murrayc.com>
+
+       * tools/pm/Function.pm: When generating example prototypes for 
+       signal handlers, prefix them with on_my_, to avoid confusion with 
+       similarly named functions and with on_*() default signal handlers.
+
+2.13.5:
+
+2007-04-30  Johannes Schmid <johannes.schmid@openismus.com>
+
+       * tools/generate_wrap_init.pl.in:
+       * tools/m4/class_gtkobject.m4:
+       Use _IS_DEPRECATED instead of _CLASS_DEPRECATED because
+       the latter confuses gmmproc.
+       We cannot just use _DEPRECATED because it will result
+       in incorrect handling of for example
+       #ifndef GTKMM_DISABLE_DEPRECATED
+
+2007-04-24  Yselkowitz <yselkowitz@users.sourceforge.net>
+
+       * scripts/macros.m4: Check for both m4 and M4 in the GNU m4 output,
+       to fix the build on some platforms.
+       Bug #423990
+
+2.13.4:
+
+2007-04-11  Armin Burgmeier  <armin@openismus.com>
+
+       * tools/pm/WrapParser.pm: Added peek_token() function which only
+       returns the next token without removing it from the tokens array.
+       Parse '/**' as a separate token and handle it in a special way so that
+       when the final '*/' is encountered and _WRAP_SIGNAL follows, the
+       comment is not terminated but continued by that automatically
+       generated doxygen comment.
+
+       * tools/pm/Output.pm: Added a merge_doxygen_comment_with_previous
+       parameter in output_wrap_sig_decl(). If it is nonzero, the function
+       assumes that there is already a comment open and continues to use it
+       instead of opening a new comment by removing the leading '/**' from
+       what get_refdoc_comment() returns. Bug #378810.
+
+2007-04-06  Johannes Schmid <johannes.schmid@openismus.com>
+
+       * tools/generate_wrap_init.pl.in:
+       Use _CLASS_DEPRECATE instead of just _DEPRECATE to
+       known whether a whole class should be avoided in wrap_init.
+       Otherwise every .hg file containing deprecated methods
+       might get ignored. (Fixes Gtk::TextBuffer bug in maemo)
+
+2007-03-19  Bradley Bell  <btb@debian.org>
+
+       * glib/glibmm/helperlist.h: Change variable name to avoid
+       warnings about a shadowed member.
+       Bug #420316.
+
+2007-03-19  Bradley Bell  <btb@debian.org>
+
+       * glib/glibmm/utility.h: remove g_free prototype, include gmem.h
+       instead, to avoid a warning about a redundant declaration.
+       Bug #420339.
+
+2007-03-17  Armin Burgmeier  <armin@openismus.com>
+
+       * tools/m4/signal.m4:
+       * tools/m4/vfunc.m4: 
+       Use static_cast in vfuncs and signal handlers to cast the
+       wrapper object to ObjectBase*. This is enough to check whether the object is
+       from a derived type or not. A slow dynamic_cast has only to be performed if it
+       is derived, and the C++ vfunc needs to be called.
+       * glib/glibmm/objectbase.h: This requires ObjectBase::is_derived_ to be public, 
+       because it is called on a ObjectBase* rather than the actual type.
+       This causes a slight speed up of vfuncs and default signal handler invokation.
+
+       Also added commented-out inline versions of ObjectBase::_get_current_wrapper() and 
+       ObjectBase::is_derived(), which could be used in the generated code if we find 
+       that this has significant performance benefits. Note that these methods must be 
+       additional to the non-inline methods, because inline methods are not usually exported in the 
+       shared library. 
+
+2007-02-10  Murray Cumming  <murrayc@murrayc.com>
+
+       * examples/options/main.cc: Use a default value, to show that it 
+       can be done.
+       (This change, from 2006-03-30 was restored after being accidentally lost on Apr 12 2006)
+
+2007-02-10  Armin Burgmeier <armin@arbur.net>
+
+       * glib/src/optiongroup.ccg: default_c_arg(): Set the initial
+       value of the C argument to the value the C++ argument has, to avoid
+       that glibmm resets arguments to zero that were not given on the
+       command line.
+       (This change, from 2006-03-30 was restored after being accidentally lost on Apr 12 2006)
+
+2007-01-28  Daniel Elstner  <daniel.kitta@gmail.com>
+
+       * tools/m4/ctor.m4: If the argument list is empty, call the non-
+       varargs overload of the Glib::ConstructParams constructor instead
+       of using an empty varargs list.  This mistake was exposed thanks
+       to the recent addition of G_GNUC_NULL_TERMINATED to the varargs
+       constructor declaration.  Fortunately it was harmless in this case.
+       Also use the opportunity to clean up the M4 code and prefix builtin
+       M4 macros with m4_, so that we may get rid of the unprefixed macros
+       altogether some day.
+
+Thu, 25 Jan 2007 23:13:05 +0100 Dodji Seketeli
+
+       * tools/m4/base.m4:
+         prefix the builting mkstemp with 'm4' because otherwise,
+         m4 1.4.8 recognizes it as a builtin macro and expands it, leading
+         to compilation errors on some distros.
+         This should fix #397167. Thanks to Daniel Elstner for spotting this.
+
+2007-01-20  Daniel Elstner  <daniel.kitta@gmail.com>
+
+       * glib/glibmm/dispatcher.{cc,h}: Early spring cleaning.  Also add
+       a paragraph about Dispatcher on win32 to the documentation.
+       (DispatchNotifyData): Remove the 'tag' member from the struct that
+       was always set to 0xdeadbeef in order to detect memory corruption.
+       This is pointless, as we already check the DispatchNotifier pointer
+       sent across the pipe, which is a far better indicator of corruption
+       anyway.
+       (warn_failed_pipe_io): Remove the err_no parameter and retrieve
+       errno respectively GetLastError() within the function instead.
+       (DispatchNotifier::conn_io_handler_): Remove, as we now inherit
+       from sigc::trackable.  I verified that this doesn't cause problems
+       with threading in this particular case.
+       (DispatchNotifier::DispatchNotifier): If creating the pipe failed
+       and exceptions are disabled, call at least warn_failed_pipe_io()
+       instead of doing nothing at all.
+       (DispatchNotifier::*): Rework the win32 implementation so that it
+       matches more closely the Dispatcher semantics on Unix.  This still
+       needs testing by someone on win32, though.  So far I only verified
+       that it compiles with dummy definitions of the win32 API.  Also,
+       I accidentally located the real cause of the race condition Cedric
+       experienced in bug #109966.  It was a bug in my patch, rather than
+       in the example code.
+
+       * examples/thread/dispatcher.cc: Cleanup.  In particular, get rid
+       of the Glib::RefPtr<> abuse with non-Glib::Object types.  I don't
+       believe we endorse such usage officially, so it shouldn't be in
+       the examples.
+
+2007-01-20  Daniel Elstner  <daniel.kitta@gmail.com>
+
+       * glib/glibmm/miscutils.cc: Clean up the code a bit.
+       (get_application_name): Remove the code that checked the string for
+       valid UTF-8, and attempted conversion if not valid.  I must have
+       been on crack when I wrote this, as the combination of conditions
+       that would cause the string to be invalid UTF-8 is quite unlikely.
+       If this is a valid concern at all, it should be filed as a GLib bug
+       and not worked around in glibmm.
+       (build_filename(const std::string&, const std::string&)): Just call
+       the plain g_build_filename() instead of building a temporary array
+       and passing that via ArrayHandle to the build_filename() overload
+       for containers.
+       (build_path): Remove the already deactivated custom implementation
+       from the time before g_build_pathv() was added to GLib.
+
+       * glib/glibmm/object.{cc,h}: Improve/fix a couple of comments.
+       (ConstructParams::ConstructParams): Add G_GNUC_NULL_TERMINATED
+       function attribute to make the compiler complain if the variadic
+       argument list is not terminated by a NULL pointer.
+
+       * glib/glibmm/ustring.{cc,h} (utf8_find_last_of): Avoid applying
+       bitwise logical operators directly to (possibly signed) operands
+       of char type.  In order to avoid relying on implementation-defined
+       behavior, make sure that the operands are of unsigned integer type.
+       (ustring::is_ascii): Likewise,
+       (ustring_Iterator<T>::operator--): Likewise.
+       (get_unichar_from_std_iterator): De-obfuscate this highly optimized
+       piece of code, as the current stable release of GCC (4.1.2-pre on
+       my system) generates better assembler output without the voodoo.
+
 2.13.3:
 
 2006-11-28  Daniel Elstner  <danielk@openismus.com>