Updates
[platform/upstream/glib.git] / ChangeLog.pre-2-10
1 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
2
3         * NEWS: Updates
4
5         * glib/gthread.c (g_thread_foreach): Mark as new api.
6
7         * README.in: Updates.
8
9         * glib/glib.symbols: 
10         * glib/gdate.h: 
11         * glib/gdate.c (g_date_set_time_t): 
12         (g_date_set_time_val): Add functions to set a date from
13         a time_t and from a GTimeVal.
14         (g_date_set_time): Deprecate.  (#314067, Roger Leigh)
15         
16         * tests/Makefile.am:
17         * tests/utf8-pointer.c: Unit tests for g_utf8_pointer_to_offset
18         and g_utf8_offset_to_pointer.
19
20         * glib/gutf8.c (g_utf8_pointer_to_offset) 
21         (g_utf8_offset_to_pointer): Handle negative offsets, and use
22         "stutter stepping" for going backwards. (#320638, Larry
23         Ewing)
24
25         * glib/gbacktrace.c:
26         * glib/gdate.c:
27         * glib/gthread.c: const correctness fixes, found
28         by Arjan van de Ven and gcc.
29         
30 2005-11-16  Behdad Esfahbod  <behdad@gnome.org>
31
32         * docs/reference/glib/tmpl/unicode.sgml: Correct typo on mentioning
33         @G_UNICODE_BREAK_UNKNOWN that should be #G_UNICODE_BREAK_UNKNOWN.
34
35 2005-11-09  Behdad Esfahbod  <behdad@gnome.org>
36
37         * glib/guniprop.c: Use bit hacks instead when checking a general
38         category value against multiple values.
39
40         * glib/gutf8.c: Change ISO10646 to Unicode in docs.
41
42 2005-11-10  Simos Xenitellis  <simos@gnome.org>
43
44         * configure.in: Added tt (Tatar) to ALL_LINGUAS.
45
46 2005-11-05  Tor Lillqvist  <tml@novell.com>
47
48         * glib/giowin32.c (g_io_win32_set_flags): Don't call g_warning().
49         (#320688) Instead set error and return failure.
50
51 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
52
53         * glib/gmain.c (g_main_dispatch): Don't call cb_funcs->unref
54         while holding the context lock.  (#320886, Andy Wingo)
55
56 2005-11-07  Billy Biggs <vektor@dumbterm.net>
57
58         * tests/refcount/Makefile.am: Add a missing reference to libglib
59         in the LDADD for this test.
60
61 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
62
63         * glib/gmem.c (g_allocator_new): We need to set n_preallocs to a
64         nonzero value, otherwise GTK+ 2.8 breaks when compiled against
65         GLib 2.9.  (#320755, Luca Ferretti)
66
67 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
68
69         * glib/Makefile.am: Apply a patch from Behdad Esfahbod to 
70         use a faster lookup table for g_unichar_get_mirror_char().
71         * glib/gmirroringtable.h: The new table.
72         * glib/gunichartables.h: Remove bidi_mirroring_table.
73         * glib/gen-unicode-tables.pl: Don't generate the mirroring
74         table.
75         * glib/glib-mirroring-tab/*: Sources for the program
76         which generated gmirroringtable.h.
77
78         * glib/glist.c: Avoid some code duplication.
79
80         * glib/gscanner.h: Include gdataset.h.  (#320322)
81
82         * glib/gdebug.h: add new GDebugFlag for fatal_criticals
83         * glib/gmessages.c: (_g_debug_init): handle G_DEBUG=fatal_criticals,
84         to help find critical warnings in applications.  (#320017,
85         Vincent Untz)
86
87 2005-11-02  Tor Lillqvist  <tml@novell.com>
88
89         * glib/glib.symbols: Remove large amount of trailing whitespace
90         from one line. Remove #ifdef G_UNDEFINED from around
91         g_hash_table_new and g_hash_table_new_full symbols, what was the
92         purpose of that? Add the g_slice functions.
93
94 Tue Nov  1 16:24:20 2005  Tim Janik  <timj@imendio.com>
95
96         * glib/gmem.[hc]: prepared deprecation of GMemChunk and GAllocator.
97         added g_slice_*() API to allocate and cache small bits of memory.
98         an actuall allocator implementation for g_slice_*() is still pending.
99
100         * glib/gthread.[hc]: changes from a patch by Matthias Clasen.
101         changed GRealThread list to use in-structure *next; fields instead
102         of GSList, in order for thread iteration to not depenend on g_slice_*()
103         indirectly.
104         _g_thread_mem_private_get():
105         _g_thread_mem_private_set(): added accessors for private memory,
106         needed because the ordinary GPrivate implementation relies on GArray
107         and GSList and therefore indirectly on working g_slice_*() allocations.
108
109         * glib/gthread.[hc]:
110         g_thread_foreach(): new public API function to loop over all existing threads.
111
112         * glib/gdataset.c:
113         * glib/gstring.c:
114         * glib/gcache.c:
115         * glib/garray.c: 
116         * glib/gqueue.c:
117         * glib/gslist.c:
118         * glib/glist.c:
119         * glib/ghash.c:
120         * glib/gtree.c:
121         * glib/ghook.c:
122         * glib/gmain.c:
123         * glib/gnode.c:
124         removed GAllocator and free list usages and accompanying locks.
125         use g_slice_*() API to allocate and cache small bits of memory.
126
127         * glib/ghook.h: removed GMemChunk field from public API.
128
129         * glib/gslist.h:
130         * glib/glist.h: deprecate allocator API, provide _free1() for consistency.
131
132         * glib/gnode.h: deprecate allocator API.
133
134         * glib/gmain.c: reordered GPollRec fields so g_slice_free_chain() can
135         be used for poll rec lists.
136
137         * glib/grel.c: removed mem chunk usage, and allocated tuples via g_slice_*().
138         g_relation_destroy(): free all tuples from the all_tuples hash table,
139         this effectively maintains the life time track keeping of tuples.
140         g_relation_delete_tuple(): free tuples which are removed from the
141         all_tuples hash table. this fixes a temporary leak that was present
142         in the memchunk code until the destruction of the relation.
143
144 2005-10-29  Matthias Clasen  <mclasen@redhat.com>
145
146         * tests/convert-test.c: Add some tests for conversions between
147         UTF-8, UCS-4 and UTF-16.
148
149         * glib/gutf8.c (g_utf8_to_ucs4, g_utf8_to_utf16): Fix handling
150         of len == -1, noticed by Morten Welinder.
151
152 2005-10-27  Erdal Ronahi  <erdal.ronahi@gmail.com>
153
154         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
155
156 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
157
158         * glib/gutf8.c (g_ucs4_to_utf8): Don't set items_read twice
159         in the error case, and add some documentation.  (#319806, Morten
160         Welinder)
161
162 2005-10-19  Manish Singh  <yosh@gimp.org>
163
164         * configure.in: Use AC_CHECK_FUNCS for _NSGetEnviron, to get the
165         config.h symbol automatically. Fixes bug #313731.
166
167 2005-10-19  Tor Lillqvist  <tml@novell.com>
168
169         * glib/gwin32.c (g_win32_get_package_installation_directory):
170         Return a g_strdup()ed copy of the value stored in the hash table,
171         so that it can be g_free()d without leaving a dangling pointer in
172         the hash table. (#319232)
173
174 2005-10-06  Matthias Clasen  <mclasen@redhat.com>
175
176         * glib/gunicollate.c (g_utf8_collate_key_for_filename): Handle
177         all-zero sequences correctly.  (#317930, Sebastien Bacher)
178
179 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
180
181         * glib/gmarkup.c (g_markup_escape_text): Doc addition
182
183         * Makefile.am: Add Collation tests.
184
185         * tests/collate/*: Inputs and expected outputs for collation tests.
186
187         * tests/run-collate-tests.sh: Script to run collation tests.
188
189         * tests/unicode-collate.c (main): Rework slightly to make
190         it usable in unit tests. Also test g_utf8_collate_key_for_filename().
191
192 2005-10-01  Behdad Esfahbod  <behdad@gnome.org>
193
194         * docs/reference/glib/tmpl/unicode.sgml:
195         * glib/gen-unicode-tables.pl:
196         * glib/gunibreak.h:
197         * glib/gunichartables.h:
198         * glib/gunicode.h:
199         * tests/casefold.txt:
200         * tests/casemap.txt: Updated to Unicode 4.1.  There are five new
201         GUnicodeBreakType types.  That may break some applications, like
202         Pango <= 1.10.
203
204 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
205
206         * glib/gstrfuncs.c (g_ascii_strtoull): Add details to the 
207         docs.  (#314393, Matthew F. Barnes)
208
209         * glib/glib.symbols:
210         * glib/gprintf.h: Remove g_snprintf() and g_vsnprintf(), since
211         they are already declared in glib.h. This doesn't break documented
212         use of gprintf.h, but should probably be pointed out in the 
213         release notes for 2.10. (#314232, Behdad Esfahbod)
214
215 Tue Sep 20 13:16:04 2005  Tim Janik  <timj@imendio.com>
216
217         * glib/gpattern.c (g_pattern_ph_match): applied significant recursion
218         complexity optimization, based on a patch from Matthias Clasen.
219
220         * tests/patterntest.c: more tests, mostly from matthias.
221
222 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
223
224         * glib/gqueue.c (g_queue_insert_sorted): Correct the docs.
225         (#316703, Mark Drago)
226
227 Mon Sep 19 17:23:23 2005  Tim Janik  <timj@imendio.com>
228
229         * glib/gpattern.c: applied a patch from matthias which checks on the
230         upper bound of GPatternSpec length to optimize matches.
231         cosmetic fixups.
232
233         * tests/patterntest.c: added more match cases.
234
235 2005-09-16  Tor Lillqvist  <tml@novell.com>
236
237         * glib/gstrfuncs.c (g_ascii_strcasecmp, g_ascii_strncasecmp): Add
238         warning to doc comment that these functions should not be used on
239         encodings like CP932.
240
241 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
242
243         * tests/keyfile-test.c: Add a test for grup names of length 1.
244
245         * glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
246         of length 1.  (#316309)
247         
248 2005-09-12  Matthias Clasen  <mclasen@redhat.com>
249
250         * glib/gmarkup.c (g_markup_escape_text): Clarify docs.
251
252 2005-09-11  Sebastian Wilhelmi  <seppi@seppi.de>
253
254         * tests/refcount/Makefile.am (INCLUDES): Link the the refcount
255         tests to the system thread library $(G_THREAD_LIBS). Fixes #313744
256         and #314217.
257
258 2005-09-11  Kjartan Maraas  <kmaraas@gnome.org>
259
260         * glib/gmain.c: (g_child_watch_prepare), (g_child_watch_check),
261         (child_watch_helper_thread): Remove some dead code. Closes
262         bug #315278.
263
264 2005-09-07  Tor Lillqvist  <tml@novell.com>
265
266         * glib/Makefile.am: Create also a console version of the
267         gspawn-win32-helper program, gspawn-win32-helper-console.exe.
268         It's otherwise identical to gspawn-win32-helper.exe, except marked
269         as a console application (linked without the -mwindows option).
270         
271         * glib/gspawn-win32.c (do_spawn_directly, do_spawn_with_pipes):
272         Drop the dont_wait parameter. Its truth value correlated 100% with
273         the NULLness of the exit_status parameter anyway, so it's enough
274         to check whether exit_status is NULL. Invert the sense of the
275         dont_return_handle parameter and rename it to do_return_handle, to
276         make the code easier to read by avoiding double negations.
277
278         (g_spawn_sync_utf8, g_spawn_async_with_pipes_utf8): Modify calls
279         to do_spawn_with_pipes() accordingly.
280
281         (do_spawn_with_pipes): If we have a console, use the console
282         version of the helper program, otherwise use the GUI one. This
283         avoids extra console windows opening up in some situations. (In
284         case a console application uses the GUI gspawn-win32-helper.exe to
285         spawn another console application we would get a separate console
286         for the spawned console application).
287
288         * glib-zip.in: Distribute also gspawn-win32-helper-console.exe.
289
290 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
291
292         * glib/gmappedfile.c (g_mapped_file_new): Report an error
293         if the file is too large.  (#315275, Kjartan Maraas)
294
295         * glib/gkeyfile.c (g_key_file_load_from_fd): The return value
296         of read() is signed.  (#315273, Kjartan Maraas)
297         
298 2005-08-31  Tor Lillqvist  <tml@novell.com>
299
300         * glib/gutils.h: Wrapping atexit() is a bad idea on Windows, where
301         the EXE and each DLL have their own atexit function chains.
302
303         #define g_atexit as atexit instead. This means it has a
304         better chance of doing what the caller wants. For instance,
305         gtkhtml calls g_atexit() registering a function in gtkhtml
306         itself. This caused a crash when g_atexit() was implemented as a
307         function in the GLib DLL. The gtkhtml DLL was already unloaded by
308         the time the GLib DLL got unloaded.
309
310         * glib/gutils.c: #undef the #define mentioned above, to also get a
311         real g_atexit() into the DLL for backward compatibility. Document
312         the Windows behaviour of g_atexit(), and document the varying ways
313         atexit() can behave in the context of dynamically loaded modules
314         on Unix.
315
316 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
317
318         * glib/glib.symbols: 
319         * glib/gquark.h: 
320         * glib/gdataset.c: Add string interning functions.
321
322 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
323
324         * glib/giochannel.c: Unify some near-duplicate strings. (#314654,
325         Clytie Siddall)
326         
327 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
328
329         * configure.in: Bump version to 2.9.0
330
331 2005-08-25  Tor Lillqvist  <tml@novell.com>
332
333         Make also the g_spawn*() functions take parameters in the GLib
334         file name encoding, i.e. UTF-8, on Windows. Has no impact on Unix
335         API or ABI. Like the other GLib API that was earlier changed to
336         use UTF-8 on Windows, the names of the functions that take UTF-8
337         have _utf8 suffixes added by using preprocessor macros in the
338         header file. The old names are kept for functions with the old
339         behaviour, taking parameters in the system codepage, for DLL ABI
340         stability.
341         
342         * glib/gspawn.h: On Win32 add the suffix _utf8 to the names of the
343         g_spawn*() functions.
344         
345         * glib/gspawn-win32.c: Use wide-char API on NT-based
346         Windows. Convert parameters from UTF-8 to wide chars (NT) or
347         system codepage (Win9x) and call the C library _wspawn*() or
348         spawn*() functions respectvely. Add DLL ABI stability versions
349         that take parameters in the system codepage.
350
351         * glib/gspawn-win32-helper.c: On NT-based Windows use the
352         wide-char versions of argv and envp, and use wide-char API to
353         change directory and spawn the program to run. Remove the verbose
354         debugging output, it was too complex to modify for the wide-char
355         features. (Just add temporary debugging printouts if needed, no
356         need to have them permanently in the source.)
357
358         * glib/gspawn.c: Corresponding documentation updates.
359
360         * glib/glib.symbols: Corresponding changes: Mark the ABI stability
361         symbols as PRIVATE, add the new _utf8-suffixed ones.
362
363 2005-08-24  Stepan Kasal  <kasal@ucw.cz>
364
365         * glib/gtypes.h (G_MININT64): Cast the constant to gint64; it is
366         guint64 otherwise and that can produce warnings about comparison
367         between signed and unsigned.
368
369 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
370
371         * glib/gutils.c: Fix the crt_externs.h include.
372
373 2005-08-23  Stepan Kasal  <kasal@ucw.cz>
374
375         * NEWS: Fix spelling of my first name.
376
377 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
378
379         * Bump version
380
381         * === Released 2.8.1 ===
382
383         * NEWS: Updates
384
385 2005-08-20  Hans Breuer  <hans@breuer.org>
386
387         * glib/makefile.msc.in : link with ws2_32.lib
388
389 2005-08-18  Tor Lillqvist  <tml@novell.com>
390
391         * configure.in: Check for <sys/wait.h>
392
393         * glib/gbacktrace.c: Include <sys/wait.h> on if HAVE_SYS_WAIT_H.
394
395 2005-08-18  Ross Burton  <ross@burtonini.com>
396
397         * glib/gstring.c:
398         Optimise single-character insertions.
399         
400         * glib/gutf8.c:
401         Note copied code.
402         
403         * tests/string-test.c:
404         Add tests for new optimisation, and fix a leak.
405
406 2005-08-17  Matthias Clasen  <mclasen@redhat.com>
407
408         * configure.in: Check for crt_externs.h and _NSGetEnviron.
409
410         * glib/gutils.c: On Darwin, include crt-externs.h and
411         define environ using _NSGetEnviron().  (#313731)
412
413 2005-08-16  Stepan Kasal  <kasal@ucw.cz>
414
415         * glib/gutils.c (g_get_any_init): Move the body of the big if...
416         (g_get_any_init_do): ... to this new function.
417         (g_get_any_init): Declare as inline.
418         (g_get_any_init_locked): New inline function, does the locking.
419         Make use of these two throughout the code.
420
421 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
422
423         * glib/gbacktrace.c (g_on_error_stack_trace): Wait for
424         the child process and then simply return. This makes 
425         The "S" option work as documented in g_on_error_query().
426         (#313125, Matthew F. Barnes)
427
428         * glib/gunicode.h: Update the link to Unicode category
429         values.  (#313369, Behnam Esfahbod)
430
431         * glib/gqueue.c (g_queue_find_custom): Clarify docs
432         a little.  (#311727, Tristan van Berkom)
433
434         * glib/abicheck.sh, gobject/abicheck.sh: Make the 
435         check work on ia64 too, where some symbols ended up 
436         in yet another section.
437