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