removed old G_ENUM(), G_FLAGS(), G_NV() and G_SV() macros. added macros
[platform/upstream/glib.git] / ChangeLog.pre-2-12
index e5e696a..3a1fa10 100644 (file)
@@ -1,3 +1,706 @@
+Sat Oct 31 05:08:26 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h: removed old G_ENUM(), G_FLAGS(), G_NV() and G_SV() macros.
+       added macros G_STRUCT_OFFSET(), G_STRUCT_MEMBER_P() and
+       G_STRUCT_MEMBER() for handling structure fields through their offsets.
+       (struct _GHookList): added a hook_free function member, that can be used
+       to free additional fields in derived hook structures.
+       g_hook_free(): if hook_list->hook_free != NULL, call this function prior
+       to freeing the hook. (this functionality should have been there in the
+       first place, it just got forgotten as an implementation detail).
+
+Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org>
+
+       * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm
+       <robert@physiol.med.tu-muenchen.de>
+
+Tue Oct 27 07:25:53 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * gscanner.c:
+       (g_scanner_sync_file_offset): new function for file input.
+       rewind the filedescriptor to the current buffer position and blow
+       the file read ahead buffer. usefull for third party uses of our
+       filedescriptor, which hooks onto the current scanning position.
+       (this became neccessary with the implementation of buffered
+       reads).
+       (g_scanner_input_file): 
+       (g_scanner_input_text): automatically blow the read ahead buffer.
+       (g_scanner_get_char): blow the read ahead buffer when the end of
+       input is reached, i.e. a '\000' char is read.
+
+Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org>
+
+       * glib.h: get rid of duplicate #g_htonl and friends in the
+       NATIVE_WIN32 part
+
+Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org>
+
+       * glibconfig.h.win32
+       * gutils.c
+       * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0),
+       fixes some minor win32 buglets
+
+Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org>
+
+       * glib.h: reimplemented the endian stuff, using inline asm
+       for x86. #define g_htonl and friends.
+
+       * testglib.c: new tests for the endian stuff
+
+       * configure.in: care for AIX in gmodule linker flags test (from
+       Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux
+       instead of existance of /usr/include/linux
+
+       * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out
+       of thine existance!
+
+Tue Oct 27 03:00:50 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h: removed dummy structure definitions for struct _GCache,
+       _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk.
+
+       * gutils.c: implement glib's inline functions _after_ all include
+       statements have been processed.
+       removed Tor's MAXPATHLEN check since there already was one supplied
+       further down in this file.
+       (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32,
+       since lcc maybe used on other platforms as well. why in hell is this
+       stuff required?
+       (g_get_any_init): for windows, if the user name is supplied, use it as
+       realname also.
+       in general, if there is no homedir specified, use the tmpdir that
+       we already figured.
+
+       * gtimer.c (g_timer_elapsed): changed a g_assert() statement to
+       g_return_if_fail().
+
+       * applied glib-tml-981020-0.patch for WIN32 portability, added some
+       comments and g_return_if_fail() statements, minor indentation fixes.
+       ChangeLog entry from Tor Lillqvist is appended.
+
+       * glib.h (struct dirent): use lower case structure members.
+
+       * glib.h: 
+       * makefile.lcc:
+       * makefile.msc:
+       s/COMPILING_GLIB/GLIB_COMPILATION/
+
+1998-10-20: Tor Lillqvist <tml@iki.fi>
+
+       * README.win32 glib.def gmodule.def
+       * glibconfig.h.win32 gmodule/gmoduleconf.h.win32:
+       New files for the Windows port. The .def files list exported
+       symbols for the Microsoft linker and compatibles.
+
+       * configure.in:
+       Added checks for some platform-dependent headers: pwd.h sys/param.h
+       sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat.
+
+       * gerror.c:
+       Conditionalized inclusion of system-dependent headers. Changes
+       for Windows: no gdb to do a stack trace. Just call abort().
+
+       * glib.h:
+       Changes for Windows:
+
+       Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for
+       platform-dependent file name syntax elements. Added macros
+       G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for
+       platform-dependent search path syntax conventions.
+
+       Added pragmas for Microsoft C to make it more pedantic.
+
+       Marked GLib's global variables for export from DLL.
+
+       Added the function g_strescape that escapes backslashes.
+
+       Added functions g_path_is_absolute and g_path_skip_root to
+       handle platform-dependent file name syntax.
+
+       Added the function g_getenv that expands environment variables
+       that contain references to other environment variables, as is
+       typical on Windows NT.
+
+       Added the GIOChannel structure which is used to encapsulate the
+       IPC mechanism used by the GIMP's plug-ins, and possibly other
+       things later. On Unix a GIOChannel encapsulates just a file
+       descriptor. On Windows it contains a file handle from _pipe() and a
+       few other things related to the implementation of gdk_input_add
+       and GIMP plug-in communication. Subject to change.
+
+       Removed duplicate declarations of the version variables.
+
+       For the Microsoft compiler, declare own implementation of
+       ftruncate and the <dirent.h> functions.
+
+       * gmem.c:
+       Define a symbolic name  for the profiling table size.
+
+       * gmessages.c:
+       Conditionalized inclusion of unistd.h. On Windows, output using
+       stdio to stdout.
+
+       * gscanner.c:
+       Conditionalized inclusion of unistd.h. Added changes for
+       Microsoft C. Added CR to the skipped character set. Added small
+       workaround for MSC compiler bug in g_scanner_cur_value.
+       
+       * gstrfuncs.c:
+       Added the function g_strescape, which escapes the backslash
+       character. Needed especially when printing Windows filenames.
+
+       * gtimer.c:
+       Conditionalized inclusion of unistd.h and sys/time.h. Added
+       implementations for Windows.
+
+       * gutils.c:
+       Conditionalized inclusion of platform-dependent headers. Use
+       the platform-independent file name syntax macros.
+       Conditionalize code on platform-dependent features. Added the
+       functions g_path_is_absolute g_path_skip_root and g_getenv.
+       Added the GIOChannel-related functions. Added
+       compiler-dependent Unix compatibility functions for Windows.
+
+       * makefile.lcc makefile.msc:
+       New files. Compiler-specific makefiles for LCC-Win32 and
+       Microsoft C. Only Microsoft C is actually supported currently.
+       
+       * testglib.c:
+       Added pathname check cases for Windows. Added workaround for
+       bug in the Microsoft runtime library. Improved some tests a bit.
+       
+Sun Oct 25 01:24:01 CST 1998 Shawn T. Amundson <amundson@gtk.org>
+
+       * Released GLib 1.1.4
+
+       * docs/Makefile.am:
+       * docs/.cvsignore
+       * docs/glib-config.1: 
+       * docs/glib.texi: Moved docs from gtk and created glib-config.1 
+       from gtk-config.1 in gtk
+
+       * configure.in:
+       * Makefile.am:
+       * sanity_check: added in docs directory, change rule 'release'
+       to 'snapshot' and created a new 'release' rule for doing the
+       distribution.  Added in a 'sanity' rule.
+
+       * NEWS:
+       * README: 
+       * INSTALL: Updated for the release
+
+Sun Oct 25 07:30:10 1998  Tim Janik  <timj@gtk.org>
+
+       * gscanner.c:
+       (g_scanner_peek_next_char): 
+       (g_scanner_get_char): no more characters are available if read() returns
+       anything less than 1, not only on 0 return.
+
+       * glib.h: 
+       * gstrfuncs.c: final API cleanup of string arrays to suit sopwith's
+       argument order requirements.
+       (g_strsplit): renamed from g_str_array_split().
+       (g_strjoinv): renamed from g_str_array_joinv(), string array is
+       now passed as last parameter. removed `const' qualifier from string
+       array pointer (again).
+       (g_strjoin): new function from sopwith to concatenate strings with
+       an additional seperator.
+       (g_strfreev): renamed from g_str_array_free.
+
+Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org>
+
+       * gnode.c: small fix to g_node_children_foreach to make it work right.
+       From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu>
+
+Wed Oct 21 19:22:58 1998  Tim Janik  <timj@gtk.org>
+
+       * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes
+       from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading
+       behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied.
+       changed the return value from (!f2 && f1) to (!f2 || f1) so we default
+       to not needing an underscore. reverted the extra plugin.c building,
+       because .lo files are not ELF libraries, this can't work. This needs
+       further investigation on Solaris...
+
+Wed Oct 21 17:03:05 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h: 
+       * gstrfuncs.c: API cleanups of the new g_str* functions for consistency
+       with the existing naming scheme for g_str* functions. grouped the g_str*
+       functions that will return a newly allocated string seperatedly. all of
+       the in_place arguments were skipped, the caller is supposed to pass a
+       g_strdup()ed string if he wants to retrive a new copy. indentation and
+       coding style fixups. added some g_return_if_fail() statements.
+       string array functions are prefixed with g_str_array_.
+       (g_strdelimit): return the modified string like all other g_str*
+       functions, that operate in place.
+       (g_strchug): renamed from g_str_chug(), removed in_place argument.
+       (g_strchomp): renamed from g_str_chomp(), removed in_place argument.
+       (g_strstrip): renamed from g_str_strip(), removed in_place argument.
+       (g_str_array_join): renamed from g_strconcatv(), since it actually
+       operates on a string array and has totaly different semantics from
+       g_strconcat(). check for separator != NULL, don't segfault if the first
+       string is NULL. removed the `const' from the string array that's passed,
+       so users can operate on gchar** string arrays.
+       (g_str_array_split): renamed from g_str_split() because we actually
+       produce a string array. reimplemented this function for efficiency.
+       removed macro aliases g_str_joinv and g_str_join.
+
+1998-10-20  Elliot Lee  <sopwith@redhat.com>
+
+       * glib.h, gstrfuncs.c: Move string join/split/free routines from
+       libgnome/gnome-string, rename, and add g_str_chug.
+
+1998-10-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * configure.in: made the check for needed _ in module's func-names
+       work on solaris. (G_MODULE_NEED_USCORE must be set outside
+       AC_CACHE_VAL, dlopen(0,0) refused to work on solaris).
+
+Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org>
+
+       * configure.in
+       * acconfig.h: added test for endianness
+
+       * glib.h: #define endian macros for system and some conversions
+       between byte order
+
+Thu Oct  8 06:47:27 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * gdataset.c: removed functions g_dataset_id_set_destroy and
+       g_datalist_id_set_destroy and macros g_dataset_set_destroy and
+       g_datalist_set_destroy.
+       added new functions g_dataset_id_remove_no_notify and
+       g_datalist_id_remove_no_notify plus associated macros
+       g_dataset_remove_no_notify and g_datalist_remove_no_notify, which
+       will remove a certain data portion without invokation of its destroy
+       notifier, this should only be used in very controled circumstances.
+
+Wed Oct  7 05:31:24 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       removed the #pragma } statement after extern "C" {. use
+       (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation.
+
+       * glib.h:
+       * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and
+       G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL.
+       changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to
+       G_HOOK_ACTIVE() and G_HOOK_IN_CALL().
+       fixed the g_hook_find* functions, so they iterate over non-active
+       hooks as well.
+       (g_hook_first_valid):
+       (g_hook_next_valid): added an extra argument gboolean may_be_in_call,
+       which indicates whether G_HOOK_IN_CALL() hooks are considered valid
+       or not. these two functions are meant as iterators for the hook list
+       invocation, so they need to a) provide functionality to implement
+       may_recurse bahaviour and b) only walk active hooks.
+
+Tue Oct  6 14:29:47 1998  Tim Janik  <timj@gtk.org>
+
+       * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is
+       defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool
+       <mbp@wistful.humbug.org.au>).
+
+Sat Oct  3 01:18:10 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * ghook.c:
+       (g_hook_list_invoke):
+       (g_hook_list_invoke):
+       (g_hook_list_marshal): properly handle the first valid hook to call,
+       it maybe IN_CALL already.
+       (g_hook_list_marshal): minor name change.
+
+Fri Oct  2 23:21:21 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles
+       with ObjC which reserves "id" as a keyword (Raja R Harinath
+       <harinath@cs.umn.edu>).
+
+Wed Sep 30 10:53:03 1998  Tim Janik  <timj@gtk.org>
+
+       * Makefile.am: added ghook.c.
+
+       * glib.h:
+       * ghook.c: generic callback maintenance functions.
+
+       * glib.h: define G_GNUC_UNUSED.
+
+Fri Sep 25 00:04:37 1998  Tim Janik  <timj@gtk.org>
+
+       * configure.in: version bump to 1.1.4, binary age 0, interface age 0.
+
+       * glib.h (struct _GScanner): dumped peeked_char and text_len in favour
+       of *text_end and *buffer for buffered read()s.
+
+       * gscanner.c: changed peeking and retrival of next character so we
+       have buffered reads. fixed minor bug with number parsing error
+       reporting. made some static!!! variables local ones (why did we use
+       static temporary variables in the lowlevel tokenization code anyways?).
+
+Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
+
+       * Released GLib 1.1.3
+
+Mon Sep 21 07:43:13 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h: added g_renew() which works as g_new() for g_realloc().
+
+Mon Sep 21 02:22:12 1998  Tim Janik  <timj@gtk.org>
+
+       * NEWS file update for upcoming release of GLib + GModule
+       version 1.1.3, binary age 0, interface age 0. (GModule uses
+       the same version numbers as GLib.)
+
+       * glib.h: swap the inclusion of of float.h and limits.h to work
+       around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by
+       Per Abrahamsen  <abraham@dina.kvl.dk>).
+
+       * glib.h:
+       * gscanner.c: renamed the GValue union to GTokenValue, this should
+       not affect source compatibility in most cases.
+
+       * ghash.c: added some g_return_if_fail() statements. make
+       g_hash_table_lookup_node() an inline function so we save an extra
+       function invokation on lookups.
+
+Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
+
+       * ltconfig.sh: Patch to libtool-1.2b to make --disable-static
+       work.
+
+Sun Sep 20 02:09:44 1998  Josh MacDonald  <jmacd@axis.hip.berkeley.edu>
+
+       * glib.h: New function g_hash_table_foreach_remove is similar to
+       g_hash_table_foreach, but the callback's return value indicates
+       whether to remove the element (if TRUE) or not (if FALSE).  
+       Returns the number of elements deleted.
+
+Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org>
+
+       * glib.h
+       * gstrfuncs.c: added g_memdup implementation
+
+Fri Sep 18 18:46:14 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * gdataset.c: make the datalists a safe type (not using a generic
+       gpointer) by expecting a GData* argument in the g_datalist functions.
+       provide g_dataset_foreach() and g_datalist_foreach() functions that
+       allow a GDataForeachFunc function to walk the data lists.
+       (g_dataset_destroy_internal): made this function truely reentrant (i.e.
+       can be called from within destroy notifiers as well).
+       the *_foreach functions are _not_ reentrant (unless all the other
+       dataset and datalist functions).
+
+Fri Sep 18 03:41:20 1998  Tim Janik  <timj@gtk.org>
+
+       * gtree.c (g_tree_new): check for key_compare_func != NULL (reported
+       by Michal Kara).
+
+Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org>
+
+       * config.h.in: removed from repository
+
+       * install-sh
+       * missing
+       * mkinstalldirs: updated to latest automake version
+
+Thu Sep 17 06:36:25 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * gdataset.c: implemented g_datalist_* along the lines of g_dataset,
+       but operates on an opaque gpointer *datalist; pointer, e.g. for the
+       implementation of GtkObject named data.
+       we cache a certain portion of the already freed data entries now, to
+       gain a slight performance improve with data reallocation.
+
+Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
+
+       * Makefile.am glib-config.in l*: Update to libtool-1.2b,
+       change library versioning scheme to drop LT_RELEASE
+       from the -l line, while keeping it in the soname.
+
+Fri Sep 11 02:11:46 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h: explicitely include the prototypes for inline functions
+       to cure gcc warnings for -Wmissing-prototypes.
+
+Wed Sep  9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org>
+
+       * configure.in: added -posix check for NeXTStep
+
+Tue Sep  8 05:04:06 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h: abandon the use of ATEXIT(), we keep the fallback
+       macros for backwards compatibility. people ought to use g_atexit().
+
+       * gutils.c (g_atexit): new function to take over the implementation
+       of ATEXIT. this function is guarranteed to succeed, similar to
+       g_malloc().
+
+Mon Sep  7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org>
+
+       * configure.in: comment the -std1 check and save LIBS properly
+
+Mon Sep  7 07:53:21 1998  Tim Janik  <timj@gtk.org>
+
+       * configure.in: check for all three inline keywords individually.
+
+       * glib.h: inlining hassle. for compilers that don't allow the `inline'
+       keyword, mostly because of strict ANSI C compliance or dumbness, we try
+       to fall back to either `__inline__' or `__inline'. 
+       we define G_CAN_INLINE, if the compiler seems to be actually *capable*
+       to do function inlining, in which case inline function bodys do make
+       sense. we also define G_INLINE_FUNC to properly export the function
+       prototypes if no inlinig can be performed. we special case most of the
+       stuff, so inline functions can have a normal implementation by defining
+       G_INLINE_FUNC to extern and G_CAN_INLINE to 1.
+
+       * ltconfig: (compiler PIC flag test): special case linux for non
+       aout systems to honour lcc's position independant code (cases
+       "linux*aout)" and "linux*)" got added). (this needs to go into
+       libtool which does an advanced test, checking for __LCC__).
+
+       * autogen.sh: take $CC=lcc into account by invoking automake with
+       --include-deps so lcc isn't scared by gcc's auto-dependancy
+       generation code. care about $ACLOCAL_FLAGS. optionally feature
+       autoheader.
+
+       * minor fixups in other places to cure some of lcc's warnings.
+
+Sun Sep  6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org>
+
+       * configure.in: added -std1 check for ANSI compliance (from gtk)
+
+Sun Sep  6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org>
+
+       * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit
+
+Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * gutils.c (GLIB_INLINE): Define.
+       * glib.h (GLIB_INLINE): New define.
+       (g_bit_nth_msf): Use it.  Also, add prototype.
+       (g_bit_storage): Likewise.
+       (g_bit_storage): Likewise.
+
+Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h: 
+       (g_chunk_new0): use g_mem_chunk_alloc0() to allocate the memchunk,
+       so the correct size of the memchunk is allocated with 0's and not
+       a memory portion of the size of the desired type.
+
+       * gmem.c: new function g_mem_chunk_alloc0() which will initialize
+       a memory area allocated with g_mem_chunk_alloc() with 0's.
+
+Wed Sep  2 19:13:28 1998  Owen Taylor  <otaylor@redhat.com>
+
+       * garray.c glib.h (g_array_[ap/pre]pend_vals): make
+       data argument const.
+
+Wed Aug 26 06:32:40 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * gstrfuncs.c: new function g_strnfill() to return a new string
+       of specified length, filled with a specific character.
+
+Tue Sep  1 23:46:31 1998  Josh MacDonald  <jmacd@axis.hip.berkeley.edu>
+
+       * testglib.c (main): Update the array tests.  Reduce the number of
+       iterations for the prepend test from 10000 to 100 since it is
+       O(n^2) and was taking longer than I would like to wait.
+
+       * garray.c: I've worked on the GArray interface, mostly.  It was
+       seriously broken before and I hate to do it, but this is going to
+       break some code.  It is important to do this now, because more and
+       more people are starting to use glib and the interface was both
+       broken and inconsistent.  First, rename the _truncate functions of
+       both the GArray and GPtrArray classes to _set_size, since this
+       function can also be used to extend the arrays.  GArray now
+       accepts two more initialization arguments: clear and element_size.
+       Instead of providing the type to each access function, the array
+       now stores the element size.  Clear, if set, causes the library to
+       zero element's memory as the array expands.  The major broken-ness
+       here was that array->len was in bytes, not elements.  Now, since
+       the array knows its element size, array->len is correct and I have
+       removed the g_array_length macro.  The only macro which now
+       accepts the type as an argument is g_array_index, which casts the
+       element to the right type--this interface does not change.  The
+       append and prepend functions simply need the types removed.
+       g_ptr_array_remove_index now returns the removed element.
+
+       * gprimes.c (g_spaced_primes_closest): Move this function out of
+       ghash.c and rename it from g_hash_closest_prime.  Fix the primes
+       so that they are actually prime (they weren't all -- isn't that
+       nice?).
+
+Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * gstring.c:
+       * gstrfuncs.c:
+       (g_vsprintf): removed this function which was not publically
+       exported in glib.h. to export it, it should have been named
+       differently in the first place, since its semantics differ from
+       vsprintf(). apart from that, it was a possible cause for
+       problems since it worked on a previously allocated memory area and
+       was used in a lot places of glib. exporting it would have been a
+       guararant for problems with threaded programs.
+       (g_printf_string_upper_bound): exported this function to return
+       a string size, guarranteed to be big enough to hold the fully
+       expanded format+args string. added 'q', 'L' and 'll' flag handling.
+       in fact, the newly allocated area is in most cases much bigger than
+       required.
+       (g_strdup_vprintf()): new function returning a newly allocated string
+       containing the contents of *format and associated args (size is
+       calculated with g_printf_string_upper_bound()).
+       (g_strdup_printf): new function which wraps g_strdup_vprintf().
+
+       * configure.in: check for va_copy() or __va_copy() alternatively.
+       check whether va_lists can be copyied by value.
+
+       * glib.h: provide a definition for G_VA_COPY.
+
+       * glib.h:
+       * gmessages.c:
+       (g_logv):
+       (g_vsnprintf):
+       pass va_lists by value, not by reference, since this causes problems
+       on platforms that implement va_list as as arrays. internaly, use
+       G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second
+       va_list variable, if multiple passes are required. changed all
+       callers.
+
+       * glib.h:
+       * gerror.h:
+       renamed g_debug() to g_on_error_query(), cleaned up a bit.
+       renamed g_stack_trace() to g_on_error_stack_trace() since both
+       functions cluttered different namespaces.
+       there is an appropriate comment in glib.h now that explains the
+       unix and gdb specific dependencies of both functions.
+       removed g_attach_process().
+       g_on_error_stack_trace() should probably be handled with caution,
+       i've seem several different linux versions (2.0.x) become unstable
+       after invokation of this function.
+
+1998-08-18: Elliot Lee <sopwith@redhat.com>
+
+       * In gmem.c, add the ability to exclude memory chunks from the
+         memory profiling information.
+
+Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org>
+
+       * glib.h
+       * gstrfuncs.c: added g_strndup
+
+Tue Aug 18 04:40:17 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * gmessages.c: new function g_log_set_always_fatal() to set an
+       additional fatal_mask for log levels that are considered to be fatal
+       globally (required by gtk). since this mask is not domain-associated,
+       it is restricted to the log levels, introduced by glib itself.
+
+       * gmem.c:
+       * grel.c:
+       * gtree.c (g_tree_node_check):
+       don't use g_print() calls for informational/debugging output,
+       but log all this stuff through g_log() with G_LOG_LEVEL_INFO.
+       libraries shouldn't use printf(), g_print() or g_printerr() at all.
+
+Tue Aug 18 02:46:44 1998  Tim Janik  <timj@gtk.org>
+
+
+       * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make
+       `inline' a noop, since strict ANSI rules don't permit `inline'.
+
+Mon Aug 17 15:21:42 1998  Tim Janik  <timj@gtk.org>
+
+       * grel.c: made private functions static.
+
+Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
+
+       * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to
+         EXTRA_DIST
+       * glib.spec: version = 1.1.3
+
+Mon Aug 17 01:46:14 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.m4: feature an extra MODULES parameter, so glib-config can
+       be invoked with the "gmodule" argument.
+
+       * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all
+       g_return*_if_fail statements, and made them issue a message
+       like "assertion `%s' failed".
+
+       * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to
+       g_log_find_domain.
+
+Sun Aug 16 20:28:27 1998  Tim Janik  <timj@gtk.org>
+
+        * version bump to 1.1.3, binary age 0, interface age 0.
+
+       * glib.h: be nice to platforms that don't have gint64 and don't
+       issue #warning on every compilation. since glib doesn't require
+       gint64 itself, packages that need gint64 should test for this
+       themselves.
+
+       * glib.h:
+       * gutils.c: added a new function g_vsnprintf().
+
+Sun Aug 16 Elliot Lee
+
+       glib.h: #error out if we don't recognize the SIZEOF_VOID_P
+               #warning if no gint64
+
+Fri Aug 14 16:41:53 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h: added static inline functions for bit mask tests:
+       g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage.
+
+Fri Aug 13 14:23:37 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * gmessages.c:
+       revised the message handling system, which is now based on a new
+       mechanism g_log*. most of the assertment macros got adapted to
+       feature the new g_log() call with an additional specification of
+       the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN
+       is undefined upon the includion of glib.h, it'll be defined with a
+       value of (NULL) and thus preserves the original bahaviour for
+       warning and error messages. the message handler setting functions
+       for g_warning, g_error and g_message are only provided for backwards
+       compatibility and might get removed somewhen.
+
+       * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain
+       to "GLib" upon compilation. we currently have to add this definition
+       to the DEFS variable.
+       * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start
+       of this file currently, since automake doesn't support per target
+       _CFLAGS yet.
+
+       * glib.h: changed some gints to gbooleans, made a few const corrections,
+       removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some
+       in other required places.
+
+       * gnode.c:
+       (g_node_prepend):
+       (g_node_insert_before):
+       (g_node_insert):
+       (g_node_append_data):
+       (g_node_prepend_data):
+       (g_node_insert_data_before):
+       (g_node_insert_data):
+       (g_node_append):
+       return (node), so these macros/functions can be usefully chained with
+       g_node_new().
+
 Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org>
 
        * glib.h: it's GTime now, and it's back!
@@ -50,7 +753,7 @@ Tue Aug  4 15:17:54 1998  Tim Janik  <timj@gtk.org>
 
 Mon Aug  3 16:02:26 1998  Tim Janik  <timj@gtk.org>
 
-       * glib.h: 
+       * glib.h:
        * gnode.c: change order of gpointer data; field in struct _GNode to
        be partly binary compatible with GList and GSList.
 
@@ -67,7 +770,7 @@ Fri Jul 31 09:08:16 1998  Tim Janik  <timj@gtk.org>
 
        * Makefile.am: compile gnode.c.
 
-       * glib.h: 
+       * glib.h:
        * gnode.c: added implementation of n-way trees.
 
        * gtree.c (g_tree_traverse): added a warning to the switch() statement
@@ -84,14 +787,14 @@ Mon Jul 27 01:02:27 1998  Tim Janik  <timj@gtk.org>
        implementation.
 
 Sat Jul 25 16:09:00 1998  Mark Crichton <crichton@expert.cc.purdue.edu>
-       
-       * glib.h: gtime changed to g_time.  gtime is used in 
+
+       * glib.h: gtime changed to g_time.  gtime is used in
        /usr/include/time.h in NetBSD, causing multiple headaches.
        If this isn't the right way of fixing it.... ;)
 
 Thu Jul 23 00:29:14 1998  Tim Janik  <timj@gtk.org>
 
-       * glib.h: 
+       * glib.h:
        * gscanner.c: new functions to make a scanner scope sensitive wrt
        symbol lookups.
        g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
@@ -112,7 +815,7 @@ Tue Jul 14 09:05:18 1998  Tim Janik  <timj@gtk.org>
 
 Fri Jul 10 06:33:43 1998  Tim Janik  <timj@gtk.org>
 
-       * glib.h: 
+       * glib.h:
        * gutils.h: added a bunch of utility/wrapper functions:
        g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
        g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
@@ -235,7 +938,7 @@ Thu Jun 11 04:15:31 1998  Tim Janik  <timj@gtk.org>
 Wed Jun 10 19:29:51 1998  Owen Taylor  <otaylor@gtk.org>
 
        * Makefile.am glib.m4 configure.in:
-       
+
        Moved out from GTK+; added AM_PATH_GLIB macro.
 
 Wed Jun 10 12:56:07 1998  Owen Taylor  <otaylor@gtk.org>
@@ -250,7 +953,7 @@ Sat May 23 19:00:01 1998  Owen Taylor  <otaylor@gtk.org>
   [ Combination of:
      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
-       
+
        * glib.h ghash.c gstring.c gdataset.c gutils.c:
        - Added new typedef g_const_pointer; expunged all incorrect
          uses of 'const gpointer'.
@@ -272,7 +975,7 @@ Sat Jun  6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
 
 Wed Jun  3 06:19:42 1998  Tim Janik  <timj@gtk.org>
 
-       * glib.h (g_chunk_new0): convenience macro, for allocating small chunks 
+       * glib.h (g_chunk_new0): convenience macro, for allocating small chunks
        like g_chunk_new() with additional 0 initialization.
 
 Mon Jun  1 04:43:27 1998  Tim Janik  <timj@gtk.org>
@@ -290,7 +993,7 @@ Tue May 26 18:30:06 1998  Tim Janik  <timj@gtk.org>
 
 Mon May 18 22:14:39 1998  Owen Taylor  <otaylor@gtk.org>
 (Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
-       
+
        * gutils.c: Restored a missing prototype for g_vsprintf.
 
 Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org>
@@ -300,7 +1003,7 @@ Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org>
         g_mem_chunk_new().
         (g_chunk_free): new convenience macro to be consistent with g_chunk_new.
 
-Tue, 19 May 1998 09:00:02 +0200  ยงPaolo Molaro <lupus@debian.org>
+Tue, 19 May 1998 09:00:02 +0200  Paolo Molaro <lupus@debian.org>
 
        * gcompletion.c: generic functions for com<TAB>pletion...
 
@@ -315,8 +1018,8 @@ Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org>
 Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org>
 
        * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args)
-       that for some reason didn't produce a compiler wrning on my machine
-       (is va_end undefined for i386?).
+       that for some reason didn't produce a compiler warning on my machine
+       (is va_end defined to nothing for i386?).
 
 Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz>
 
@@ -345,15 +1048,15 @@ Tue May 12 19:22:58 1998  Owen Taylor  <otaylor@gtk.org>
 
        * glib/glib.h: Added macros G[U]INT_TO_POINTER() and
        GPOINTER_TO_[U]INT for storing small integers integers
-       inside pointers. 
-       
+       inside pointers.
+
        * glib/testglib.c: Print sizeof() results
        as g_print("%ld", (glong)sizeof(foo)), to deal with
        size_t being long on Alpha's.
 
 Tue May 12 16:54:15 1998  Owen Taylor  <otaylor@gtk.org>
        (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
-       
+
        * glib.h gstring.c gmessages.c: Added some missing
        const to arguments.
 
@@ -450,8 +1153,8 @@ Fri May  1 16:36:08 1998  Owen Taylor  <otaylor@gtk.org>
 
 Thu Apr 30 21:41:30 1998  Owen Taylor  <otaylor@gtk.org>
 
-       * gstring.c : Check arguments more carefully, 
-       (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) 
+       * gstring.c : Check arguments more carefully,
+       (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
 
 Tue Apr  7 19:36:48 1998  Owen Taylor  <owt1@cornell.edu>
 
@@ -477,7 +1180,7 @@ Fri Apr  3 18:05:45 1998  Owen Taylor  <owt1@cornell.edu>
 
        * testglib.c: Removed literal german from strings
        to appease SGI compiler.
-       
+
 Thu Mar 26 20:47:21 1998  Owen Taylor  <owt1@cornell.edu>
 
        * configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
@@ -528,7 +1231,7 @@ Mon Mar  2 17:51:18 1998  Owen Taylor  <owt1@cornell.edu>
          to take gchar* not guchar*
 
        * testglib.c: Remove trailing ; after functions
-       
+
 Sun Mar  1 19:04:40 1998  Owen Taylor  <owt1@cornell.edu>
 
        * glib.h gstring.c: Added g_string_insert[_c]()
@@ -600,7 +1303,7 @@ Sat Jan 17 23:52:40 1998  Owen Taylor  <owt1@cornell.edu>
           renamed g_string_equal => g_str_equal
           renamed g_string_hash => g_str_hash
          And const corrected. Old functions left in for now.
-       
+
 Fri Jan  9 20:03:46 1998  Tim Janik  <timj@psynet.net>
 
        * gutils.c (g_strerror): changed message for EAGAIN from
@@ -628,8 +1331,8 @@ Sat Jan  3 20:23:25 1998  Owen Taylor  <owt1@cornell.edu>
 
 Fri Jan  2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
 
-       * glib_pre1.h: 
-       * glib_pre2.h: 
+       * glib_pre1.h:
+       * glib_pre2.h:
        * glib.h: reverted glibconfig.h and glib.h files back to the
        way they were before my ugly hack.
 
@@ -661,8 +1364,8 @@ Mon Dec 15 19:33:58 1997  Tim Janik  <timj@psynet.net>
 
 Wed Dec 10 23:27:20 1997  Tim Janik  <timj@psynet.net>
 
-       * glib_pre1.h: 
-       * glib_pre2.h: 
+       * glib_pre1.h:
+       * glib_pre2.h:
        * glib.h: this file now gets concatenated by makeglib_h from
        glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
        created by configure (done by Jay Painter).
@@ -670,7 +1373,7 @@ Wed Dec 10 23:27:20 1997  Tim Janik  <timj@psynet.net>
        * glib_pre2.h: the g_assert*() and g_return_*_fail() macros
        are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
        when used within if (...) g_macro(); else ... conditionals.
-       
+
 Tue Dec 17 13:14:07 1996  Peter Mattis  <pmattis@charnley.HIP.Berkeley.EDU>
 
        * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to