NEWS.pre-1-3 8.5 KB
Newer Older
Tim Janik's avatar
Tim Janik committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211
Overview of Changes in GLib 1.2.1:

* g_realloc() fix for SunOS (please report further problems).
* Continued the never ending fix vendetta regarding getpwuid(),
  this time AIX has been the culprit.
* Upgrade to libtool 1.2f
* Miscellaneous other buglets fixed.

What's new in GLib 1.2.0 (since GLib 1.0.x):

* GLib is distributed seperatedly from Gtk+
* Win32 Portability
* Threading support
* GModule mechanism (implemented in an extra library) which wraps dynamic
  object code loading facilities in a portable manner
* GIOChannel structure to encapsulate the IPC mechanism
* GQuarks and datasets
* GRelations for n-way mapping of certain data
* An n-way tree implementation
* GDate functionality for calendar date manipulations
* GAllocator type and associated functions
* Added generic callback maintenance functions (ghook)
* Generic functions for TAB completions
* Endian defines (G_*_ENDIAN)
* g_log() mechanism for logging of messages at different log levels
* Generic main-loop mechanism
* New glib-config helper script
* Many more API extensions

Overview of Changes in GLib 1.1.16:

* Allocate smaller pools of memory for glists, gslists, gnodes
* Bug Fixes

Overview of Changes in GLib 1.1.15:

* HPUX 11 thread system detection should now work
* Release the main loop lock around calls to prepare() and
  check() so it is not held over user code
* A few Win32 fixups

Overview of Changes in GLib 1.1.14:

* Check for dlsym() in system libraries and -dl
* FreeBSD portability fixes
* Random bug fixes and autoconf/automake changes

Overview of Changes in GLib 1.1.13:

* Removed alloca() based function and macro variants again.
* Improved thread related configure tests.
* GSource destruction fixups.
* Fixed up idle function removal based on user_data pointer.
* Advanced Win32 portability.
* Enforced GSource's check(), prepare() and dispatch() constrains,
  loop recursions may only happen from dispatch(), and check() as well
  as prepare() are called while the main_loop lock is being held.
* GLib development now requires GNU autoconf 2.13, GNU automake 1.4
  and GNU libtool 1.2d.
* Lots of random portability and bug fixes.

Overview of Changes in GLib 1.1.12:

* Added alloca functions/macros: g_strdup_a, g_strconcat3_a, g_alloca,
  g_new_a, g_new0_a
* New tests structure.  Type 'make check' on your system to run them.
* Avoid unnecessary extra hook referencing in g_hook_list_marshal

Overview of Changes in GLib 1.1.11:

* provide defaults for POLL sysdefs
* g_main_is_running: new function to check whether a main loop has been quitted
* a few other enhancement/fixes

Overview of Changes in GLib 1.1.9:

* Check for pthread_attr_init in all cases, Digital Unix 4 requires this
* For G_LOCK_DECLARE_*, if !G_THREADS_ENABLED, eat trailing semicolon better
* Changed g_main_poll_(add|remove) to g_main_(add|remove)_poll

Overview of Changes in GLib 1.1.8:

* Added threading support
  - The ability to specify a set of functions to be used for
    locking at runtime.
  - Default implementations of locking functions for pthreads,
    Solaris threads, and (experimentally) NSPR.
  - All static variables should now properly locked.
  - Enhancements to the generic main-loop mechanism to be thread-safe.
    (It is used for the main-loop in GTK+ as of GTK+-1.1.8)
* Portability fixes.

Overview of Changes in GLib 1.1.7:

* Removed multiple define from glibconfig.h

Overview of Changes in GLib 1.1.6:

* New GDate functionality for calendar date manipulations (g_date_*)
* New GAllocator type and associated functions
* New functions g_slist_copy and g_list_copy to duplicate a list with all
  its data pointers.
* New function g_array_insert_vals and new macro g_array_insert_val to
  insert elements at an arbitrary index
* GAllocators used for glist, gslist, gnode node allocations
* Incremental freezing in ghash
* New function g_hook_list_marshal_check to eventually destroy hooks after
  they got marshalled
* Revised GIOChannel to provide generic virtual-function based interface
* Added generic main-loop abstraction
* Removed GListAllocator type and its g_*_allocator_*() function variants
* Bug fixes

Overview of Changes in GLib 1.1.5:

* Win32 portability
* GIOChannel structure to encapsulate the IPC mechanism 
* Reimplemented endian stuff, using inline asm for x86
* New functions:
  - g_strescape: escapes backslashes
  - g_path_is_absolute and g_path_skip_root
  - g_getenv: expands environment variables that contain references 
    to other environment variables
  - g_scanner_sync_file_offset: rewind the filedescriptor to the current
    buffer position and blow the file read ahead buffer
  - g_array_remove_index: remove an entry, preserving the order
  - g_array_remove_index_fast: remove an entry, order might be distorted
  - g_ptr_array_remove: remove an entry, preserving the order 
  - g_ptr_array_remove_fast: remove an entry, order might be distorted
  - g_byte_array_remove_index: wrapper for g_array_remove_index
  - g_byte_array_remove_index_fast: wrapper for g_array_remove_index_fast
  - g_strncasecmp: modeled closely after g_strcasecmp
  - g_list_sort, g_slist_sort: to merge sort GLists and GSLists
* New macros:
  - G_DIR_SEPARATOR, G_DIR_SEPARATOR_S: platform-dependant file name
    syntax elements
  - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S: platform-dependant
    search path syntax conventions
  - G_STRUCT_OFFSET, G_STRUCT_MEMBER_P, G_STRUCT_MEMBER: for handling
    structure fields through their offsets
* Removed G_ENUM, G_FLAGS, G_NV, and G_SV macros
* Bug fixes

Overview of Changes in GLib 1.1.4:

* Added generic callback maintenance functions (ghook)
* New endian defines (G_*_ENDIAN)
* New string join/split/free routines 
* Fixes

Overview of Changes in GLib 1.1.3:

* New GModule mechanism (implemented in an extra library) which wraps dynamic
  object code loading facilities in a portable manner.
* glib-config features extra "glib" (old behaviour remains) and "gmodule"
  (add libgmodule.so to the --libs output) arguments now. this can also
  be specified as fourth argument to the AM_PATH_GLIB() macro.
* Overhaul of the `inline' autoconfiguration stuff, so inlining should be
  sufficiently supported on all systems that allow inlining now.
* New g_log() mechanism for logging of messages at different log levels,
  associated with certain log domains (define -DG_LOG_DOMAIN for your library).
* New inline functions for bit masks tests.
* GNode macros (and functions) now return the newly allocated node.
* New macro G_VA_COPY() to work around va_list copying oddities on some
  platforms. the non-static g_vsprintf() function vanished in favour of
  a publically exported g_strdup_vprintf().
  People that used the former g_vsprintf() would definitely want to read the
  associated ChangeLog entries (grep for printf).
* New utility functions:
  g_strndup(), g_on_error_query(), g_on_error_stack_trace(), g_strdup_printf(),
  g_strdup_vprintf(), g_printf_string_upper_bound(), g_spaced_primes_closest(),
  g_strnfill(), g_memdup(). 
* Overhaul of the array implementations, this contains some source incompatible
  changes. Again, the ChangeLog is much more informative (grep for garray.c).
* The internals of the g_dataset mechanism are now exported through the
  new g_datalist_* API (this is also the underlying implementation for the
  keyed data of GtkObjects).
* New function g_atexit(), use of the ATEXIT() macro is discouraged.
* Better configure checks for ansi compliance.
* Libtool update to version 1.2b.
* Lotsa bug fixes and cleanups as always ;)

Overview of Changes in GLib 1.1.2:

* Fixed packaging mistake which occured in 1.1.1
* fix 64-bitness in g_prints in glibtest

What is new in GLib 1.1.1:

* An n-way tree implementation is provided now, based on the GNode structure.
* Bugfix for pointer arrays.

What is new in GLib 1.1.0:

* GLib is distributed seperatedly from Gtk+ now and uses a sophisticated
  shared library versioning scheme to deal with interface and binary
  incompatibilities.
* There is a glib-config helper script installed now.
* Fixups all over the place.
* gboolean is now a gint, not a gchar anymore.
* API extensions for GList and GSList.
* New g_str*() functions for simple string handling.
* GScanner extensions for scope, warning and error handling.
* Minor performance improvements for GMemChunks.
* Implementations of GQuarks and datasets (similar to GtkObjects data
  mechansim, but works for generic memory locations).
* More convenience macros for GNU C function arguments.
* Const correction all over the place, including a new pointer type
  gconstpointer.
* Generic functions for TAB completions.
* GRelations for n-way mapping of certain data.