NEWS file update for upcoming release of GLib + GModule version 1.1.3,
[platform/upstream/glib.git] / ChangeLog.pre-2-2
1 Mon Sep 21 02:22:12 1998  Tim Janik  <timj@gtk.org>
2
3         * NEWS file update for upcoming release of GLib + GModule
4         version 1.1.3, binary age 0, interface age 0. (GModule uses
5         the same version numbers as GLib.)
6
7         * glib.h: swap the inclusion of of float.h and limits.h to work
8         around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by
9         Per Abrahamsen  <abraham@dina.kvl.dk>).
10
11         * glib.h:
12         * gscanner.c: renamed the GValue union to GTokenValue, this should
13         not affect source compatibility in most cases.
14
15         * ghash.c: added some g_return_if_fail() statements. make
16         g_hash_table_lookup_node() an inline function so we save an extra
17         function invokation on lookups.
18
19 Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
20
21         * ltconfig.sh: Patch to libtool-1.2b to make --disable-static
22         work.
23
24 Sun Sep 20 02:09:44 1998  Josh MacDonald  <jmacd@axis.hip.berkeley.edu>
25
26         * glib.h: New function g_hash_table_foreach_remove is similar to
27         g_hash_table_foreach, but the callback's return value indicates
28         whether to remove the element (if TRUE) or not (if FALSE).  
29         Returns the number of elements deleted.
30
31 Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org>
32
33         * glib.h
34         * gstrfuncs.c: added g_memdup implementation
35
36 Fri Sep 18 18:46:14 1998  Tim Janik  <timj@gtk.org>
37
38         * glib.h:
39         * gdataset.c: make the datalists a safe type (not using a generic
40         gpointer) by expecting a GData* argument in the g_datalist functions.
41         provide g_dataset_foreach() and g_datalist_foreach() functions that
42         allow a GDataForeachFunc function to walk the data lists.
43         (g_dataset_destroy_internal): made this function truely reentrant (i.e.
44         can be called from within destroy notifiers as well).
45         the *_foreach functions are _not_ reentrant (unless all the other
46         dataset and datalist functions).
47
48 Fri Sep 18 03:41:20 1998  Tim Janik  <timj@gtk.org>
49
50         * gtree.c (g_tree_new): check for key_compare_func != NULL (reported
51         by Michal Kara).
52
53 Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org>
54
55         * config.h.in: removed from repository
56
57         * install-sh
58         * missing
59         * mkinstalldirs: updated to latest automake version
60
61 Thu Sep 17 06:36:25 1998  Tim Janik  <timj@gtk.org>
62
63         * glib.h:
64         * gdataset.c: implemented g_datalist_* along the lines of g_dataset,
65         but operates on an opaque gpointer *datalist; pointer, e.g. for the
66         implementation of GtkObject named data.
67         we cache a certain portion of the already freed data entries now, to
68         gain a slight performance improve with data reallocation.
69
70 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
71
72         * Makefile.am glib-config.in l*: Update to libtool-1.2b,
73         change library versioning scheme to drop LT_RELEASE
74         from the -l line, while keeping it in the soname.
75
76 Fri Sep 11 02:11:46 1998  Tim Janik  <timj@gtk.org>
77
78         * glib.h: explicitely include the prototypes for inline functions
79         to cure gcc warnings for -Wmissing-prototypes.
80
81 Wed Sep  9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org>
82
83         * configure.in: added -posix check for NeXTStep
84
85 Tue Sep  8 05:04:06 1998  Tim Janik  <timj@gtk.org>
86
87         * glib.h: abandon the use of ATEXIT(), we keep the fallback
88         macros for backwards compatibility. people ought to use g_atexit().
89
90         * gutils.c (g_atexit): new function to take over the implementation
91         of ATEXIT. this function is guarranteed to succeed, similar to
92         g_malloc().
93
94 Mon Sep  7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org>
95
96         * configure.in: comment the -std1 check and save LIBS properly
97
98 Mon Sep  7 07:53:21 1998  Tim Janik  <timj@gtk.org>
99
100         * configure.in: check for all three inline keywords individually.
101
102         * glib.h: inlining hassle. for compilers that don't allow the `inline'
103         keyword, mostly because of strict ANSI C compliance or dumbness, we try
104         to fall back to either `__inline__' or `__inline'. 
105         we define G_CAN_INLINE, if the compiler seems to be actually *capable*
106         to do function inlining, in which case inline function bodys do make
107         sense. we also define G_INLINE_FUNC to properly export the function
108         prototypes if no inlinig can be performed. we special case most of the
109         stuff, so inline functions can have a normal implementation by defining
110         G_INLINE_FUNC to extern and G_CAN_INLINE to 1.
111
112         * ltconfig: (compiler PIC flag test): special case linux for non
113         aout systems to honour lcc's position independant code (cases
114         "linux*aout)" and "linux*)" got added). (this needs to go into
115         libtool which does an advanced test, checking for __LCC__).
116
117         * autogen.sh: take $CC=lcc into account by invoking automake with
118         --include-deps so lcc isn't scared by gcc's auto-dependancy
119         generation code. care about $ACLOCAL_FLAGS. optionally feature
120         autoheader.
121
122         * minor fixups in other places to cure some of lcc's warnings.
123
124 Sun Sep  6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org>
125
126         * configure.in: added -std1 check for ANSI compliance (from gtk)
127
128 Sun Sep  6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org>
129
130         * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit
131
132 Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
133
134         * gutils.c (GLIB_INLINE): Define.
135         * glib.h (GLIB_INLINE): New define.
136         (g_bit_nth_msf): Use it.  Also, add prototype.
137         (g_bit_storage): Likewise.
138         (g_bit_storage): Likewise.
139
140 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
141
142         * glib.h: 
143         (g_chunk_new0): use g_mem_chunk_alloc0() to allocate the memchunk,
144         so the correct size of the memchunk is allocated with 0's and not
145         a memory portion of the size of the desired type.
146
147         * gmem.c: new function g_mem_chunk_alloc0() which will initialize
148         a memory area allocated with g_mem_chunk_alloc() with 0's.
149
150 Wed Sep  2 19:13:28 1998  Owen Taylor  <otaylor@redhat.com>
151
152         * garray.c glib.h (g_array_[ap/pre]pend_vals): make
153         data argument const.
154
155 Wed Aug 26 06:32:40 1998  Tim Janik  <timj@gtk.org>
156
157         * glib.h:
158         * gstrfuncs.c: new function g_strnfill() to return a new string
159         of specified length, filled with a specific character.
160
161 Tue Sep  1 23:46:31 1998  Josh MacDonald  <jmacd@axis.hip.berkeley.edu>
162
163         * testglib.c (main): Update the array tests.  Reduce the number of
164         iterations for the prepend test from 10000 to 100 since it is
165         O(n^2) and was taking longer than I would like to wait.
166
167         * garray.c: I've worked on the GArray interface, mostly.  It was
168         seriously broken before and I hate to do it, but this is going to
169         break some code.  It is important to do this now, because more and
170         more people are starting to use glib and the interface was both
171         broken and inconsistent.  First, rename the _truncate functions of
172         both the GArray and GPtrArray classes to _set_size, since this
173         function can also be used to extend the arrays.  GArray now
174         accepts two more initialization arguments: clear and element_size.
175         Instead of providing the type to each access function, the array
176         now stores the element size.  Clear, if set, causes the library to
177         zero element's memory as the array expands.  The major broken-ness
178         here was that array->len was in bytes, not elements.  Now, since
179         the array knows its element size, array->len is correct and I have
180         removed the g_array_length macro.  The only macro which now
181         accepts the type as an argument is g_array_index, which casts the
182         element to the right type--this interface does not change.  The
183         append and prepend functions simply need the types removed.
184         g_ptr_array_remove_index now returns the removed element.
185
186         * gprimes.c (g_spaced_primes_closest): Move this function out of
187         ghash.c and rename it from g_hash_closest_prime.  Fix the primes
188         so that they are actually prime (they weren't all -- isn't that
189         nice?).
190
191 Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org>
192
193         * glib.h:
194         * gstring.c:
195         * gstrfuncs.c:
196         (g_vsprintf): removed this function which was not publically
197         exported in glib.h. to export it, it should have been named
198         differently in the first place, since its semantics differ from
199         vsprintf(). apart from that, it was a possible cause for
200         problems since it worked on a previously allocated memory area and
201         was used in a lot places of glib. exporting it would have been a
202         guararant for problems with threaded programs.
203         (g_printf_string_upper_bound): exported this function to return
204         a string size, guarranteed to be big enough to hold the fully
205         expanded format+args string. added 'q', 'L' and 'll' flag handling.
206         in fact, the newly allocated area is in most cases much bigger than
207         required.
208         (g_strdup_vprintf()): new function returning a newly allocated string
209         containing the contents of *format and associated args (size is
210         calculated with g_printf_string_upper_bound()).
211         (g_strdup_printf): new function which wraps g_strdup_vprintf().
212
213         * configure.in: check for va_copy() or __va_copy() alternatively.
214         check whether va_lists can be copyied by value.
215
216         * glib.h: provide a definition for G_VA_COPY.
217
218         * glib.h:
219         * gmessages.c:
220         (g_logv):
221         (g_vsnprintf):
222         pass va_lists by value, not by reference, since this causes problems
223         on platforms that implement va_list as as arrays. internaly, use
224         G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second
225         va_list variable, if multiple passes are required. changed all
226         callers.
227
228         * glib.h:
229         * gerror.h:
230         renamed g_debug() to g_on_error_query(), cleaned up a bit.
231         renamed g_stack_trace() to g_on_error_stack_trace() since both
232         functions cluttered different namespaces.
233         there is an appropriate comment in glib.h now that explains the
234         unix and gdb specific dependencies of both functions.
235         removed g_attach_process().
236         g_on_error_stack_trace() should probably be handled with caution,
237         i've seem several different linux versions (2.0.x) become unstable
238         after invokation of this function.
239
240 1998-08-18: Elliot Lee <sopwith@redhat.com>
241
242         . In gmem.c, add the ability to exclude memory chunks from the
243           memory profiling information.
244
245 Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org>
246
247         * glib.h
248         * gstrfuncs.c: added g_strndup
249
250 Tue Aug 18 04:40:17 1998  Tim Janik  <timj@gtk.org>
251
252         * glib.h:
253         * gmessages.c: new function g_log_set_always_fatal() to set an
254         additional fatal_mask for log levels that are considered to be fatal
255         globally (required by gtk). since this mask is not domain-associated,
256         it is restricted to the log levels, introduced by glib itself.
257
258         * gmem.c:
259         * grel.c:
260         * gtree.c (g_tree_node_check):
261         don't use g_print() calls for informational/debugging output,
262         but log all this stuff through g_log() with G_LOG_LEVEL_INFO.
263         libraries shouldn't use printf(), g_print() or g_printerr() at all.
264
265 Tue Aug 18 02:46:44 1998  Tim Janik  <timj@gtk.org>
266
267
268         * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make
269         `inline' a noop, since strict ANSI rules don't permit `inline'.
270
271 Mon Aug 17 15:21:42 1998  Tim Janik  <timj@gtk.org>
272
273         * grel.c: made private functions static.
274
275 Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
276
277         * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to
278           EXTRA_DIST
279         * glib.spec: version = 1.1.3
280
281 Mon Aug 17 01:46:14 1998  Tim Janik  <timj@gtk.org>
282
283         * glib.m4: feature an extra MODULES parameter, so glib-config can
284         be invoked with the "gmodule" argument.
285
286         * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all
287         g_return*_if_fail statements, and made them issue a message
288         like "assertion `%s' failed".
289
290         * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to
291         g_log_find_domain.
292
293 Sun Aug 16 20:28:27 1998  Tim Janik  <timj@gtk.org>
294
295         * version bump to 1.1.3, binary age 0, interface age 0.
296
297         * glib.h: be nice to platforms that don't have gint64 and don't
298         issue #warning on every compilation. since glib doesn't require
299         gint64 itself, packages that need gint64 should test for this
300         themselves.
301
302         * glib.h:
303         * gutils.c: added a new function g_vsnprintf().
304
305 Sun Aug 16 Elliot Lee
306
307         glib.h: #error out if we don't recognize the SIZEOF_VOID_P
308                 #warning if no gint64
309
310 Fri Aug 14 16:41:53 1998  Tim Janik  <timj@gtk.org>
311
312         * glib.h: added static inline functions for bit mask tests:
313         g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage.
314
315 Fri Aug 13 14:23:37 1998  Tim Janik  <timj@gtk.org>
316
317         * glib.h:
318         * gmessages.c:
319         revised the message handling system, which is now based on a new
320         mechanism g_log*. most of the assertment macros got adapted to
321         feature the new g_log() call with an additional specification of
322         the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN
323         is undefined upon the includion of glib.h, it'll be defined with a
324         value of (NULL) and thus preserves the original bahaviour for
325         warning and error messages. the message handler setting functions
326         for g_warning, g_error and g_message are only provided for backwards
327         compatibility and might get removed somewhen.
328
329         * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain
330         to "GLib" upon compilation. we currently have to add this definition
331         to the DEFS variable.
332         * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start
333         of this file currently, since automake doesn't support per target
334         _CFLAGS yet.
335
336         * glib.h: changed some gints to gbooleans, made a few const corrections,
337         removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some
338         in other required places.
339
340         * gnode.c:
341         (g_node_prepend):
342         (g_node_insert_before):
343         (g_node_insert):
344         (g_node_append_data):
345         (g_node_prepend_data):
346         (g_node_insert_data_before):
347         (g_node_insert_data):
348         (g_node_append):
349         return (node), so these macros/functions can be usefully chained with
350         g_node_new().
351
352 Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org>
353
354         * glib.h: it's GTime now, and it's back!
355
356 Mon Aug 10 02:17:19 1998  Tim Janik  <timj@gtk.org>
357
358         * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build
359         last. we do this by making all-recursive-am depend on all-am.
360
361 Sun Aug  9 15:56:11 1998  Tim Janik  <timj@gtk.org>
362
363         * configure.in: added GModule checks. generate files in gmodule/.
364         * glib-config.in: support library specifications `glib' and `gmodule'.
365         * Makefile.am: feature the gmodule/ subdir.
366
367 Wed Aug  5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
368
369         * Released GLib 1.1.2
370
371 Wed Aug 05 01:15:36 1998  George Lebl  <jirka@5z.com>
372
373         * testglib.c: fix 64-bitness in g_prints, sizeof doesn't
374           seem to return int so I cast it for printing, probably
375           just cosmetic
376
377 Tue Aug  4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org>
378
379         * Released GLib 1.1.1
380
381 Tue Aug  4 15:17:54 1998  Tim Janik  <timj@gtk.org>
382
383         * configure.in: version bump to 1.1.1, binary age 1, interface age 0.
384         * NEWS: updates.
385         * README: updates.
386         * INSTALL: updates and fixes.
387         * COPYING: include the GNU LGPL, rather than shipping an empty file.
388         * AUTHORS: listed original authors here, and added people who made
389         significant improvements to glib.
390
391         * glib.h:
392         * gutils.c: implement g_get_current_dir() which returns a newly
393         allocated string, instead of a g_getcwd() variant that operates
394         on a static buffer.
395         export glib_interface_age and glib_binary_age.
396         as a convenience, macro definitions have been added for
397         g_node_insert_data, g_node_insert_data_before, g_node_append_data and
398         g_node_prepend_data.
399
400         * testglib.c: minor cleanups, print current dir.
401
402 Mon Aug  3 16:02:26 1998  Tim Janik  <timj@gtk.org>
403
404         * glib.h:
405         * gnode.c: change order of gpointer data; field in struct _GNode to
406         be partly binary compatible with GList and GSList.
407
408 1998-08-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
409
410         * garray.c (g_ptr_array_remove_index): bugfix: index check for
411         array has been wrong.
412
413 Fri Jul 31 22:17:05 1998  Tim Janik  <timj@gtk.org>
414
415         * testglib.c (g_node_test): added a GNode test.
416
417 Fri Jul 31 09:08:16 1998  Tim Janik  <timj@gtk.org>
418
419         * Makefile.am: compile gnode.c.
420
421         * glib.h:
422         * gnode.c: added implementation of n-way trees.
423
424         * gtree.c (g_tree_traverse): added a warning to the switch() statement
425         which says that G_LEVEL_ORDER is not implemented.
426
427 Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
428
429         * Released GLib 1.1.0
430
431 Mon Jul 27 01:02:27 1998  Tim Janik  <timj@gtk.org>
432
433         * glib.h: #if 0'ed out the GTime definition, until it is definitively
434         needed. #if 0'ed out the g_getcwd() version, because it is the wrong
435         implementation.
436
437 Sat Jul 25 16:09:00 1998  Mark Crichton <crichton@expert.cc.purdue.edu>
438
439         * glib.h: gtime changed to g_time.  gtime is used in
440         /usr/include/time.h in NetBSD, causing multiple headaches.
441         If this isn't the right way of fixing it.... ;)
442
443 Thu Jul 23 00:29:14 1998  Tim Janik  <timj@gtk.org>
444
445         * glib.h:
446         * gscanner.c: new functions to make a scanner scope sensitive wrt
447         symbol lookups.
448         g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
449         g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and
450         g_scanner_set_scope.
451         g_scanner_add_symbol, g_scanner_remove_symbol and
452         g_scanner_foreach_symbol are now aliases for scope 0.
453
454 Mon Jul 20 23:05:34 1998  George Lebl  <jirka@5z.com>
455
456         * glib.h: typo fixed for alphas for gint64
457
458 Tue Jul 14 09:05:18 1998  Tim Janik  <timj@gtk.org>
459
460         * glib.h:
461         * gutils.c: new fuction g_dirname() which returns a newlly
462         allocated string.
463
464 Fri Jul 10 06:33:43 1998  Tim Janik  <timj@gtk.org>
465
466         * glib.h:
467         * gutils.h: added a bunch of utility/wrapper functions:
468         g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
469         g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
470
471         * gutils.c: removed all g_str* functions.
472         * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this
473         place. this file shall never include <unistd.h> to avoid clashes for
474         some of the g_str* functions on some OSes.
475
476 Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org>
477
478         * glib.h:
479         * ghash.c: Renamed g_hash_table_lookup_full to
480         g_hash_table_lookup_extended to conform with naming conventions.
481
482 Tue Jul  7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org>
483
484         * glib.h:
485         * ghash.c: Generic cleanup, added a function:
486         (g_hash_table_lookup_full): Return whether the lookup succeeded,
487         and also retrieve the key and value. This allows one to
488         distinguish between failed lookup and finding a NULL, and also
489         allows one to free a key in the hash.
490
491 Mon Jul  6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org>
492
493         * ltconfig: fix for properly detecting shared lib support on
494         SunPro cc (taken from libtool 1.2.a)
495
496 Sat Jul  4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org>
497
498         * glib.h: added g_array_length
499
500 Tue Jun 30 11:58:25 1998  Tim Janik  <timj@gtk.org>
501
502         * gscanner.c (g_scanner_unexp_token): take symbol_2_token into
503         account. react on valid/invalid string pairs.
504
505 Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org>
506
507         * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't
508         ours. ;)
509
510 Fri Jun 19 03:11:02 1998  Tim Janik  <timj@gtk.org>
511
512         * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and
513         g_dataset_retrive_key in favour of GQuarks.
514         a GQuark is an numeric id wich is associated with a certain string.
515         (g_quark_try_string): try to get the quark associated with this string,
516         if the lookup failed return 0.
517         (g_quark_from_string): get the associated quark for a string, if there
518         isn't currently a GQuark associated with this string, then allocate a
519         new quark and return that.
520         (g_quark_from_static_string): like the above function, but the string
521         isn't strdup()ed to save memory.
522         (g_quark_to_string): get the string that is associated with a certain
523         GQuark.
524
525         * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function
526         _after_ the new data has been setup.
527
528 Thu Jun 18 02:35:21 1998  Owen Taylor  <otaylor@gtk.org>
529
530         * glib.h: Changed messages for g_return_[val]_if_fail to
531         be somewhat more clear: assertion "blah" failed.
532
533 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
534
535         * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler
536         warnings.
537
538         * grel.c: #include <string.h>
539
540 Fri Jun 12 15:39:06 1998  Tim Janik  <timj@gtk.org>
541
542         * glib.h (GScanner): cleanups of the structure fields (binary
543         incompatible).
544
545 Fri Jun 12 00:39:28 1998  Josh MacDonald  <jmacd@icw.EECS.Berkeley.EDU>
546
547         * glib.h: add new hash and equal functions g_int_*.  complement
548         g_direct_hash with g_direct_equal.
549
550         * grel.c: new file, GRelations implement tuples of N-N mappings.
551         A comment in glib.h briefly describes the interface.
552
553         * ghash.c: new function, g_hash_table_size
554
555         * glib.h: new typedefs, gsize, gssize, gtime.
556
557         * garray.c: new functions implementing a simplified GArray.  This
558         GPtrArray is an array of gpointers and has functions to add and
559         remove elements, much like java.lang.Vector.
560
561         * garray.c: new functions for the single-byte special case of
562         GArray.  The functions g_byte_array* operate on arrays of bytes.
563         Internally, a GArray is used.
564
565         * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation...
566
567 1998-06-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
568
569         * gdataset.c: #include <string.h>
570
571 Thu Jun 11 04:15:31 1998  Tim Janik  <timj@gtk.org>
572
573         * glib.h:
574         * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc
575         sizes, to take up less space on initial allocation.
576
577 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
578
579         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
580         the version from which glib's libtool forked.  Needed for people
581         who use post-1.2 alphas of libtool.
582         * configure.in (enable_mem_check, enable_mem_profile): Replace
583         `echo -n' with AC_MSG_CHECKING.
584         (fd_set): Explain test for `fd_set' better.
585
586 Wed Jun 10 19:29:51 1998  Owen Taylor  <otaylor@gtk.org>
587
588         * Makefile.am glib.m4 configure.in:
589
590         Moved out from GTK+; added AM_PATH_GLIB macro.
591
592 Wed Jun 10 12:56:07 1998  Owen Taylor  <otaylor@gtk.org>
593
594         * glib.h: renamed g_const_pointer => gconstpointer
595
596 Tue Jun  9 17:47:33 1998  Owen Taylor  <otaylor@gtk.org>
597
598         * glib.h: Remove #error - HP/UX.
599
600 Sat May 23 19:00:01 1998  Owen Taylor  <otaylor@gtk.org>
601   [ Combination of:
602      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
603      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
604
605         * glib.h ghash.c gstring.c gdataset.c gutils.c:
606         - Added new typedef g_const_pointer; expunged all incorrect
607           uses of 'const gpointer'.
608         - Fixed up warnings that that created,
609         - Changed GHashFunc and GCompareFunc to take g_const_pointer
610           arguments. (Necessary, but will cause warnings in existing
611           code until fixed)
612         - Added other new const in harmless positions.
613
614 Mon Jun  8 01:06:47 1998  Tim Janik  <timj@gtk.org>
615
616         * glib.h: added enum-helper macros for code generation.
617         added G_BREAKPOINT().
618
619 Sat Jun  6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
620
621         * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird
622         problems
623
624 Wed Jun  3 06:19:42 1998  Tim Janik  <timj@gtk.org>
625
626         * glib.h (g_chunk_new0): convenience macro, for allocating small chunks
627         like g_chunk_new() with additional 0 initialization.
628
629 Mon Jun  1 04:43:27 1998  Tim Janik  <timj@gtk.org>
630
631         * ghash.c (g_hash_table_insert): wrote a comment describing why
632         a hash node's key should not also get replaced when overriding
633         previous entries.
634
635 Tue May 26 18:30:06 1998  Tim Janik  <timj@gtk.org>
636
637         * glib.h (g_string_sized_new): new function to controll the preallocated
638         size of a GString.
639
640         * glib.h (g_strreversed): new function to reverse a string.
641
642 Mon May 18 22:14:39 1998  Owen Taylor  <otaylor@gtk.org>
643 (Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
644
645         * gutils.c: Restored a missing prototype for g_vsprintf.
646
647 Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org>
648
649         * glib.h: conditionally define NULL, FALSE and TRUE.
650         (g_mem_chunk_create): new convenience macro as a short hand for
651         g_mem_chunk_new().
652         (g_chunk_free): new convenience macro to be consistent with g_chunk_new.
653
654 Tue, 19 May 1998 09:00:02 +0200  Â§Paolo Molaro <lupus@debian.org>
655
656         * gcompletion.c: generic functions for com<TAB>pletion...
657
658 Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org>
659
660         * gscanner.c (g_scanner_unexp_token): provide usefull default
661         specifications for identifier_spec and symbol_spec.
662
663         * glib.h: new functions g_slist_nth_data and g_list_nth_data to return
664         the data of the nth element in the list.
665
666 Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org>
667
668         * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args)
669         that for some reason didn't produce a compiler wrning on my machine
670         (is va_end undefined for i386?).
671
672 Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz>
673
674         * gscanner.c: replaced some snprintf with g_snprintf
675
676 Fri May 15 00:56:59 1998  Tim Janik  <timj@gtk.org>
677
678         * glib.h: further support for gcc function attributes: G_GNUC_FORMAT,
679         G_GNUC_NORETURN and G_GNUC_CONST.
680
681         * gscanner.c (g_scanner_stat_mode): changed stat() to lstat().
682         (g_scanner_msg_handler): "\n" at end of line!
683         (g_scanner_foreach_symbol): new function to iterate over the symbol
684         table (GScanner does value-wrapping).
685
686 Thu May 14 04:14:12 1998  Tim Janik  <timj@gtk.org>
687
688         * glib.h: typedef gint gboolean;
689         this is needed to provide portability with big-endian platforms (e.g.
690         try sizeof(bool) for c++ on big-endians - it's 4).
691         this is also needed to maintain some_union.d_gint==some_union.d_gboolean.
692         plus, gint to gboolean casts and vice versa need to be possible without
693         loss.
694
695 Tue May 12 19:22:58 1998  Owen Taylor  <otaylor@gtk.org>
696
697         * glib/glib.h: Added macros G[U]INT_TO_POINTER() and
698         GPOINTER_TO_[U]INT for storing small integers integers
699         inside pointers.
700
701         * glib/testglib.c: Print sizeof() results
702         as g_print("%ld", (glong)sizeof(foo)), to deal with
703         size_t being long on Alpha's.
704
705 Tue May 12 16:54:15 1998  Owen Taylor  <otaylor@gtk.org>
706         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
707
708         * glib.h gstring.c gmessages.c: Added some missing
709         const to arguments.
710
711         * gutils.c (g_strsignal.c): Added missing return statements.
712
713 Mon May 11 21:11:54 1998  Owen Taylor  <otaylor@gtk.org>
714
715         * gutils.c gmessages.c: Moved g_error, g_warning, g_message and
716         g_print from gutils.c to new file gmessages.c, to avoid having to
717         include <unistd.h> in gutils.c which was causing problems for the
718         g_strsignal implementation on FreeBSD boxes.
719
720 Mon May 11 09:53:43 1998  Tim Janik  <timj@gtk.org>
721
722         * configure.in: preserve automake CFLAGS.
723
724         * Makefile.am: fully rename the created library to libglib-1.1.la.
725         this means we need to change certain portions of the Makefile.am on
726         major/minor version bumps.
727
728         * ltmain.sh: the -release option is not required anymore.
729
730         * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to
731         avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX,
732         MIN, ABS and CLAMP, these macros might be screwed from other headers.
733
734 Mon May 11 01:44:10 1998  Tim Janik  <timj@gtk.org>
735
736         * gdataset.c: new file, gdatasets implement the object data
737         mechanism from GtkObject. a generic data pointer is associated with
738         a certain location and a key id.
739
740 Sat May  9 20:08:12 1998  Owen Taylor  <otaylor@gtk.org>
741
742         * glib/gmem.c: Experimentally restore GMemChunk
743         to its primeval state - where mem areas are
744         freed incrementally instead of searching the tree
745         every time a mem area is completely empty. Also,
746         always keep one mem chunk around. (Reduced calls
747         to malloc() a lot, but doesn't really improve
748         performance significiantly)
749
750 Thu May  7 08:17:28 1998  Tim Janik  <timj@gtk.org>
751
752         * glib.h (G_GNUC_PRINTF):
753         (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument
754         checking of gcc.
755
756         * gstring.c: const corrections, string!=NULL checks at function entry.
757         (g_string_down): new function for tolower(3) conversion.
758         (g_string_up): new function for toupper(3) conversion.
759
760         * gutils.c: const corrections.
761         (g_strdown): g_string_down() counterpart.
762         (g_strup): g_string_up() counterpart.
763
764         * gscanner.c (g_scanner_unexp_token):
765         (g_scanner_error):
766         (g_scanner_warn): new functions to let a scanner put out warnings
767         or errors, especially to react on unexpected tokens.
768
769         * gslist.c:
770         (g_slist_index): find out about about the position of a
771         certain data pointer.
772         (g_slist_position): find out about about the position of a
773         certain node.
774
775         * glist.c:
776         (g_list_index): find out about about the position of a
777         certain data pointer.
778
779 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
780
781         * ltmain.sh: added a new commandline flag -postfix similar to -release,
782         but will immediately change the library name.
783
784         * Makefile.am: specify -postfix and -version-info
785
786         * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and
787         GLIB_BINARY_AGE. calculate LT_* variables for libtool.
788
789 Fri May  1 16:36:08 1998  Owen Taylor  <otaylor@gtk.org>
790
791         * gutils.c: (g_strcasecmp). Check for isupper before
792         taking tolower, and account for macroized tolower.
793
794         * gutils.c (g_error): Check for recursion.
795
796 1998-04-27  Elliot Lee  <sopwith@cuc.ml.org>
797
798         * glist.c (g_list_position): New function to find the position of
799         a link in a list - should be the inverse of g_list_nth(), but
800         haven't tested it so poof.
801
802 Thu Apr 30 21:41:30 1998  Owen Taylor  <otaylor@gtk.org>
803
804         * gstring.c : Check arguments more carefully,
805         (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
806
807 Tue Apr  7 19:36:48 1998  Owen Taylor  <owt1@cornell.edu>
808
809         * gutils.c (g_direct_compare): Removed, because that's what
810         a NULL comparison function means. And it wasn't 64 bit safe.
811
812 Mon Apr  6 18:43:25 1998  Tim Janik  <timj@gtk.org>
813
814         * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats
815         of the format ".xxx" to be parsed as "xxx".
816
817 Fri Apr  3 20:36:35 1998  Owen Taylor  <owt1@cornell.edu>
818
819         * gutils.c (g_parse_debug_string): Make debug string
820         parsine case-insensitive
821
822 Fri Apr  3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org>
823
824         * gstring.c: corrected possible overrun when inserting into
825         GStrings (thanks Elrond)
826
827 Fri Apr  3 18:05:45 1998  Owen Taylor  <owt1@cornell.edu>
828
829         * testglib.c: Removed literal german from strings
830         to appease SGI compiler.
831
832 Thu Mar 26 20:47:21 1998  Owen Taylor  <owt1@cornell.edu>
833
834         * configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
835         use on_exit if atexit not found in definition of ATEXIT.
836
837 Wed Mar 25 15:23:37 1998  Owen Taylor  <owt1@cornell.edu>
838
839         * Makefile.am: Switched glibconfig.h rule from HEADERS
840         to DATA, so that it is not added to DISTFILES
841
842 Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org>
843
844         * garray.c: g_rarray_truncate length done correctly
845
846 Sun Mar 15 07:13:34 1998  Tim Janik  <timj@gimp.org>
847
848         * gutils.c: changed *_handler variables to be named glib_*_handler,
849         so you can easily access them from gdb.
850
851 Sat Mar 14 17:47:43 1998  Owen Taylor  <owt1@cornell.edu>
852
853         * Makefile.am: Don't refer to current directory as $(top_builddir)
854         to avoid confusing non-gmakes
855
856 Sat Mar 14 01:37:35 1998  Owen Taylor  <owt1@cornell.edu>
857
858         * Makefile.am (configincludedir): Moved glibconfig.h to
859           $(pkglibdir)/include
860
861 Tue Mar 10 02:03:12 1998  Tim Janik  <timj@gimp.org>
862
863         * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to
864         free symbol table entries upon destruction
865         (gtk-gronlund-980309-0.patch.gz).
866
867 Mon Mar  9 15:02:21 1998  Tim Janik  <timj@gimp.org>
868
869         * glib.h: changed *_length functions to return guint.
870         changed *_nth functions to take guint as argument.
871
872         * glist.c: adapted g_list_length and g_list_length.
873
874         * gslist.c: adapted g_slist_length and g_slist_length.
875
876 Mon Mar  2 17:51:18 1998  Owen Taylor  <owt1@cornell.edu>
877
878         * glib.h gutils.c : changed g_strcasecmp
879           to take gchar* not guchar*
880
881         * testglib.c: Remove trailing ; after functions
882
883 Sun Mar  1 19:04:40 1998  Owen Taylor  <owt1@cornell.edu>
884
885         * glib.h gstring.c: Added g_string_insert[_c]()
886           and g_string_erase().
887
888           From: Stefan Wille  <1wille@vsys1.informatik.uni-hamburg.de>
889
890 Mon Feb 16 23:05:06 1998  Owen Taylor  <owt1@cornell.edu>
891
892         * glist.c (g_list_insert_sorted): Changed function
893           so elements are always inserted, even if they compare
894           equal with another.
895
896 Thu Feb 12 22:48:11 1998  Owen Taylor  <owt1@cornell.edu>
897
898         * gstring.c glib.h: removed deprecated g_string_equal
899           and g_string_hash.
900
901 Tue Feb 10 13:04:36 1998  Owen Taylor  <owt1@cornell.edu>
902
903         * configure.in: Add check to see if the C library's
904           iswalnum can actually be used. (Not true for
905           Linux libc-5.4.38)
906
907 Sat Feb  7 11:48:09 1998  Owen Taylor  <owt1@cornell.edu>
908
909         * gstring.c gutils.c: added some additional consts in
910           appropriate places to remove a warning
911
912 Sat Feb  7 11:15:54 1998  Owen Taylor  <owt1@cornell.edu>
913
914         * gutils.c: include <ctype.h> for tolower()
915
916 Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org>
917
918         * added and autoconfigured in a new utility function
919         g_strcasecmp
920
921 Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org>
922
923         * glist.c
924         * gslist.c
925         * testglib.c: the sort functions compared backwards. Fixed
926         * glib.h: list iterator macros now check for NULL pointers
927
928 Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org>
929
930         * gstring.c: g_string_prepend and g_string_prepend_c had
931         interchanged src and dest parameters for g_memmove. Fixed.
932
933 Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org>
934
935         * gslist.c: fixed a really, really lame error. g_slist_insert
936         didn't hook the data in! Reworked the routine to reflect the
937         functionality of g_list
938
939 Wed Jan 21 01:13:25 1998  Tim Janik  <timj@psynet.net>
940
941         * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>)
942           to add function g_snprintf.
943         * configure.in (AC_CHECK_FUNCS): Check for vsnprintf.
944         * glib.h: Add prototype for g_snprintf.
945         * glibconfig.h.in: Add HAVE_VSNPRINTF.
946         * gutils.c (g_snprintf): new function.
947
948 Sat Jan 17 23:52:40 1998  Owen Taylor  <owt1@cornell.edu>
949
950         * gstring.{c,h} gscanner.c:
951            renamed g_string_equal => g_str_equal
952            renamed g_string_hash => g_str_hash
953           And const corrected. Old functions left in for now.
954
955 Fri Jan  9 20:03:46 1998  Tim Janik  <timj@psynet.net>
956
957         * gutils.c (g_strerror): changed message for EAGAIN from
958         "no more processes" to "try again" since EAGAIN is used with
959         functions else than fork().
960
961         * gscanner.c (g_scanner_get_token_ll): use strtol() instead of
962         strtoul() to avoid conflicts with solaris.
963
964         * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog
965         into this file.
966
967 Wed Jan  7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org>
968
969         * glib.h:
970         * glist.c:
971         * gslist.c:
972         * testglib.c: Added g_[s]list_insert_sorted function
973         and appropriate tests in testglib
974
975 Sat Jan  3 20:23:25 1998  Owen Taylor  <owt1@cornell.edu>
976
977         * glib.h: Changed guint32 -> guint for bitfields.
978         (Bitfields must be int or unsigned int?)
979
980 Fri Jan  2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
981
982         * glib_pre1.h:
983         * glib_pre2.h:
984         * glib.h: reverted glibconfig.h and glib.h files back to the
985         way they were before my ugly hack.
986
987         * gscanner.c: removed inlines from clist and gscanner
988
989 Tue Dec 23 02:49:51 1997  Tim Janik  <timj@psynet.net>
990
991         * gscanner.c: new file for GScanner: Flexible lexical scanner for
992         general purpose.
993         * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod.
994         gutils.c (g_strconcat): new function for string concatenation of NULL
995         terminated parameter list.
996         (g_strtod): new function to perform best string to double conversion
997         with or without consideration of the current locale.
998
999 Mon Dec 15 19:33:58 1997  Tim Janik  <timj@psynet.net>
1000
1001         * glist.c: minor optimizations:
1002         (g_list_append): `if' optimized for common code path, commented out
1003         unneccessary `assert', saved one variable assignment.
1004         (g_list_prepend): saved two (conditioned) variable assignment.
1005         (g_list_insert): saved one  (conditioned) variable assignment,
1006         saved one variable assignment.
1007         (g_list_remove): `if' optimized for common code path, saved two
1008         variable assignments by using `g_list_free_1' (which is even
1009         faster) instead of `g_list_free'.
1010         (g_list_reverse): saved allocation of one variable, saved one
1011         variable assignment.
1012
1013 Wed Dec 10 23:27:20 1997  Tim Janik  <timj@psynet.net>
1014
1015         * glib_pre1.h:
1016         * glib_pre2.h:
1017         * glib.h: this file now gets concatenated by makeglib_h from
1018         glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
1019         created by configure (done by Jay Painter).
1020
1021         * glib_pre2.h: the g_assert*() and g_return_*_fail() macros
1022         are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
1023         when used within if (...) g_macro(); else ... conditionals.
1024
1025 Tue Dec 17 13:14:07 1996  Peter Mattis  <pmattis@charnley.HIP.Berkeley.EDU>
1026
1027         * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
1028         not call 'g_string' but to simply stringify the
1029         expression. Calling 'g_string' causes the expression to be
1030         expanded which is undesired.
1031
1032 Sun Dec  1 01:30:48 1996  Peter Mattis  <pmattis@charnley.HIP.Berkeley.EDU>
1033
1034         * Started ChangeLog