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