Some improvements, being upstreamed. (must_use_null_useddefaultchar): New
[platform/upstream/glib.git] / ChangeLog
1 2007-11-27  Tor Lillqvist  <tml@novell.com>
2
3         * glib/win_iconv.c: Some improvements, being upstreamed.
4         (must_use_null_useddefaultchar): New function, checks for those
5         codepages for which one must pass a NULL lpUsedDefaultChar pointer
6         to WideCharToMultiByte().
7         (kernel_wctomb): Use it.
8         (kernel_wctomb): Return with E2BIG immediately if bufsize is zero.
9
10 2007-11-27  Tor Lillqvist  <tml@novell.com>
11
12         * glib/gutils.c (_glib_get_locale_dir) [Win32]: Use either
13         lib/locale or share/locale depending on which one is in
14         GLIB_LOCALE_DIR. When the configury recognizes GNU gettext (based
15         on the _nl_msg_cat_cntr variable, eek), share/locale gets used.
16
17         * glib-zip.in: Likewise, look for message catalogs either in
18         lib/locale or share/locale.
19
20 2007-11-26  Matthias Clasen  <mclasen@redhat.com>
21
22         * gio/gfileattribute.c: Fix up a doc comment.
23
24 2007-11-26  Alexander Larsson  <alexl@redhat.com>
25
26         * Makefile.am:
27         * configure.in:
28         * gio-2.0-uninstalled.pc.in:
29         * gio-2.0.pc.in: 
30         * gio-unix-2.0-uninstalled.pc.in:
31         * gio-unix-2.0.pc.in:
32         * gio/
33         * docs/reference/gio
34         Merged gio-standalone into glib.
35         
36         * glib/glibintl.h:
37         * glib/gutils.c:
38         Export glib_gettext so that gio can use it
39         Add P_ (using same domain for now)
40         Add I_ as g_intern_static_string
41
42 2007-11-26  Tor Lillqvist  <tml@novell.com>
43
44         * glib/win_iconv.c: ISO8859-1 is CP28591, not CP1252.
45
46 2007-11-26  Tor Lillqvist  <tml@novell.com>
47
48         Implement #491549: On Windows, always use the native API for
49         character set conversions instead of GNU libiconv. Almost all
50         codesets supported by GNU libiconv exist as Windows codepages.
51         One missing feature is the "C99" and "JAVA" pseudo codesets, but I
52         doubt that is worth worrying about.
53         
54         * glib/win_iconv.c: New file. iconv() implementation for
55         Windows. Placed in the public domain by Yukihiro Nakadaira
56         <yukihiro.nakadaira@gmail.com>. From
57         http://yukihiro.nakadaira.googlepages.com/win_iconv.zip, his
58         2007-11-17 version.
59
60         * glib/gconvert.c: Include win_iconv.c on Windows.
61
62         * glib/Makefile.am: Add win_iconv.c to EXTRA_DIST.
63         
64         * configure.in: Bypass iconv checks on Windows. 
65
66 2007-11-25  Tor Lillqvist  <tml@novell.com>
67
68         * glib/gtestutils.c: Add conditionals for non-Unix. Just g_error()
69         unless G_OS_UNIX for now.
70
71 2007-11-25  Matthias Clasen  <mclasen@redhat.com>
72
73         * configure.in: Require gtk-doc 1.8.
74
75         * glib/gasyncqueue.c:
76         * glib/gdate.c:
77         * glib/gfileutils.c:
78         * glib/gmain.c:
79         * glib/gmarkup.c:
80         * glib/gregex.c:
81         * glib/gtestutils.c:
82         * glib/gutils.c: Use gtk-doc abbreviations for 
83         examples in doc comments.
84
85 2007-11-24  Matthias Clasen  <mclasen@redhat.com>
86
87         * */Makefile.am: Replace INCLUDES by AM_CPPFLAGS, other
88         cleanups.
89
90 2007-11-24  Matthias Clasen  <mclasen@redhat.com>
91
92         * tests/base64-test.c: Fix a memory overrun.
93
94 2007-11-24  Matthias Clasen  <mclasen@redhat.com>
95
96         * glib/gutils.c: Remove leftover ENABLE_NLS #ifdefs.
97
98 2007-11-23  Matthias Clasen  <mclasen@redhat.com>
99
100         * glib/gbase64.c (g_base64_encode): Don't refuse to encode
101         a single byte.  (Milan Crha)
102
103         * tests/base64-test.c: Test encoding short strings.
104
105 2007-11-23  Matthias Clasen  <mclasen@redhat.com>
106
107         * glib/gi18n-lib.h: 
108         * glib/gi18n.h: Define a two-argument macro C_() for marking
109         translatable strings with context and implement C_() and Q_()
110         using g_dpgettext().  (#142676, Morten Welinder)
111
112         * glib/glib.symbols:
113         * glib/gstrfuncs.[hc]: Implement g_dpgettext().
114
115 2007-11-23  Matthias Clasen  <mclasen@redhat.com>
116
117         * glib/goption.c: Use g_print to print out --help text in 
118         locale encoding.  (#469551, Takao Fujiwara)
119
120 2007-11-22  Matthias Clasen  <mclasen@redhat.com>
121
122         * glib/gkeyfile.c: Set length out param in list-returning functions
123         to 0 when returning NULL.  (#498728, Christian Persch)
124
125 2007-11-21 21:06:47  Tim Janik  <timj@imendio.com>
126
127         * Makefile.decl: initialize automake variables EXTRA_DIST and
128         TEST_PROGS for unconditional appending via += in other makefiles.
129         define recursive test targets: test, test-report, perf-report,
130         full-report, as described here:
131       http://mail.gnome.org/archives/gtk-devel-list/2007-November/msg00000.html
132
133         * Makefile.am:
134         * build/win32/vs8/Makefile.am, build/win32/dirent/Makefile.am:
135         * build/win32/Makefile.am, build/Makefile.am:
136         * docs/Makefile.am, docs/reference/Makefile.am:
137         * docs/reference/glib/Makefile.am, docs/reference/gobject/Makefile.am:
138         * gmodule/Makefile.am, tests/Makefile.am:
139         * tests/refcount/Makefile.am, tests/gobject/Makefile.am:
140         * glib/update-pcre/Makefile.am, glib/libcharset/Makefile.am:
141         * glib/tests/Makefile.am, glib/pcre/Makefile.am:
142         * glib/gnulib/Makefile.am, gobject/Makefile.am, m4macros/Makefile.am:
143         * gthread/Makefile.am, glib/Makefile.am:
144         include $(top_srcdir)/Makefile.decl, adapted EXTRA_DIST assignments.
145
146         * glib/tests/Makefile.am: removed example testing rules.
147
148         * glib/tests/testing.c: conditionalized performance and slow tests.
149
150         * glib/gtestutils.h:
151         * glib/gtestutils.c: work around g_test_config_vars not changing its
152         exported value after value assignments, aparently due to symbol aliases.
153
154         * glib/gtester.c: fixed off-by-one error which produced junk in logs.
155
156         * configure.in: check for python >= 2.4 and provide $PYTHON for scripts.
157
158 Tue Nov 20 15:59:55 2007 +0100 Tim Janik
159
160         Renamed gtestframework to gtestutils.
161
162         * glib/glib.h:
163         * glib/Makefile.am: added gtestutils.h to public includes.
164
165         * glib/gtestutils.c: include gtestutils.h.
166
167         * glib/gtestutils.h:
168         * glib/glib.symbols:
169         * glib/tests/testing.c: renamed gtestframework to gtestutils.
170
171         * glib/gtestframework.h: renamed to gtestutils.h.
172
173         * glib/gtestframework.c: renamed to gtestutils.c.
174
175 Tue Nov 20 15:29:34 2007 +0100 Tim Janik
176
177         glib/gtestframework.c: g_test_init(): make warnings and criticals fatal for all test programs.
178
179 Wed Nov 14 20:35:05 2007 +0100 Tim Janik
180
181         gtestframework.c: added test API documentation by Sven Herzberg and Tim Janik.
182
183 Wed Nov 14 19:10:28 2007 +0100 Tim Janik
184
185         gtestframework.[hc]: implemented g_test_queue_destroy() and g_test_queue_unref().
186
187 Fri Nov 9 12:28:52 2007 +0100 Tim Janik
188
189         Added g_test_bug() and related API.
190
191         * gtester.c: handle G_TEST_LOG_MESSAGE and test test message API.
192
193         * gtestframework.h, gtestframework.c: added test message API and convenience
194         API to send test messages about bug URLs.
195
196 Fri Nov 9 11:35:11 2007 +0100 Tim Janik
197
198         Added API to access test framework configuration.
199
200         * gtestframework.h, gtestframework.c: export testing configuration to test
201         programs with g_test_quick(), g_test_perf(), g_test_verbose(), g_test_quiet().
202
203 Thu Nov 8 17:55:09 2007 +0100 Tim Janik
204
205         gtester: implemented logic to handle failing tests, self tests, and validate XML reports.
206
207         * gtester.c: terminate when tests failed. keep XML valid when test cases fail.
208         restart test binaries when tests fail, resuming after the last processed test.
209         support --gtester-selftest to run gtester itself as test program.
210         support --test-arg=<arg> to pass args along to test programs. added
211         main_selftest() which does a simplistic fixture test. fail if exit
212         code of test programs is not 0.
213
214         * gtestframework.h: added G_TEST_LOG_SKIP_CASE test log message type.
215
216         * gtestframework.c: support --GTestSkipCount=<n> to skip a number of tests.
217
218         * tests/Makefile.am: added test-report: for demonstration purposes.
219         added gtester-xmllint-check: and hooked it up into check:, this rule calls
220         gtester as test program, running it's selftest, and then uses xmllint to
221         validate the generate XML test log file.
222
223 Thu Nov 8 14:51:37 2007 +0100 Tim Janik
224
225         gtester: implemented XML logging.
226
227         * glib/gtester.c: log test messages to XML output file. beautified normal test
228         result output.
229
230         * glib/gtestframework.c: fixed GTimer leak.
231
232         * glib/tests/Makefile.am: start gtester with --verbose.
233
234 Thu Nov 8 12:33:31 2007 +0100 Tim Janik
235
236         tests/Makefile.am: execute test programs with gtester, add test: to check:
237
238 Thu Nov 8 12:18:51 2007 +0100 Tim Janik
239
240         Fixed PLT symbol exports for gtestframework.h.
241
242         * glib/glib.symbols: added all exported gtestframework.h symbols.
243
244         * glib/gtestframework.c: include galias.h, galiasdef.c, define __G_TESTFRAMEWORK_C__.
245
246 Thu Nov 8 11:31:12 2007 +0100 Tim Janik
247
248         glib/gtester.c: fixed debugging flag.
249
250 Wed Nov 7 17:56:26 2007 +0100 Tim Janik
251
252         fixed bogus unistd.h include.
253
254 Wed Nov 7 17:53:30 2007 +0100 Tim Janik
255
256         Implemented test log IPC.
257
258         * gtester.c: read and decode log messages from test binary child processes.
259         fixed GIOChannel and child watch handling to process all messages and avoid
260         hangs. pass --verbose and --quiet on to children, default to --quiet.
261
262         * gtestframework.h: export g_test_log_type_name().
263
264         * gtestframework.c: send test log to --GTestLogFD=<fd> if given, removed
265         bogus -o-option.
266
267 Tue Nov 6 20:07:44 2007 +0100 Tim Janik
268
269         gtester.c: support test case listing through gtester.
270
271 Tue Nov 6 20:01:06 2007 +0100 Tim Janik
272
273         gtestframework.c: fixed testpath matches for automatic root suite.
274
275 Tue Nov 6 19:50:33 2007 +0100 Tim Janik
276
277         gtester.c: adapted to become a rudimentary test binary launcher.
278
279         * gtester.c: increased read buffer size to match common unix pipe buffer size.
280         added argument parsing and usage. changed io handling to capture and replicate
281         stdout. fixed io handlers to be cleaned up when the child process exits (catch
282         G_IO_ERR | G_IO_HUP). we now use pending/iteration instead of a main loop
283         structure, to keep running until the child process exits and all io has been
284         processed. launch the test binaries given on the command line. don't quit when
285         a child couldn't be launched but --keep-going was specified.
286
287 Tue Nov 6 17:11:37 2007 +0100 Tim Janik
288
289         Integrated gtester program into build process.
290
291         * Makefile.am: build and install gtester binary.
292
293         * gtester.c: fixed up coding style and removed hard wired test coded.
294
295 Tue Nov 6 16:12:32 2007 +0100 Sven Herzberg
296
297         glib/gtester.c:Small -Wall fix
298
299 Tue Nov 6 16:05:06 2007 +0100 Sven Herzberg
300
301         glib/gtester.c:Implemented nonblocking reading properly now
302
303 Mon Nov 5 13:53:23 2007 +0100 Sven Herzberg
304
305         glib/gtester.c:Quit the application when the output is parsed completely, not just the process finished
306
307 Mon Nov 5 12:00:16 2007 +0100 Sven Herzberg
308
309         glib/gtester.c:Read the output of the child process
310
311 Mon Nov 5 11:50:59 2007 +0100 Sven Herzberg
312
313         glib/gtester.c:Use g_spawn_async_with_pipes()
314
315 Mon Nov 5 11:50:08 2007 +0100 Sven Herzberg
316
317         glib/gtester.c:Spawn a process async and quit gtester after the child process exited
318
319 Mon Nov 5 11:30:45 2007 +0100 Sven Herzberg
320
321         glib/gtester.c:Added a first revision of gtester
322
323 Tue Nov 6 16:47:06 2007 +0100 Tim Janik
324
325         Implemented test log serialization.
326
327         * glib/gtestframework.h: added g_test_log*() API.
328
329         * glib/gtestframework.c: implement test log serialization.
330
331 Tue Nov 6 14:24:54 2007 +0100 Tim Janik
332
333         Implemented test logging basics.
334
335         * glib/gtestframework.c: added --debug-log and --verbose, implemented
336         test information logging.
337
338         * testing.c: test g_test_maximized_result() and g_test_minimized_result().
339
340 Tue Nov 6 11:52:14 2007 +0100 Tim Janik
341
342         Implemented g_test_timer*().
343
344         * gtestframework.c: implemented g_test_timer*().
345
346         * tests/testing.c: added a g_test_timer*() test.
347
348 Mon Nov 5 18:28:24 2007 +0100 Tim Janik
349
350         Implemented support for testpaths.
351
352         * gtestframework.c: implemented g_test_add_vtable() and g_test_add_func().
353
354         * tests/testing.c: use g_test_add() and g_test_add_func() to majorly simplify main().
355
356 Mon Nov 5 15:56:42 2007 +0100 Tim Janik
357
358         testing.c: added tests for the g_test_rand*() API.
359
360 Mon Nov 5 15:55:38 2007 +0100 Tim Janik
361
362         Implemented g_test_rand*().
363
364         * gtestframework.h: fixed g_assert_cmp*() to evaluate arguments only once.
365         added g_assert_cmpuint(). completed g_test_rand*() to cover bits, ints,
366         doubles and ranges.
367
368         * gtestframework.c: fixed "--seed" option and implemented g_test_rand*().
369
370 Mon Nov 5 15:51:43 2007 +0100 Tim Janik
371
372         testing.c: added tests for g_assert_cmphex() and forked test traps.
373
374 Mon Nov 5 15:10:18 2007 +0100 Tim Janik
375
376         Implemented g_test_trap_fork() API.
377
378         * gtestframework.h: added g_assert_cmphex(). reworked g_test_trap*() API.
379
380         * gtestframework.c: implemented g_test_trap_fork() API.
381
382 Thu Nov 1 15:05:07 2007 +0100 Tim Janik
383
384         * glib/gtestframework.c:
385
386         that match a given test path.
387         (g_test_run_suite): run suite only if it matches the existing test paths.
388
389         * glib/tests/testing.c: minor rename.
390
391 Thu Nov 1 13:45:55 2007 +0100 Tim Janik
392
393         GTest framework started.
394
395         * glib/gtestframework.h: testing framework API as proposed on gtk-devel-list.
396         includes elaborate assertions, performance report functions, test traps,
397         test timer, test random numbers, teardoiwn garbage collection functions
398         and general test case / test suite management APIs.
399
400         * glib/gtestframework.c: first test framework implementation. already covers
401         some test suite management APIs and assertion message implementations.
402
403         * glib/tests/testing.c: test program for the testing framework.
404
405         * glib/tests/Makefile.am: complie testing.c as test. run all tests as part of
406         make test:.
407
408 Wed Oct 31 15:42:48 2007 +0100 Tim Janik
409
410         glib/Makefile.am: build tests/ subdir after building libglib.
411
412 Tue Oct 30 16:17:32 2007 +0100 Tim Janik
413
414         Fixed up internal 'g_test*' names.
415
416         * refcount/signals.c:
417         * refcount/objects.c:
418         * refcount/objects2.c:
419         * refcount/closures.c:
420         * refcount/properties.c:
421         * refcount/properties2.c: changed namespace prefix from g_test_* to my_test_*
422         to not clash with newly introduced g_test* API in glib.
423
424 Tue Oct 30 14:41:26 2007 +0100 Tim Janik
425
426         Added gtestframework.[hc] and glib/tests/.
427
428 2007-11-20  Sven Neumann  <sven@gimp.org>
429
430         * glib/gerror.c (g_error_add_prefix): use g_strconcat() instead of
431         g_strjoin() to concatenate two strings.
432
433 2007-11-19  Marco Barisione  <marco@barisione.org>
434
435         * glib/gregex.c: When the compilation of a pattern fails in the error
436         message use the character offset and not the byte offset.
437
438         * glib/gregex.c: Pass an unsigned long instead of an int to
439         pcre_fullinfo() to avoid problems on 64-bit systems (#498113, Kouhei
440         Sutou)
441
442 2007-11-19 10:30:33  Tim Janik  <timj@imendio.com>
443
444         * configure.in: updated version number to 2.15.0 for development.
445
446 2007-11-18  Matthias Clasen  <mclasen@redhat.com>
447
448         * glib/gbase64.c: Documentation improvements.  (#496518,
449         Stefan Schulze Frielinghaus)
450
451 2007-11-18  Matthias Clasen  <mclasen@redhat.com>
452
453         * configure.in: Check whether assembler supports numerical local
454         labels.  
455
456         * glib/gatomic.c: Fix powerpc implementation of atomic ops for 
457         platforms where the assembler doesn't support numerical local
458         labels.  (#445362)
459
460 2007-11-15  Ryan Lortie  <desrt@desrt.ca>
461
462         * docs/reference/glib/tmpl/markup.sgml:
463         * glib/gmarkup.h:
464         * glib/gmarkup.c: new flag G_MARKUP_PREFIX_ERROR_POSITION to cause the
465         parser to prepend location information (ie: "Error on line %d, char
466         %d:") to errors generated by the GMarkupParser callbacks.
467
468         Closes #496046.
469
470 2007-11-15  Ryan Lortie  <desrt@desrt.ca>
471
472         * docs/reference/glib/glib-sections.txt:
473         * glib/glib.symbols:
474         * glib/gerror.h:
475         * glib/gerror.c: new functions g_prefix_error and
476         g_propagate_prefixed_error.
477
478 2007-11-13  Cody Russell  <bratsche@gnome.org>
479
480         * docs/reference/gobject/gobject-docs.sgml:
481         * docs/reference/gobject/tut_gsignal.xml:
482         * docs/reference/gobject/tut_gtype.xml:
483         * docs/reference/gobject/tut_intro.xml:
484         * docs/reference/gobject/tut_tools.xml:
485         * docs/reference/gobject/tut_howto.xml:
486         * docs/reference/gobject/tut_gobject.xml: Documentation fixes.
487         Recommend macro type names such as NAUTILUS_TYPE_WINDOW (not
488         NAUTILUS_WINDOW_TYPE).  Fixed text which erroneously stated that 
489         superclass initializers don't run when an object is 
490         instantiated.  Fixed numerous spelling mistakes.  Minor grammar 
491         edits. (#490637, Adam Dingle)
492
493 2007-11-09  Matthias Clasen <mclasen@redhat.com>
494
495         * glib/gkeyfile.c: Coding style cleanups and doc 
496         improvements.  (#491979, #491982, Areg Beketovski)
497
498 2007-11-09  Matthias Clasen <mclasen@redhat.com>
499
500         * glib/giochannel.c: Coding style cleanups and doc 
501         improvements.  (#491975, Areg Beketovski)
502
503 2007-11-09  Matthias Clasen <mclasen@redhat.com>
504
505         * glib/gmain.c (g_main_context_iteration): Improve the
506         docs.  (#491974, Areg Beketovski)
507
508 2007-11-09  Matthias Clasen <mclasen@redhat.com>
509
510         * glib/gdate.c: Coding style fixes.
511
512 2007-11-09  Matthias Clasen <mclasen@redhat.com>
513
514         * configure.in: Add AM_PROG_CC_C_O.
515
516         * Makefile.am: Remove the install-exec-local hook and use
517         configexecincludedir_DATA instead, in an attempt to avoid
518         automake 1.9 <> 1.10 incompatibilities.
519
520         * glib/Makefile.am: Rename MIRRORING_TAB_SOURCES, since
521         automake 1.10 complains.
522
523 2007-11-09  Matthias Clasen <mclasen@redhat.com>
524
525         * glib/gspawn.c (g_spawn_sync): Improve the docs.  (#491968,
526         Areg Beketovski)
527
528 2007-11-08  Matthias Clasen <mclasen@redhat.com>
529
530         * glib/gmain.c (g_main_context_release): 
531         (g_main_context_acquire):
532         (g_main_context_new): Fix the doc wording.  (#491957, 
533         #491965, #491966, Areg Beketovski)
534
535 2007-11-08  Matthias Clasen <mclasen@redhat.com>
536
537         * glib/gutils.c (g_set_application_name): Add a missing
538         since tag.  (#464259, Mark Doliner)
539
540 2007-11-08  Matthias Clasen <mclasen@redhat.com>
541
542         * glib/goption.c (g_option_context_new): Improve the docs.
543         (#436293, Vincent Untz)
544
545 2007-11-08  Matthias Clasen <mclasen@redhat.com>
546
547         * glib/gmain.c (g_main_loop_quit): Expand the docs 
548         a bit.  (#317775, Søren Sandmann)
549
550 2007-11-08  Matthias Clasen <mclasen@redhat.com>
551         
552         * autogen.sh: Accept automake 1.10, too
553
554         * mkinstalldirs: Temporarily add this script, to fix building
555         from svn.
556
557         * Makefile.am: Use MKDIRS_P instead of mkinstalldirs, add
558         ChangeLog.pre-2-14 and mkinstalldirs to EXTRA_DIST.
559
560 2007-11-08  Matthias Clasen <mclasen@redhat.com>
561
562         * glib/gmarkup.h: Include gslist.h. Pointed out by Michael Natterer.
563
564 2007-11-08  Matthias Clasen <mclasen@redhat.com>
565
566         * glib/gconvert.c (g_convert_with_iconv): Try harder to reset
567         shift state with AIX iconv().  (#467537)
568
569 2007-11-08  Matthias Clasen <mclasen@redhat.com>
570
571         * configure.in:
572         * m4macros/glib-2.0.m4: Require pkg-config 0.16 in configure
573         and in AM_PATH_GLIB_2_0 to be consistent with the use of
574         PKG_PROG_PKG_CONFIG which was introduced in 0.16.  (#418778,
575         Loïc Minier)
576
577 2007-11-08  Matthias Clasen <mclasen@redhat.com>
578
579         * glib/gstrfuncs.c (g_parse_long_long): Don't leave
580         out parameters uninitialized.  (#490061, Benjamin Otte)
581
582 2007-11-07  Matthias Clasen <mclasen@redhat.com>
583
584         * glib/gmain.c (g_main_context_unref): Don't leak the
585         condvar.  (#479724, Areg Beketovski)
586
587 2007-11-07  Matthias Clasen <mclasen@redhat.com>
588
589         * glib/glib.symbols:
590         * glib/gmarkup.[hc] (g_markup_parse_context_get_element_stack): 
591         New function, to get the stack of open elements.  (#452887,
592         Ryan Lortie)
593
594 2007-11-07  Matthias Clasen <mclasen@redhat.com>
595
596         * glib/gkeyfile.[hc]: Make some functions that take
597         a GError return boolean instead of void.  (#375651, Matt Barnes)
598
599 2007-11-07  Matthias Clasen <mclasen@redhat.com>
600         
601         * autogen.sh: Use automake 1.9
602
603         * acinclude.m4:
604         * configure.in: Move some inter-*.m4 includes from
605         configure.in to acinclude.m4 to avoid warnings when
606         using automake 1.9.  (#449937)
607
608 2007-11-07  Matthias Clasen <mclasen@redhat.com>
609
610         === Branch for 2.14 ===