cosmetics
[tomato.git] / release / src / router / glib / NEWS
blob0ab35d5ed70b2212695aab87b551fedc67da51b6
1 Overview of Changes in GLib 1.2.10:
3 * Fix compilation problem on some compilers where 
4   g_log_domain_gmodule was not being declared properly.
6 Overview of Changes in GLib 1.2.9:
8 * Move include files into a glib-1-2/ subdir to support parallel
9   installation with GLib-2.0. If you are installing from source
10   on top of a previous version, you should to remove $(includedir)/glib.h
11   $(includedir)/module.h manually before installing the new version.
12 * Fix warnings about varargs macros with recent GCC versions
13 * Miscellaneous important bug fixes 
14   (g_strncasecmp, some g_printf_string_upper_bound fixes)
15 * Addition of .pc files
17 Overview of Changes in GLib 1.2.8:
19 * GArray zero initialization bug fixed
20 * Fix for upper bound calculation of formatted strings
21 * Improved GCC detection
22 * AIX dynamic modules fix to retrive symbols from shared libraries
23   for the main program.
24 * Miscellaneous other minor bug fixes
26 Overview of Changes in GLib 1.2.7:
28 * Threadsafety fixes to quarked data lists.
29 * Better getpwuid_r() checks for newer AIXens.
30 * Locale fix to g_strtod().
31 * Timer fixups to the main loop and the timer functions.
32 * Upgrade to libtool 1.3.4.
34 Overview of Changes in GLib 1.2.6:
36 * One very small automake fix.
38 Overview of Changes in GLib 1.2.5:
40 * Fixes to g_mem_chunk_*  (also no more 65536 bytes restriction)
41 * Better libtool 1.3.3 usage
43 Overview of Changes in GLib 1.2.4:
45 * Upgrade to libtool 1.3.3.
46 * Minor portability fixes.
48 Overview of Changes in GLib 1.2.3:
50 * Minor fixes.
52 Overview of Changes in GLib 1.2.2:
54 * Minor fixes.
56 Overview of Changes in GLib 1.2.1:
58 * g_realloc() fix for SunOS (please report further problems).
59 * Continued the never ending fix vendetta regarding getpwuid(),
60   this time AIX has been the culprit.
61 * Upgrade to libtool 1.2f
62 * Miscellaneous other buglets fixed.
64 What's new in GLib 1.2.0 (since GLib 1.0.x):
66 * GLib is distributed seperatedly from Gtk+
67 * Win32 Portability
68 * Threading support
69 * GModule mechanism (implemented in an extra library) which wraps dynamic
70   object code loading facilities in a portable manner
71 * GIOChannel structure to encapsulate the IPC mechanism
72 * GQuarks and datasets
73 * GRelations for n-way mapping of certain data
74 * An n-way tree implementation
75 * GDate functionality for calendar date manipulations
76 * GAllocator type and associated functions
77 * Added generic callback maintenance functions (ghook)
78 * Generic functions for TAB completions
79 * Endian defines (G_*_ENDIAN)
80 * g_log() mechanism for logging of messages at different log levels
81 * Generic main-loop mechanism
82 * New glib-config helper script
83 * Many more API extensions
85 Overview of Changes in GLib 1.1.16:
87 * Allocate smaller pools of memory for glists, gslists, gnodes
88 * Bug Fixes
90 Overview of Changes in GLib 1.1.15:
92 * HPUX 11 thread system detection should now work
93 * Release the main loop lock around calls to prepare() and
94   check() so it is not held over user code
95 * A few Win32 fixups
97 Overview of Changes in GLib 1.1.14:
99 * Check for dlsym() in system libraries and -dl
100 * FreeBSD portability fixes
101 * Random bug fixes and autoconf/automake changes
103 Overview of Changes in GLib 1.1.13:
105 * Removed alloca() based function and macro variants again.
106 * Improved thread related configure tests.
107 * GSource destruction fixups.
108 * Fixed up idle function removal based on user_data pointer.
109 * Advanced Win32 portability.
110 * Enforced GSource's check(), prepare() and dispatch() constrains,
111   loop recursions may only happen from dispatch(), and check() as well
112   as prepare() are called while the main_loop lock is being held.
113 * GLib development now requires GNU autoconf 2.13, GNU automake 1.4
114   and GNU libtool 1.2d.
115 * Lots of random portability and bug fixes.
117 Overview of Changes in GLib 1.1.12:
119 * Added alloca functions/macros: g_strdup_a, g_strconcat3_a, g_alloca,
120   g_new_a, g_new0_a
121 * New tests structure.  Type 'make check' on your system to run them.
122 * Avoid unnecessary extra hook referencing in g_hook_list_marshal
124 Overview of Changes in GLib 1.1.11:
126 * provide defaults for POLL sysdefs
127 * g_main_is_running: new function to check whether a main loop has been quitted
128 * a few other enhancement/fixes
130 Overview of Changes in GLib 1.1.9:
132 * Check for pthread_attr_init in all cases, Digital Unix 4 requires this
133 * For G_LOCK_DECLARE_*, if !G_THREADS_ENABLED, eat trailing semicolon better
134 * Changed g_main_poll_(add|remove) to g_main_(add|remove)_poll
136 Overview of Changes in GLib 1.1.8:
138 * Added threading support
139   - The ability to specify a set of functions to be used for
140     locking at runtime.
141   - Default implementations of locking functions for pthreads,
142     Solaris threads, and (experimentally) NSPR.
143   - All static variables should now properly locked.
144   - Enhancements to the generic main-loop mechanism to be thread-safe.
145     (It is used for the main-loop in GTK+ as of GTK+-1.1.8)
146 * Portability fixes.
148 Overview of Changes in GLib 1.1.7:
150 * Removed multiple define from glibconfig.h
152 Overview of Changes in GLib 1.1.6:
154 * New GDate functionality for calendar date manipulations (g_date_*)
155 * New GAllocator type and assocated functions
156 * New functions g_slist_copy and g_list_copy to duplicate a list with all
157   its data pointers.
158 * New function g_array_insert_vals and new macro g_array_insert_val to
159   insert elements at an arbitrary index
160 * GAllocators used for glist, gslist, gnode node allocations
161 * Incremental freezing in ghash
162 * New function g_hook_list_marshal_check to eventually destroy hooks after
163   they got marshalled
164 * Revised GIOChannel to provide generic virtual-function based interface
165 * Added generic main-loop abstraction
166 * Removed GListAllocator type and its g_*_allocator_*() function variants
167 * Bug fixes
169 Overview of Changes in GLib 1.1.5:
171 * Win32 portability
172 * GIOChannel structure to encapsulate the IPC mechanism 
173 * Reimplemented endian stuff, using inline asm for x86
174 * New functions:
175   - g_strescape: escapes backslashes
176   - g_path_is_absolute and g_path_skip_root
177   - g_getenv: expands environment variables that contain references 
178     to other environment variables
179   - g_scanner_sync_file_offset: rewind the filedescriptor to the current
180     buffer position and blow the file read ahead buffer
181   - g_array_remove_index: remove an entry, preserving the order
182   - g_array_remove_index_fast: remove an entry, order might be distorted
183   - g_ptr_array_remove: remove an entry, preserving the order 
184   - g_ptr_array_remove_fast: remove an entry, order might be distorted
185   - g_byte_array_remove_index: wrapper for g_array_remove_index
186   - g_byte_array_remove_index_fast: wrapper for g_array_remove_index_fast
187   - g_strncasecmp: modeled closely after g_strcasecmp
188   - g_list_sort, g_slist_sort: to merge sort GLists and GSLists
189 * New macros:
190   - G_DIR_SEPARATOR, G_DIR_SEPARATOR_S: platform-dependant file name
191     syntax elements
192   - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S: platform-dependant
193     search path syntax conventions
194   - G_STRUCT_OFFSET, G_STRUCT_MEMBER_P, G_STRUCT_MEMBER: for handling
195     structure fields through their offsets
196 * Removed G_ENUM, G_FLAGS, G_NV, and G_SV macros
197 * Bug fixes
199 Overview of Changes in GLib 1.1.4:
201 * Added generic callback maintenance functions (ghook)
202 * New endian defines (G_*_ENDIAN)
203 * New string join/split/free routines 
204 * Fixes
206 Overview of Changes in GLib 1.1.3:
208 * New GModule mechanism (implemented in an extra library) which wraps dynamic
209   object code loading facilities in a portable manner.
210 * glib-config features extra "glib" (old behaviour remains) and "gmodule"
211   (add libgmodule.so to the --libs output) arguments now. this can also
212   be specified as fourth argument to the AM_PATH_GLIB() macro.
213 * Overhaul of the `inline' autoconfiguration stuff, so inlining should be
214   sufficiently supported on all systems that allow inlining now.
215 * New g_log() mechanism for logging of messages at different log levels,
216   associated with certain log domains (define -DG_LOG_DOMAIN for your library).
217 * New inline functions for bit masks tests.
218 * GNode macros (and functions) now return the newly allocated node.
219 * New macro G_VA_COPY() to work around va_list copying oddities on some
220   platforms. the non-static g_vsprintf() function vanished in favour of
221   a publically exported g_strdup_vprintf().
222   People that used the former g_vsprintf() would definitely want to read the
223   associated ChangeLog entries (grep for printf).
224 * New utility functions:
225   g_strndup(), g_on_error_query(), g_on_error_stack_trace(), g_strdup_printf(),
226   g_strdup_vprintf(), g_printf_string_upper_bound(), g_spaced_primes_closest(),
227   g_strnfill(), g_memdup(). 
228 * Overhaul of the array implementations, this contains some source incompatible
229   changes. Again, the ChangeLog is much more informative (grep for garray.c).
230 * The internals of the g_dataset mechanism are now exported through the
231   new g_datalist_* API (this is also the underlying implementation for the
232   keyed data of GtkObjects).
233 * New function g_atexit(), use of the ATEXIT() macro is discouraged.
234 * Better configure checks for ansi compliance.
235 * Libtool update to version 1.2b.
236 * Lotsa bug fixes and cleanups as always ;)
238 Overview of Changes in GLib 1.1.2:
240 * Fixed packaging mistake which occured in 1.1.1
241 * fix 64-bitness in g_prints in glibtest
243 What is new in GLib 1.1.1:
245 * An n-way tree implementation is provided now, based on the GNode structure.
246 * Bugfix for pointer arrays.
248 What is new in GLib 1.1.0:
250 * GLib is distributed seperatedly from Gtk+ now and uses a sophisticated
251   shared library versioning scheme to deal with interface and binary
252   incompatibilities.
253 * There is a glib-config helper script installed now.
254 * Fixups all over the place.
255 * gboolean is now a gint, not a gchar anymore.
256 * API extensions for GList and GSList.
257 * New g_str*() functions for simple string handling.
258 * GScanner extensions for scope, warning and error handling.
259 * Minor performance improvements for GMemChunks.
260 * Implementations of GQuarks and datasets (similar to GtkObjects data
261   mechansim, but works for generic memory locations).
262 * More convenience macros for GNU C function arguments.
263 * Const correction all over the place, including a new pointer type
264   gconstpointer.
265 * Generic functions for TAB completions.
266 * GRelations for n-way mapping of certain data.