source: trunk/third/GConf2/ChangeLog @ 18568

Revision 18568, 146.6 KB checked in by ghudson, 22 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r18567, which included commits to RCS files with non-trunk default branches.
Line 
12003-01-20  Havoc Pennington  <hp@pobox.com>
2
3        * NEWS: update
4       
5        * configure.in: 2.2.0
6
72003-01-12  Havoc Pennington  <hp@pobox.com>
8
9        * configure.in: 2.1.90
10
112002-12-04  Havoc Pennington  <hp@pobox.com>
12
13        * backends/markup-tree.c (markup_entry_get_value): fix
14        a logic error causing us to deref a null pointer, reported
15        by  Brian Alexander Quistorff
16
172002-11-22  Dan Mills  <thunder@ximian.com>
18
19        * configure.in: fix gtk-doc version check.
20
212002-11-09  Dmitry G. Mastrukov  <dmitry@taurussoft.org>
22
23        * configure.in: Added Belarusian to ALL_LINGUAS
24
252002-11-02  Havoc Pennington  <hp@pobox.com>
26
27        * gconf/gconf-internals.c
28        (gconf_value_list_to_primitive_list_destructive): fix using the
29        wrong type (value->type not value->list_type) in an error message,
30        #96210
31
322002-10-18  Havoc Pennington  <hp@pobox.com>
33
34        * gconf/gconf-internals.c (subst_variables): patch from
35        Benn Vosseteig fixing a crash with a long path to $HOME
36       
372002-09-30  Yanko Kaneti <yaneti@declera.com>
38
39        * doc/gconf/gconf.sgml:
40        * doc/gconf-1.0.dtd: Some additions to match the full range of schema
41        elements curently accepted by gconftool. Supposedly complete now.
42
432002-09-18  Yanko Kaneti <yaneti@declera.com>
44
45        * doc/Makefile.am: change the gconf-1.0.dtd install location to
46        $(datadir)/sgml/gconf which sounds more standards compliant.
47
482002-09-18  Havoc Pennington  <hp@pobox.com>
49
50        * backends/markup-backend.c (resolve_address): add FIXME about
51        GCONF_LOCAL_LOCKS
52
532002-09-18  Havoc Pennington  <hp@pobox.com>
54
55        Merge gconf-markup-hacking branch
56       
57        * tests/testbackend.c: add a test for backends
58
59        * gconf/gconftool.c (extract_global_info): add more error
60        checking, adding more error strings
61
62        * gconf/gconf-schema.c (gconf_schema_validate): do some more
63        validation with error strings that couldn't be added to stable
64        branch
65
66        * backends/xml-dir.c: fix quoting in error string
67
68        * backends/xml-backend.c (resolve_address): fix quoting in error
69        string
70
71        * backends/markup-tree.c: make it work
72
73        * backends/markup-backend.c: make it work
74
75        * backends/Makefile.am (libgconfbackend_markup_la_SOURCES): add
76        markup-backend.c
77
782002-09-18  Yanko Kaneti <yaneti@declera.com>
79
80        * gconf.m4.in: Introduce --disable-schemas-install and the
81        GCONF_SCHEMAS_INSTALL conditional, which allows disabling
82        the schemas installation given the package decides to support it.
83
84        * doc/Makefile.am:
85        * doc/gconf/gconf.sgml:
86        * doc/gconf-1.0.dtd (ADDED): formal dtd for the schema files.
87        Not yet complete. Installed in $(pkgdatadir)/xml/gconf/ for now.
88
892002-09-18  Havoc Pennington  <hp@pobox.com>
90
91        * configure.in: bump to 2.1.0, to get in sync with gnome and allow
92        identifying HEAD
93
942002-09-09  jacob berkman  <jacob@ximian.com>
95
96        * gconf/GConf.idl:
97        * gconf/GConfX.idl:
98        * gconf/Makefile.am:
99        * gconf/gconf-database.h:
100        * gconf/gconf-internals.h:
101        * gconf/gconf.c:
102        * gconf/gconfd.c:
103        * gconf/gconfd.h: rename GConf.idl to GConfX.idl in order to build
104        on non-case-sensitive file systems
105
1062002-09-06  Peteris Krisjanis <peteris.krisjanis@os.lv>
107
108        * configure.in: Added Latvian (lv) to ALL_LINGUAS
109
1102002-08-04  Havoc Pennington  <hp@redhat.com>
111
112        * configure.in: 1.2.1
113
1142002-07-12  Brian Cameron  <Brian.Cameron@sun.com>
115
116        * gconf/gconfd.c
117        Removed reference to gnome_segv2 since it was not used.
118
1192002-07-11  Brian Cameron  <Brian.Cameron@sun.com>
120
121        * gconf-2.0.pc.in
122        * gconf.spec.in
123        * gconf/Makefile.am
124        * gconf/gconfd.c
125        * gconf/gconf-internals
126        Now install gconfd-2 and gconf-sanity-check-2 in libexec
127
1282002-07-09  Mark McLoughlin  <mark@skynet.ie>
129
130        * gconf/gconfd.c: (obtain_database): fix
131        silly with addresses list.
132
1332002-07-04  Havoc Pennington  <hp@pobox.com>
134
135        * gconf/gconfd.c (logfile_read): close our FILE* when we're done.
136        Reported by Michael.
137       
1382002-07-03  Yanko Kaneti <yaneti@declera.com>
139
140        * configure.in: (ALL_LINGUAS) Added Bulgarian (bg).
141
1422002-06-16  Havoc Pennington  <hp@pobox.com>
143
144        * gconf/gconf-sources.c (gconf_sources_recursive_unset): don't
145        propagate nonexistent errors, fixes a warning.
146
147Fri Jun 14 13:24:42 2002  HideToshi Tajima  <hidetoshi.tajima@sun.com>
148
149        * gconf/gconfd.c: include <locale.h> for setlocale.
150
1512002-06-11  Havoc Pennington  <hp@pobox.com>
152
153        * configure.in: version 1.2.0
154
155        * README, NEWS, AUTHORS: update
156
1572002-06-02  Havoc Pennington  <hp@pobox.com>
158
159        * gconf/gconftool.c: add --version argument, #79555, involves a
160        help string but it should be OK if this string isn't translated.
161
162        * gconf/gconf-client.c (gconf_client_get): add some
163        g_return_if_fail, #74984
164        (gconf_client_key_is_writable): handle NULL entry,
165        #75503
166
167        * gconf/gconfd.c (gconf_handle_segv): disable bug-buddy for now,
168        too much recursion danger.
169
170        * gconf/gconf-internals.c, gconf/gconfd.c: replace isspace() with
171        g_ascii_isspace, bug #70945
172
173        * gconf/gconf-value.c (gconf_value_new): init i18n here
174
175        * gconf/gconf.c (gconf_engine_blank): init i18n here
176
177        * gconf/gconftool.c (main): init i18n here, call textdomain
178
179        * gconf/gconfd.c (main): init i18n here, and call setlocale and
180        textdomain
181
182        * gconf/gconf-internals.c (_gconf_init_i18n): function to call
183        from various places
184        (gconf_orb_get): init i18n here
185
186        * configure.in: require ORBit 2.4.0, linc 0.5.0,
187
188        bump version to 1.1.11
189
190        fix setting of gconflocaledir (there was a typo,
191        gtklocaledir instead of gconflocaledir)
192
193        check for bind_textdomain_codeset
194
195        * backends/Makefile.am (noinst_LTLIBRARIES): make markup lib
196        noinst for now, until we merge back the gconf-markup-hacking
197        branch post-string-freeze
198
1992002-06-02  Havoc Pennington  <hp@pobox.com>
200
201        * backends/xml-cache.c (cache_sync): avoid zombie directory cruft by
202        aggressively redoing the resync anytime we delete a subdir, which
203        might enable a parent dir to also be deleted.
204
2052002-06-02  Havoc Pennington  <hp@pobox.com>
206
207        * backends/xml-cache.c (cache_lookup): don't leave a dir marked
208        nonexistent after creating it
209        (cache_set_nonexistent): remove hash entry _before_ freeing
210        the current key. Should fix assorted "gconf loses my settings"
211        kind of bugs.
212
213        * backends/xml-dir.c (dir_sync): don't try to delete the root dir,
214        should fix some warnings.
215
2162002-05-27  Hasbullah Bin Pit <sebol@ikhlas.com>
217
218        * configure.in: Added Malay (ms)to ALL_LINGUAS.
219        * po/ms.po: Added Malay Translation.
220
2212002-05-27  Havoc Pennington  <hp@pobox.com>
222
223        * backends/markup-tree.c: implement all the tree reading stuff,
224        need to implement modification/writing and implement
225        markup-backend.c. (Backend is totally unused and unusable
226        until post-GNOME2, don't worry.)
227       
228        * gconf/gconf-internals.h (gconf_value_set_string_nocopy):
229        new function
230
2312002-05-15  Pablo Saratxaga  <pablo@mandrakesoft.com>
232
233        * configure.in: Added Vietnamese (vi) to ALL_LINGUAS
234
2352002-05-10  Shivaram U  <shivaram.upadhyayula@wipro.com>
236
237        * doc/gconf/Makefile.am: Honouring CFLAGS and LDFLAGS passed by the user
238        Ensures successful 64bit build on Solaris.
239
2402002-05-09  Michael Meeks <michael@ximian.com>
241
242        * backends/xml-entry.c (entry_get_value): ensure we
243        don't print a NULL.
244
2452002-04-29  Pablo Saratxaga  <pablo@mandrakesoft.com>
246
247        * configure.in: Added Basque (eu) to ALL_LINGUAS
248
2492002-04-29  Havoc Pennington  <hp@pobox.com>
250
251        * configure.in: 1.1.10
252
2532002-04-26  Havoc Pennington  <hp@pobox.com>
254
255        * gconf/gconf-changeset.c: make the internal functions static
256
257        * gconf/gconf-internals.c (byte_type): make static
258        (get_hostname): remove
259
260        * gconf/gconfd.c (add_client): set the maximum connection buffer
261        to a reasonable-size value in order to handle locked-up clients.
262       
263        * backends/xml-entry.c (node_set_schema_value): opacity fixes
264
265        * gconf/gconftool.c (list_pairs_in_dir): opacity fixes
266
267        * gconf/gconf.c: opacity fixes
268        (gconf_engine_get_for_address): remove the g_warning about using
269        this function; the change notification is a bit broken but maybe
270        it's still useful.
271
272        * gconf/gconf-sources.c: opacity fixes
273
274        * gconf/gconf-database.c: namespace fixes
275
276        * gconf/gconf-internals.h: namespace some things
277
278        * gconf/gconf-internals.c: opacity fixes
279        (fill_corba_schema_from_gconf_schema):
280        make static
281        (corba_schema_from_gconf_schema): make static   
282
283        * gconf/gconf-schema.c: do groundwork to make GConfSchema opaque,
284        and fix some lack of spaces before parens
285
286        * gconf/gconf-value.c: do groundwork to make GConfEntry mostly
287        opaque (implement with GConfRealEntry)
288
2892002-04-19  Abel Cheung  <maddog@linux.org.hk>
290
291        * configure.in: Added "zh_TW" to ALL_LINGUAS.
292
2932002-04-10  jacob berkman  <jacob@ximian.com>
294
295        * backends/xml-dir.c (my_xml_parse_file): g_file_get_contents()
296        takes gsize, not int
297
2982002-03-29  Havoc Pennington  <hp@pobox.com>
299
300        * configure.in: 1.1.9
301
302        * gconf/gconf-client.c (gconf_client_get_string): clean up some
303        weird cruft
304
305        * gconf/gconf-internals.c (primitive_value): steal the schema,
306        avoids a copy.
307
308        * gconf/gconf-value.h, gconf/gconf-value.c: Hide private fields,
309        suggested by Michael. But then make them public again
310        for now due to libgnome/eel being broken.
311
312        * configure.in (PKGCONFIG_MODULES): require the right versions of
313        various things
314
3152002-03-24  Havoc Pennington  <hp@pobox.com>
316
317        * gconf/gconf-internals.c (gconf_activate_server): save a bit more
318        data about the errors that occurred for the error message,
319        and shorten the message in favor of a link to the new
320        gconf web page.
321
3222002-03-23  Havoc Pennington  <hp@pobox.com>
323
324        * gconf/gconfd.c (gconf_main): change exit timeout to 2 minutes
325
3262002-03-22  Havoc Pennington  <hp@pobox.com>
327
328        * gconf/gconfd.c (gconf_set_exception): change "returning
329        exception" message to DEBUG priority
330
3312002-03-20  Havoc Pennington  <hp@pobox.com>
332
333        * tests/testpersistence.c: remove the -G_MAXFLOAT test, since
334        it didn't work and probably shouldn't
335
336        * gconf/gconf-internals.c (gconf_double_to_string): use
337        g_ascii_dtostr()
338        (gconf_string_to_double): use g_ascii_strtod()
339
3402002-03-21  Havoc Pennington  <hp@redhat.com>
341
342        * configure.in: fuck, Martin apparently deleted -Wall last March.
343       
344        * gconf/gconftool.c (main): don't pass unused arg to do_get_default_source
345       
346        * backends/xml-test.c: include all headers we use
347
348        * backends/xml-backend.c (remove_dir): fix unused variable
349
350        * backends/xml-dir.c (dir_rescan_subdirs): return a value in all
351        cases
352
353        * gconf/gconf-sanity-check.c (check_gconf): remove unused variables
354
355        * gconf/gconfd.c: include sys/wait.h
356
357        * gconf/gconf-client.c: remove unused function
358
3592002-03-21  Havoc Pennington  <hp@redhat.com>
360
361        * backends/xml-entry.c (schema_node_extract_value): be sure
362        we use only NODE elements as a fallback, and that we
363        always use a NODE if possible
364        (schema_node_extract_value): fix bug that would fail to fall back
365        to a less-well-matched locale value if a better matched locale had
366        no value. Should fix Galeon. And the world rejoiced! Assuming
367        it actually fixes it. ;-)
368
3692002-03-21  Havoc Pennington  <hp@redhat.com>
370
371        * gconf/gconf-schema.c: move schema accessors to be functions not
372        macros.
373
3742002-03-20  Havoc Pennington  <hp@redhat.com>
375
376        * gconf/gconf-internals.c
377        (gconf_value_list_to_primitive_list_destructive): don't call
378        gconf_value_get_int on a bool. WTF.
379
380        * gconf/gconfd.c (main): enable the signal handler for USR1
381
382        * backends/xml-dir.c (dir_load_doc): do our own file reading, only
383        use libxml to parse, so we can return an error on I/O problems
384        (as opposed to the current behavior, nuking the file contents,
385        which only makes sense for corrupt files)
386
3872002-03-20  Havoc Pennington  <hp@redhat.com>
388
389        * gconf/gconf-value.c: change all the "getters" to be functions
390        not macros, so we can add g_return_if_fail and be typesafe and
391        generally suck less. Suggested most recently by Jody.
392
3932002-03-19  Havoc Pennington  <hp@pobox.com>
394
395        * backends/xml-cache.c (dircmp): fix bad assertion reported
396        by lunarbard on #gnome
397
3982002-03-14  Havoc Pennington  <hp@redhat.com>
399
400        * gconf/gconf-sanity-check.c (check_gconf): beef up the sanity
401        checker to detect stuck locks, missing config files, and other
402        screwups.
403
4042002-03-10  Havoc Pennington  <hp@pobox.com>
405
406        * gconf/gconf-sources.c (gconf_sources_query_metainfo): fix
407        obnoxious typo (s/mi/this_mi/), also needed to fix bug
408        reported by Kristian.
409
410        * backends/xml-backend.c (query_metainfo): make key relative prior
411        to looking up metainfo. Fixes bug where schema defaults would
412        mysteriously get lost in some cases, reported by Kristian
413        Rietveld.
414
4152002-03-07  Havoc Pennington  <hp@pobox.com>
416
417        * backends/xml-test.c: test program for XML backend code
418
419        * configure.in: add a "minimum" debug mode and compile with it
420        by default.
421
422        * gconf/gconftool.c (main): call setlocale()
423
424        * tests/runtests.sh: run tests in various locales
425
426        * gconf/gconf-value.h: add more padding to GConfEntry
427       
428        * gconf/gconf-internals.c (gconf_CORBA_Object_equal):
429        (gconf_CORBA_Object_hash): remove stupid inlining of these
430        functions
431
4322002-02-26  Havoc Pennington  <hp@redhat.com>
433
434        * gconf/gconf-client.c (notify_one_entry): protect notify callback
435        with a reference count around the entry, for reentrancy. Reported
436        by Rodrigo Moya and Alex Larsson.
437
438        * gconf/gconf-value.c (gconf_entry_unref, gconf_entry_ref): new
439        internal (for now) functions
440        (gconf_entry_free): just call gconf_entry_unref
441
442Sat Feb 16 01:27:29 2002  Jonathan Blandford  <jrb@redhat.com>
443
444        * gconf/gconftool.c (read_value_type): fix typo in reading args.
445
4462002-02-14  Dave Camp  <dave@ximian.com>
447
448        * gconf/gconf.c: (gconf_string_to_enum): Use g_ascii_strcasecmp
449        instead of g_strcasecmp.
450        * gconf/gconfd.c: (gconf_main), (gconf_main_quit): Replace
451        g_main_* with g_main_loop_*.
452        * examples/simple-controller.c: (main): Use g_signal_connect
453        instead of gtk_signal_connect.
454        * examples/simple-view.c: (key_changed_callback): Use
455        gtk_label_set_text instead of gtk_label_set.
456
4572002-02-12  Havoc Pennington  <hp@pobox.com>
458
459        * configure.in: version 1.1.8
460
4612002-02-10  Jody Goldberg <jody@gnome.org>
462
463        * gconf/gconftool.c : Include libxml/globals to get xmlFree
464          Without it we call a NULL function pointer.
465        * backends/xml-entry.c : ditto.
466
4672002-02-10  Havoc Pennington  <hp@pobox.com>
468
469        * gconf/gconfd.c (signal_handler): run gnome_segv if DISPLAY is
470        set. Why not. may turn it off for production.
471       
4722002-02-10  Havoc Pennington  <hp@pobox.com>
473
474        * gconf/gconf.c (CHECK_OWNER_USE): put name of function in the
475        warning
476        (gconf_engine_associate_schema): remove warning from this
477        function, it has no GConfClient equivalent and won't mangle the
478        cache
479
4802002-02-10  Zbigniew Chyla  <cyba@gnome.pl>
481
482        * configure.in (ALL_LINGUAS): Added pl (Polish).
483
4842002-02-08  jacob berkman  <jacob@ximian.com>
485
486        * gconf.m4.in: revert some stuff i didn't mean to commit
487        yesterday.  Fixes problems when building with DESTDIR set.
488
4892002-02-07  jacob berkman  <jacob@ximian.com>
490
491        * gconf/Makefile.am (install-exec-local): don't install gconftool
492        symlink
493
494        * gconf.m4.in (AM_GCONF_SOURCE_2): call gconftool-2 rather than
495        gconftool
496
4972002-02-05  Havoc Pennington  <hp@redhat.com>
498
499        * gconf/gconf-sanity-check.c (main): add gconf-sanity-check-2 app,
500        which either exits sucessfully and does nothing, or pops up a
501        dialog explaining a gconf problem and exits with a failure code.
502        Could be placed in gnome-session, or at least we can tell users
503        to run it as a diagnostic tool.
504
505        Only catches very simple problems so far.
506
507        * configure.in: define XML_AND_GTK_CFLAGS
508
5092002-02-05  Michael Meeks  <michael@ximian.com>
510
511        * gconf/gconf.h: move (gconf_debug_shutdown) out of
512        the internals guard - doh.
513
514        * gconf/gconf-client.c (gconf_client_get_default):
515        ensure we still own the reference we keep around.
516
5172002-02-04  Havoc Pennington  <hp@redhat.com>
518
519        * gconf/Makefile.am (regenerate-built-sources): give up and check
520        stupid enum sources in to CVS and require manual rebuild.
521
522        * configure.in: bump to 1.1.7, do library versioning.
523        Default bdb backend to disabled, since I don't think
524        it's being actively used/tested.
525
526        * autogen.sh: use automake-1.4 aclocal-1.4 if found
527
5282002-02-02  jacob berkman  <jacob@ximian.com>
529
530        * gconf/Makefile.am: re-enable explicit dependency on built
531        sources, as it doesn't build otherwise.
532
5332002-02-01  Havoc Pennington  <hp@pobox.com>
534
535        * gconf/Makefile.am: include the *.sh scripts
536
537        * gconf/regenerate-enum-footer.sh: fix screwup that broke build
538
5392002-02-01  Havoc Pennington  <hp@redhat.com>
540
541        * gconf/Makefile.am: move the complicated enum rules into small
542        shell scripts (regenerate-enum-*.sh), rename CORBA_SOURCES to
543        CORBA_SOURCECODE
544
5452002-01-28  Michael Meeks  <michael@ximian.com>
546
547        * gconf/gconf-database.c: warning cleans.
548        (impl_ConfigDatabase3_add_listener_with_properties):
549        init name.
550        (gconf_database_add_listener): right args for format.
551
552        * gconf/gconf-client.c: warning cleans.
553
554        * gconf/gconf-internals.c (gconf_orb_release):
555        return shutdown status.
556
557        * gconf/gconf.c (gconf_detach_config_server):
558        privatize again, and split out ORB shutdown into
559        (gconf_debug_shutdown): here.
560
5612002-01-25  Michael Meeks  <michael@ximian.com>
562
563        * gconf/gconf.c (try_to_contact_server): release the
564        server reference, if it's to a duff object.
565        (gconf_get_config_listener): strip local 'listener',
566        since we have a static module global for that.
567        (gconf_detach_config_server): release the listener.
568        (gconf_get_config_listener): release the poa & manager
569        references.
570
571        * tests/testgconf.c (main): add
572        gconf_detach_config_server
573
574        * gconf/gconf-internals.c
575        (gconf_orb_get): remove bonobo activation
576        worries, kill bogus fiddling with the default
577        context.
578        (gconf_orb_release): impl.
579
580        * gconf/gconf.c (gconf_detach_config_server):
581        publicise & destroy engines_by_cb.
582        (database_rec_release): impl.
583        (gconf_engine_set_database): use g_hash_table_new_full
584        (gconf_engine_detach): just remove from the hash.
585        (try_to_contact_server): release the server reference,
586        if it's to a duff object.
587
5882002-01-28  Ross Golder  <ross@golder.org>
589
590        * configure.in: Updated popt URL.
591
5922002-01-27  Havoc Pennington  <hp@pobox.com>
593
594        * gconf/Makefile.am: don't use BUILT_SOURCES, might fix annoying
595        build problems
596        (CLEANFILES): put stamp files in CLEANFILES
597        (s-enum-types-h): make enum stamps depend on Makefile
598
5992002-01-20  Havoc Pennington  <hp@pobox.com>
600
601        * gconf/Makefile.am: add gconf-enum-types.h/gconf-enum-types.c
602        files, thanks to Johan Dahlin
603
604        * gconf-2.0.pc.in (Libs): oops, we had Requires: bonobo-activation
605        still
606
6072002-01-16  Anders Carlsson  <andersca@gnu.org>
608
609        * gconf/gconf-client.c (gconf_client_get_full): Plug a leak.
610
6112002-01-14  Havoc Pennington  <hp@pobox.com>
612
613        * gconf/gconf.c (gconf_key_is_below): fix to handle root dir
614
615        * gconf/gconftool.c (main): add --unapply-schema mode
616
617        * gconf/gconf-database.c (impl_ConfigDatabase_set_schema): allow
618        unset schema if we get an empty schema name
619
620        * gconf/gconf.c (gconf_engine_associate_schema): allow NULL
621        schema name to unset the schema
622
623        * gconf/gconftool.c (do_recursive_unset): use new
624        gconf_engine_recursive_unset internal function to do the unset
625
626        * backends/xml-cache.c, backends/xml-dir.c: rearrange things
627        to try and make directories auto-disappear when empty
628
629        * backends/xml-backend.c (remove_dir): make this do nothing
630
631        * backends/xml-dir.c (dir_all_subdirs): cache subdir names in the
632        directory so we can cheaply check if we have subdirectories
633
634        * gconf/gconf-sources.c (gconf_sources_set_value): enhance the
635        other giant error message
636
637        * gconf/gconf-internals.c (gconf_activate_server): improve error
638        message to cover stale locks and explain how to active TCP for
639        ORBit
640
641        * gconf/gconf-sources.c (gconf_sources_recursive_unset): implement
642
643        * gconf/gconf.c (gconf_key_check): handle NULL key
644
645        * gconf/gconf-sources.c (gconf_sources_set_schema): allow NULL
646        schema name
647
648        * gconf/GConf.idl: add flags to recursive_unset
649
650        * gconf/gconf.c (gconf_engine_recursive_unset): Add this internal
651        API to use in gconftool etc.
652       
6532002-01-14  Havoc Pennington  <hp@redhat.com>
654
655        * gconf/gconf-client.c (gconf_client_get_full): fix segfault on
656        missing entry
657
6582002-01-12  Havoc Pennington  <hp@pobox.com>
659
660        * examples/basic-gconf-app.c (main): remove unused variable,
661        fix from  Markus Bertheau
662
663        * gconf/gconf-client.c (get): fix to always store the same
664        semantic thing in the cache, regardless of whether
665        user wanted the schema default (always pass use_default = TRUE
666        to GConfEngine)
667        (gconf_client_key_is_writable): avoid pointless copies if
668        possible, to make this fast
669
670        * gconf/gconf-schema.h: add padding to GConfSchema
671
672        * gconf/gconf-value.h: add padding to GConfEntry
673
674        * gconf/gconf-value.c (gconf_entry_equal): new internal function
675
676        * gconf/gconf-client.c: queue notifies to an idle handler, replace
677        CacheEntry with GConfEntry
678
679        * gconf/gconf-client.h (struct _GConfClientClass): add padding
680        (struct _GConfClient): add padding
681
6822001-12-11  Havoc Pennington  <hp@redhat.com>
683
684        * tests/testgconf.c (check_unset): fixes
685
6862002-01-10  Havoc Pennington  <hp@pobox.com>
687
688        * configure.in: version to 1.1.6
689        (GCONF_REVISION): increment
690
6912002-01-08  Mark McLoughlin  <mark@skynet.ie>
692
693        * backends/xml-dir.c:
694        (struct _Dir): kill unused subdir_cache.
695        (dir_sync): move incorrect assertion.
696
6972002-01-07  Mark McLoughlin  <mark@skynet.ie>
698
699        * gconf/gconf-database.c: (gconf_database_new):
700        * gconf/gconf.c: (gconf_get_config_listener):
701        * gconf/gconfd.c: (main): no need to explicitly activate CORBA objects,
702        the RootPOA has the IMPLICIT_ACTIVATION policy.
703
7042002-01-05  Havoc Pennington  <hp@pobox.com>
705
706        * gconf/gconf-client.c (gconf_client_cache): return bool for
707        whether the value in the cache changed
708        (notify_from_server_callback): short-circuit notification if a
709        value hasn't actually changed. would be better to do this
710        server-side, but that's a bit complicated for now.
711
712        * gconf/gconf-value.c (gconf_value_compare): new function,
713        internal for now to avoid API addition
714
715        * gconf/gconf-client.c (cache_entry_list_destructively): new
716        static function
717        (gconf_client_all_entries): cache the requested entries, if
718        we are monitoring the dir we get the values from.
719
720        * gconf/gconf-value.c (gconf_entry_copy): new function, internal
721        for now to avoid API addition
722
7232002-01-04  Havoc Pennington  <hp@pobox.com>
724
725        * gconf/gconf-client.c (gconf_client_class_init): add
726        GCONF_DEBUG_TRACE_CLIENT setting, to debug spew about
727        what's going on
728        (gconf_client_real_unreturned_error): also ignore
729        GCONF_ERROR_NO_WRITABLE_DATABASE since it's typically not
730        an error to report.
731
7322002-01-04  Havoc Pennington  <hp@pobox.com>
733
734        * gconf/gconf-client.c (gconf_client_preload): allow preloading
735        directories that are below directories being monitored, not just
736        the exact directory being monitored.
737
7382002-01-04  Havoc Pennington  <hp@pobox.com>
739
740        * gconf/gconf-database.c: support storing names of clients
741        and new ConfigDatabase3
742        (client_alive_predicate): fix backward predicate; we were removing
743        all live clients, and keeping all dead clients. Doh! Doh! Doh!
744
745        * gconf/gconf.c (gconf_engine_notify_add): use
746        add_listener_with_properties if available to send name of client
747        to the server
748
749        * gconf/GConf.idl: put in ConfigDatabase3 with a couple of new
750        methods, just to make this file more horrible
751       
7522002-01-04  Havoc Pennington  <hp@pobox.com>
753
754        * gconf/gconfd.c (main): if GCONF_DEBUG_OUTPUT is set,
755        enable gconf_log_debug_messages
756
7572002-01-03  Havoc Pennington  <hp@pobox.com>
758
759        * gconf/gconftool.c (main): honor
760        GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL to do nothing for
761        --makefile-install-mode
762 
763        * backends/xml-cache.c (cache_sync): fill in the error if we
764        return a failure code.
765
7662002-01-03  Havoc Pennington  <hp@pobox.com>
767
768        * gconf.m4.in: Add quotes to
769        GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas' so that "make
770        install sysconfdir=/foo" will work. May break some conceivable
771        usage of this variable.
772
7732001-12-22  Duarte Loreto <happyguy_pt@hotmail.com>
774
775        * configure.in: Added portuguese (pt) to ALL_LINGUAS
776
7772001-12-17  Havoc Pennington  <hp@pobox.com>
778
779        * gconf/gconf-listeners.c: reference count the listeners, make a
780        copy of listener lists and ref all listeners prior to doing the
781        notifies, to minimize reentrancy screwups.
782
7832001-12-17  Josh Barrow  <drleary@mac.com>
784
785        * examples/basic-gconf-app.c:
786        s/GLIB_DISABLE_DEPRECATED/G_DISABLE_DEPRECATED/
787
7882001-12-17  Darin Adler  <darin@bentspoon.com>
789
790        * doc/gconf/.cvsignore:
791        * examples/.cvsignore:
792        Update.
793
7942001-12-11  Havoc Pennington  <hp@redhat.com>
795
796        * gconf/gconfd.c (drop_old_clients): fix this
797
798        * gconf/gconf-database.c (client_alive_predicate): fix spelling in
799        log message
800
8012001-12-11  Havoc Pennington  <hp@redhat.com>
802
803        * gconf/gconfd.c (drop_old_clients): use
804        CORBA_Object_non_existent() instead of ConfigListener_ping
805
806        * gconf/gconf-database.c (client_alive_predicate): use
807        CORBA_Object_non_existent() instead of ConfigListener_ping
808
8092001-12-11  Havoc Pennington  <hp@redhat.com>
810
811        * gconf/gconf.c (gconf_engine_get_default): change to not start
812        gconfd immediately, so we can avoid starting it if
813        we're just going to shut it down, and just generally do
814        things lazily.
815        (gconf_shutdown_daemon): ignore NO_SERVER error code
816
817        * backends/xml-dir.c (dir_get_value): always get schema name, not
818        just if value is unset
819
820        * gconf/gconfd.c (main): don't free logname since there are atexit
821        handlers for now
822
823        * gconf/gconf-sources.c (gconf_sources_query_value): don't look
824        for a default value for the schema. Useless and adds a bit of
825        inefficiency.
826
827        * gconf/gconfd.c (main): set log handler for GLib
828        (log_handler): mask extra flags out of log level
829
830        * gconf/gconf-sources.c (gconf_sources_query_value): Fix this so
831        Gergo's bug doesn't happen; hope no other semantic gets broken.
832
833        * tests/testschemas.c: do some unbreaking, and put in a test that
834        exposes Gergo's bug (failure to read schema name if a key is set)
835
836        * tests/*: put in a big comment saying don't use these as example
837        code since they are ugly-ass and broken.
838
839Sun Dec  9 18:22:50 2001  Jonathan Blandford  <jrb@redhat.com>
840
841        * gconf.m4.in: Just when I think I understand the depths of the
842        bogosity autoconf, something else comes up to impress me.
843
8442001-12-09  Havoc Pennington  <hp@pobox.com>
845
846        * gconf/gconf-internals.c (gconf_load_source_path): for fuck's
847        sake - we've been reading the config source backward forever -
848        this has never fricking worked. Dammit.
849
850        * gconf/gconf-sources.c (gconf_sources_set_value): make huge error
851        message even more so
852        (gconf_sources_new_from_addresses): add debug log about config
853        source writability
854
8552001-12-08  Havoc Pennington  <hp@pobox.com>
856
857        * gconf/gconf-client.c: fix some warnings
858
859        * gconf/gconf-internals.h: try to fix gettext issues
860
8612001-12-08  Havoc Pennington  <hp@pobox.com>
862
863        * gconf/gconf-value.c (gconf_value_validate): take const arg
864
865        * gconf/gconf.c: add internal API to check that GConfEngine isn't
866        being used "underneath" its owning GConfClient, thus causing
867        cache inconsistencies. Bad hack, yay.
868
869        * gconf/gconf-client.c: Use new internal GConfEngine "exclusive
870        owner" API
871        (gconf_client_real_unreturned_error):
872        silently ignore GCONF_ERROR_OVERRIDDEN, because if the system
873        is "locked down" most apps will probably call gconf_client_set
874        anyway.
875
876        * gconf/gconf-client.h: fix comment to be accurate about how
877        overlaps are handled
878
8792001-12-06  Havoc Pennington  <hp@pobox.com>
880
881        * autogen.sh: fix up check for gettext to do glib-gettext instead
882
883        * configure.in: add gtk-doc checks and remove --docs-only
884        since I don't think --docs-only works and don't see how it could.
885
886        * doc/gconf/Makefile.am: make makefile use snazzy canonical
887        gtk-doc makefile from gtk
888
889        * doc/gconf/gconf.sgml: make it reflect current reality a bit
890        more.
891
892        * examples/basic-gconf-app.c: Update the example
893
894        * examples/complex-gconf-app.c: Move the old basic-gconf-app.c
895        into here.
896
897        * gconf/gconf-listeners.c (gconf_listeners_remove): remove
898        g_return_if_fail on 0 ID, since that will probably end up
899        happening from time to time
900
9012001-12-04  Havoc Pennington  <hp@redhat.com>
902
903        * gconf/gconf-internals.c (open_empty_locked_file): improve error
904
905        * gconf/gconftool.c (main): complain about using --config-source
906        but not --direct
907
908        * backends/xml-backend.c (resolve_address): don't try to lock
909        readonly sources; fixes the case where users install to a prefix
910        that they can write to, was causing problems for people using
911        build scripts.
912
913        * gconf/gconfd.c (gconf_set_exception): add missing value to case
914        statement so we don't crash
915
916        * examples/basic-gconf-app.c: update comment to say that the
917        example isn't really right anymore
918
919        * gconf/gconftool.c (process_schema_list): make sure we have an
920        element instead of a text node before we try to process it; kills
921        a bunch of irritating warnings.
922
923        * Makefile.am (SUBDIRS): remove standard-schemas subdir, should
924        have long ago
925
9262001-12-04  jacob berkman  <jacob@ximian.com>
927
928        * gconf/Makefile.am: add an explicit dependency on the built files
929
9302001-12-03  Laszlo Peter  <laca@ireland.sun.com>
931
932        * gconf/gconf-internals.c: oops, s/ulong_t/gulong/
933
9342001-12-03  Laszlo Peter  <laca@ireland.sun.com>
935
936        * gconf/gconf-internals.c (get_hostname): fix memory alignment
937        problem on Solaris.
938
9392001-12-02  Havoc Pennington  <hp@pobox.com>
940
941        * gconf/gconf-value.h: put casts in the accessor macros, so they
942        can accept void pointers. Doh.
943
9442001-11-26  Havoc Pennington  <hp@redhat.com>
945
946        * configure.in: version to 1.1.5
947
948Tue Nov 20 15:37:58 2001  Owen Taylor  <otaylor@redhat.com>
949
950        * gconf/gconf-client.c: Remove extraneous gobject/* includes.
951
9522001-11-18  Miles Lane  <miles@megapathdsl.net>
953
954        * gconf/gconf-client.h: replace include of gobject/gobject.h
955        with glib-object.h, due to a change in gobject/gobject.h
956        that forces an #error for all direct includes.
957        This checkin was approved by Havoc.
958
9592001-10-31  Havoc Pennington  <hp@pobox.com>
960
961        * configure.in: bump version to 1.1.4, and set revision to 1
962
963        * doc/gconf/Makefile.am: fix this
964
965        * doc/gconf/gconf.types: update
966       
9672001-10-31  Havoc Pennington  <hp@pobox.com>
968
969        * gconf/gconftool.c: add --recursive-unset command line option
970
9712001-10-31  Zbigniew Chyla  <cyba@gnome.pl>
972
973        * gconf/gconf-internals.c (gconf_activate_server): Plug leak.
974
9752001-10-30  Frederic Crozat  <fcrozat@mandrakesoft.com>
976
977        * backends/val-encode.c: add missing headers to remove
978        some warnings.
979
9802001-10-29  jacob berkman  <jacob@ximian.com>
981
982        * gconf-editor/gconf-editor.c (main): bind to GETTEXT_PACKAGE
983        rather than PACKAGE
984
985        * autogen.sh: call glib-gettextize
986
987        * configure.in: set the GETTEXT_PACKAGE to be more like the gnome
988        1 one
989
9902001-10-30  Abel Cheung  <maddog@linux.org.hk>
991
992        * configure.in: When probing for db3, check libdb-3.3, libdb-3.2 and
993          libdb-3.1 in addition to libdb-3 .
994
9952001-10-16  Ross Golder  <ross@golder.org>
996
997        * gconf.spec.in: updated installation paths
998
9992001-10-15  Havoc Pennington  <hp@redhat.com>
1000
1001        * gconf/gconftool.c (main): don't create config daemon for
1002        --get-default-source
1003        (main): shut down daemon in makefile install mode
1004
10052001-10-14  Havoc Pennington  <hp@redhat.com>
1006
1007        * configure.in: bump version, increment GCONF_CURRENT
1008        and GCONF_AGE due to API additions
1009
10102001-10-13  Jaka Mocnik  <jaka@gnu.org>
1011
1012        * configure.in: allow for db3 headers/includes installed in a
1013        strange location.
1014        * backends/Makefile.am: add BDB_CFLAGS to INCLUDES.
1015       
10162001-10-12  Havoc Pennington  <hp@redhat.com>
1017
1018        Merge from stable.
1019       
1020        * gconf/gconf.c (gconf_engine_set): check UTF-8 validity here,
1021        instead of at the higher levels
1022
1023        * gconf/gconf-value.c (gconf_value_validate): new internal function
1024
10252001-10-12  Havoc Pennington  <hp@redhat.com>
1026
1027        Merge from stable.
1028       
1029        * tests/testschemas.c (check_schema_storage): add some UTF-8
1030
1031        * tests/testpersistence.c: UTF-8 test
1032
1033        * tests/testgconf.c: add a UTF-8 test
1034
1035        * gconf/gconf.c: UTF-8 checks, and some indentation
1036
1037        * gconf/gconf-schema.c: UTF-8 checks
1038
1039        * gconf/gconf-value.c: add some UTF-8 robustness
1040
10412001-10-12  Havoc Pennington  <hp@redhat.com>
1042
1043        Merging from stable.
1044       
1045        * backends/xml-entry.c (entry_unset_value): don't translate "%s"
1046
1047        * backends/xml-cache.c (cache_sync_foreach): printf string screwup
1048
1049        * backends/xml-backend.c (query_value): fix printf string derived
1050        from untrusted data
1051        (query_value): ditto
1052
1053        * configure.in: ensure we find the right bdb headers, if we find
1054        the library, error if not. Reported by Samuel Stringham
1055
1056        * gconf/gconf-internals.c (gconf_double_to_string): use g_snprintf
1057        not plain snprintf for Solaris 2.5.1 friendliness
1058
1059        * doc/gconf/tmpl/gconf-value.sgml: fix docs to mention that pairs
1060        contain only primitive types; pointed out by Gregory Merchan
1061
1062        * configure.in (BDB_CFLAGS): patch from Nils Philippsen to detect
1063        DB 3.1 if available.
1064
10652001-10-11  Havoc Pennington  <hp@redhat.com>
1066
1067        * tests/testgconf.c (check_utils): add test for the key
1068        escaper/unescaper thingy
1069
1070        * gconf/gconf.c (gconf_escape_key): new function
1071        (gconf_unescape_key): new function
1072
10732001-10-10  Havoc Pennington  <hp@redhat.com>
1074
1075        * gconf/gconf.c (gconf_valid_key): disallow non-ASCII characters
1076        in key names
1077
10782001-10-10  Havoc Pennington  <hp@redhat.com>
1079
1080        * backends/xml-dir.c (dir_sync): fix to reflect bizarre behavior
1081        of xmlSaveFile() (it tries to unescape the filename as a URI,
1082        resulting in mangling my filename!)
1083
10842001-10-04  Havoc Pennington  <hp@redhat.com>
1085
1086        * gconf/gconf-internals.c (gconf_release_lock): do wack-ass juju
1087        to avoid .nfs23344534543 files appearing in the lock directory
1088        and causing warnings.
1089
10902001-10-04  Havoc Pennington  <hp@redhat.com>
1091
1092        * backends/xml-dir.c (dir_fill_cache_from_doc): remove an
1093        extra warning
1094
10952001-10-04  Havoc Pennington  <hp@redhat.com>
1096
1097        * gconf/gconf-internals.c (open_empty_locked_file): include
1098        strerror in the error message on lock failure
1099
11002001-10-01  Michael Meeks  <michael@ximian.com>
1101
1102        * gconf/gconf.h: fix deprecated guard.
1103
1104        * gconf/gconf.c (ctable_remove_by_client_id): remove unused.
1105
11062001-09-29  Carlos Perelló Marín <carlos@gnome-db.org>
1107
1108        * gconf/gconf.h (GCONF_DISABLE_DEPRECATED): closed a comment.
1109
11102001-09-28  Havoc Pennington  <hp@redhat.com>
1111
1112        * gconf/gconfd.c (main): fix write_byte_fd to always be initialized
1113
1114        * gconf/gconf-internals.c (gconf_get_current_lock_holder): read
1115        IOR file, not directory it's inside
1116
11172001-09-26  Havoc Pennington  <hp@redhat.com>
1118
1119        * gconf/gconf.h: mark gconf_init() deprecated
1120
1121        * gconf/Makefile.am (INCLUDES): libxml cflags
1122
1123        * gconf/gconf.c (gconf_init): make this a no-op, instead init on
1124        demand.
1125
1126        Merge from stable
1127       
1128        * gconf.m4.in: patch from Yanko Kaneti to have AM_GCONF_SOURCE
1129        define a GCONF_SCHEMA_FILE_DIR variable for the directory where
1130        schema files should be installed
1131
1132        * gconf/Makefile.am (install-data-local): don't install oafinfo
1133
1134        * configure.in: don't generate oafinfo
1135
1136        * gconf/gconftool.c (main): remove error message about running
1137        gconfd while installing schemas, instead we'll fail to get a lock.
1138
1139        * gconf/gconfd.c (main): redirect stdin/out/err to /dev/null
1140        instead of just closing them, saves ORBit some confusion
1141
1142        * backends/xml-cache.c (cache_clean): change the "items remain in
1143        cache" message to DEBUG level
1144 
1145        * gconf/gconf-internals.c (gconf_get_lock_or_current_holder):
1146        rearrange locking to just use fcntl()
1147 
1148        * gconf/gconf.c (gconf_engine_connect): fix error message in
1149        default daemon case
1150 
1151        * gconf/gconfd.c (gconf_main): reduce exit-after-unused timeout to
1152        2 minutes
1153 
1154        * gconf/Makefile.am (INCLUDES): add -DGCONF_BINDIR
1155 
1156        * gconf/gconf-internals.c: delete nanosleep junk
1157               
11582001-09-27  Havoc Pennington  <hp@redhat.com>
1159
1160        * backends/Makefile.am (INCLUDES): srcdir != builddir fixage
1161
1162        * configure.in: increment version for release
1163        (ORBIT_IDL): look for orbit-idl-2 using pkg-config
1164
11652001-09-17  Havoc Pennington  <hp@redhat.com>
1166
1167        * configure.in: look for orbit-idl-2 not orbit-idl,
1168        add option to explicitly enable/disable bdb backend
1169
11702001-09-08  Wang Jian  <lark@linux.net.cn>
1171
1172        * configure.in(ALL_LINGUAS): Renamed zh_CN.GB2312 to zh_CN.
1173
11742001-08-25  Darin Adler  <darin@bentspoon.com>
1175
1176        * backends/Makefile.am:
1177        * examples/Makefile.am:
1178        * gconf-editor/Makefile.am:
1179        * tests/Makefile.am:
1180        * wrappers/guile/Makefile.am:
1181        Got rid of extra unneeded -I directives.
1182
1183        * examples/basic-gconf-app.c:
1184        * examples/simple-controller.c:
1185        * examples/simple-view.c:
1186        Changed includes to use the normal <gconf/*> format, because
1187        that is both better for examples, and works fine when building
1188        gconf too, without any special -I trickery.
1189
11902001-08-19  Jesus Bravo Alvarez  <jba@pobox.com>
1191
1192        * configure.in: Added gl (Galician) to ALL_LINGUAS.
1193
11942001-08-17  Maciej Stachowiak  <mjs@noisehavoc.org>
1195
1196        * gconf/gconf-internals.c: (gconf_handle_oaf_exception): Handle
1197        rename for ParseFailed exception.
1198
11992001-08-15  Havoc Pennington  <hp@redhat.com>
1200
1201        Merge from stable.
1202       
1203        * backends/xml-backend.c (x_shutdown): ditto
1204        (resolve_address): ditto
1205
1206        * backends/bdb-backend.c (vtable_bdb_shutdown): ditto
1207        (vtable_bdb_resolve_address): ditto
1208
1209        * gconf/gconf-internals.c (gconf_load_source_path): ditto
1210
1211        * gconf/gconfd.c (gconf_server_load_sources): change to DEBUG
1212        level
1213
1214        * backends/xml-backend.c (g_module_check_init): change a log
1215        message to DEBUG level
1216
12172001-08-14  Michael Meeks  <michael@ximian.com>
1218
1219        * configure.in: depend on bonobo-activation >= 0.9.1
1220
1221        * gconf/Makefile.am: Update to install GNOME_Config.server.
1222
1223        * configure.in: update to GNOME_Config.server
1224
1225        * gconf/Makefile.am (-DIID): rename to GNOME_Config_Daemon
1226        to fit with the bonobo namespace guidelines.
1227
1228        * gconf/GNOME_Config.server.in: update & indent.
1229
12302001-08-13  Marco Pesenti Gritti  <mpeseng@tin.it>
1231
1232        * doc/gconf/gconf.sgml: small explanation about
1233        AM_GCONF_SOURCE_2 macro
1234       
12352001-08-13  Havoc Pennington  <hp@redhat.com>
1236
1237        Merge from stable.
1238       
1239        * gconf/gconf-internals.c (gconf_load_source_path): patch from
1240        Adam Spiers to honor variables in include lines
1241
1242        * gconf/gconf-database.c (notify_listeners_cb):
1243        indentation/whitespace changes
1244
1245        * backends/xml-entry.c (entry_fill_from_node): Only print a
1246        warning if there's no schema name. Avoids spurious warnings
1247        on nodes that only have a schema name.
1248
12492001-08-13  Michael Meeks  <michael@ximian.com>
1250
1251        * gconf/gconf-internals.c: remove nano_sleep; it's unused.
1252
1253        * configure.in: remove nanosleep check.
1254
12552001-08-07  Marco Pesenti Gritti  <mpeseng@tin.it>
1256
1257        * configure.in: remove the chmod on gconf-config,
1258        the file has been removed
1259        * gconf.m4.in: rename AM_GCONF_SOURCE to AM_GCONF_SOURCE_2
1260        to not break parallel installs
1261       
12622001-08-07  Marco Pesenti Gritti  <mpeseng@tin.it>
1263
1264        * gconf/gconf.m4.in: remove duplicate macro
1265       
12662001-08-07  Marco Pesenti Gritti  <mpeseng@tin.it>
1267
1268        * gconf/gconf.m4.in: New file. GCONF_SCHEMA_CONFIG_SOURCE macro
1269        * configure.in: add gconf.m4 to AC_OUTPUT
1270        * Makefile.am: add gconf.m4 to EXTRA_DIST and install-data-local
1271        Setup a default gconf source on make install.
1272        * galeon.spec.in: Distribute also the path file and
1273        the directories for the default source.
1274        * gconf/Makefile.am: install the default path as "path" instead
1275        of "path.example". Add GCONF_ETCDIR define.
1276        * gconf/gconftool.c: Add --get-default-source option.
1277
12782001-08-03  Martin Baulig  <baulig@suse.de>
1279
1280        * gconf/gconfd.oafinfo.in: Renamed -> gconfd.server.in.
1281
1282        * Makefile.am: Install gconfd.server into the correct dir
1283        for bonobo-activation.
1284
12852001-08-03  Abel Cheung <maddog@linux.org.hk>
1286
1287        * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
1288       
12892001-08-02  Havoc Pennington  <hp@pobox.com>
1290
1291        * configure.in: version 1.1.1
1292
1293        * autogen.sh: don't search for subdirs to autogen, that's just
1294        annoying if you have a make dist directory laying around
1295
12962001-08-01  Michael Meeks  <michael@ximian.com>
1297
1298        * port to bonobo-activation from oaf.
1299
13002001-07-28  Yanko Kaneti  <yaneti@declera.com>
1301
1302        * gconf/gconftool.c (main): s/all-pairs/all-entries/ in the error
1303        messages
1304
13052001-07-24  Darin Adler  <darin@bentspoon.com>
1306
1307        Merge from stable.
1308
1309        * acinclude.m4: Set BUILD_INCLUDED_LIBINTL for compatibility
1310        with newer versions of gettext.
1311
13122001-07-23  Havoc Pennington  <hp@redhat.com>
1313
1314        Merge from stable.
1315       
1316        * gconf/gconfd.c (main): don't warn about failure to create
1317        ~/.gconfd if EEXIST
1318
1319        * gconf/gconf.c (gconf_engine_all_entries): convert empty string
1320        to NULL
1321
1322        * gconf/gconf-database.c
1323        (impl_ConfigDatabase2_all_entries_with_schema_name): don't give
1324        ORBit any NULL strings in the array, avoids a core dump
1325
1326        * gconf/gconftool.c (list_pairs_in_dir): put a newline after the
1327        error message
1328
13292001-07-16  Havoc Pennington  <hp@redhat.com>
1330
1331        Merge from stable.
1332       
1333        * gconf/gconfd.c (main): add super-lame hack to
1334        pass currently-running gconfd to oafd if oafd has lamely leaked it
1335        due to lame-assness
1336
1337        * gconf/gconf-internals.c (gconf_get_lock): fix leak of object
1338        reference belonging to server that held the lock
1339        (gconf_get_lock_or_current_holder): add function to get current
1340        owner of a lock
1341
1342        * gconf/GConf.idl: add subclass of ConfigDatabase for some
1343        exciting new hacky functions.
1344
1345        So an extensible IDL interface would probably have simply passed
1346        XML messages. But then what's the point of an IDL interface, if
1347        it's just going to be parse_string() get_string()?  Hmm. Cosmic
1348        question. ;-)
1349
1350        * gconf/gconf.c (try_to_contact_server): make the error on
1351        OAF-did-not-set-exception really, really verbose, and explicitly
1352        say "do not file a GConf bug report." But with fixed OAF this
1353        shouldn't happen anymore anyhow.
1354
1355        * gconf/gconf-sources.c (gconf_sources_set_value): lengthy verbose
1356        error message about possible causes of lack of a config database.
1357        But my lame-ass hack above should keep this from happening so
1358        much.
1359       
13602001-07-18  Anders Carlsson  <andersca@gnome.org>
1361
1362        * configure.in: Remove gconf-config and gconf.m4 from AC_OUTPUT
1363
13642001-07-17  Anders Carlsson  <andersca@gnome.org>
1365
1366        * Makefile.am: Remove gconf-config and gconf.m4 from EXTRA_DIST
1367        and do not try to install them.
1368
1369        * gconf.m4.in: Remove this file.
1370
1371        * gconf-config.in: Remove this file.
1372
13732001-07-17  Darin Adler  <darin@bentspoon.com>
1374
1375        * gconf/gconf.c: (gconf_postinit):
1376        Let CORBA generate the ID instead of providing one ourselves.
1377
13782001-07-17  Laszlo Peter  <laca@ireland.sun.com>
1379
1380        * gconf/Makefile.am: remove the -Wno-unused flag; not portable.
1381
13822001-07-14  Kjartan Maraas  <kmaraas@gnome.org>
1383
1384        * configure.in: Added "nn" to ALL_LINGUAS.
1385       
13862001-07-13  Darin Adler  <darin@bentspoon.com>
1387
1388        Fix a bunch of warnings.
1389
1390        * backends/bdb-backend.c: (vtable_bdb_set_value): Add const.
1391        * backends/bdb.c: (bdb_put_value): Add const.
1392        * backends/bdb.h: Add const.
1393        * backends/val-encode.c: (bdb_serialize_value): Add const.
1394        * backends/val-encode.h: Add const.
1395        * backends/xml-backend.c: (set_value): Add const.
1396        * backends/xml-dir.c: (dir_set_value): Add const.
1397        * backends/xml-dir.h: Add const.
1398        * backends/xml-entry.h: Add const.
1399        * gconf/gconf-backend.c: (gconf_get_backend): Add const.
1400        * gconf/gconf-backend.h: Add const.
1401        * gconf/gconf-internals.c: (fill_corba_value_from_gconf_value),
1402        (corba_value_from_gconf_value),
1403        (fill_corba_schema_from_gconf_schema),
1404        (corba_schema_from_gconf_schema): Add const.
1405        * gconf/gconf-internals.h: Add const.
1406        * gconf/gconf-sources.c: (gconf_source_set_value),
1407        (gconf_sources_set_value): Add const.
1408        * gconf/gconf-sources.h: Add const.
1409        * gconf/gconf.c: (gconf_engine_set): Add const.
1410        * gconf/gconf.h: Add const.
1411
1412        * gconf/gconf-value.h:
1413        * gconf/gconf-value.c: (gconf_value_set_list): Remove const,
1414        because const GSList * doesn't do anything useful.
1415
1416        * backends/xml-entry.c: (entry_get_value), (entry_set_value),
1417        (entry_sync_if_needed), (entry_fill_from_node): Got rid of
1418        unused GValue * parameter to entry_sync_if_needed. Also, add
1419        const in one place.
1420
1421        * gconf/gconftool.c: (main): Add cast.
1422
14232001-07-07  Peter Williams  <peter@beta.newton.cx>
1424
1425        * backends/bdb*: s,uint32_t,guint32,g
1426
14272001-07-11  Michael Meeks  <michael@ximian.com>
1428
1429        * gconf/Makefile.am (CLEANFILES): add stamps so we can
1430        clean & make.
1431
14322001-07-03  Michael Meeks  <michael@ximian.com>
1433
1434        * configure.in: add ORBIT_IDL check.
1435
14362001-07-02  Carlos Perelló Marín <carlos@gnome-db.org>
1437
1438        * gconf/gconf-client.c: /s/g_signal_newc/g_signal_new to reflect
1439        the changes at glib2 module. Now It compiles.
1440
14412001-06-29  Laszlo Peter  <laca@ireland.sun.com>
1442
1443        * gconf/Makefile.am: Fix the marshaller rules to avoid looping.
1444
14452001-06-20  Peter Williams  <peterw@ximian.com>
1446
1447        * configure.in (ACLOCAL): Save flags to aclocal -- life
1448        easier when configure.in changes.
1449
14502001-06-15  Havoc Pennington  <hp@redhat.com>
1451
1452        * configure.in: remove library versioning for
1453        no-longer-existing gconf-gtk lib and Guile wrapper
1454
14552001-06-01  Peter Williams  <peterw@ximian.com>
1456
1457        * configure.in: Check if DB3 headers are in db3/db.h as well.
1458
1459        * acconfig.h: Add HAVE_DB3_DB_H
1460
1461        * backends/bdb.c: #include config.h to get HAVE_DB3_DB_H
1462
1463        * backends/bdb.h: Include the proper db.h
1464
14652001-05-11  Tomas O Connor  <tomas.oconnor@ireland.sun.com>
1466
1467        * gconf/gconf-internals.h, gconf/gconf-value.h: move
1468        gconf_value_new_from_string to make it a public API
1469
14702001-05-11  Havoc Pennington  <hp@redhat.com>
1471
1472       Merge from stable.
1473
1474        * gconf/gconfd.c (signal_handler): on SIGUSR1, enable/disable
1475        debug spew.
1476
1477        * gconf/gconf-internals.c (gconf_log): use a runtime variable to
1478        decide whether to log debug messages
1479
1480        * gconf/gconf-database.c, gconf/gconfd.c, gconf/gconf-internals.c:
1481        Change some GCL_WARNING to GCL_DEBUG to chill out logging of
1482        fairly normal events
1483
14842001-05-09  Havoc Pennington  <hp@redhat.com>
1485
1486        * gconf/Makefile.am: remove testgconfclient from build, should
1487        now be made nongraphical and stuck in tests/
1488
1489        * Makefile.am (SUBDIRS): remove "wrappers" from subdirs
1490
1491        * configure.in: remove Guile cruft, fix up pkg-config usage
1492
1493        * acinclude.m4: Use the pkg-config macros, remove gnome-common
1494        dependency. Requires CVS pkg-config, need a pkg-config release.
1495        (Since OAF doesn't build against ORBit1 anyway, I figured why not
1496        check this in too...)
1497       
14982001-04-28  Murray Cumming  <murrayc@usa.net>
1499
1500        * gconf/gconf-client.c, gconf/gconf-client.h,
1501          gconf/gconf-schema.c, gconf/gconf-schema.h,
1502          gconf/gconf-value.c, gconf/gconf-value.h,
1503          gconf/gconf.c, gconf/gconf.h: Use of const with function
1504          args. e.g. gconf_value_copy(const GConfValue* src).
1505
15062001-04-17  Michael Meeks  <michael@ximian.com>
1507
1508        * gconf/Makefile.am (dist-hook): don't distribute built
1509        sources.
1510
1511Wed Apr 11 08:07:11 2001  George Lebl <jirka@5z.com>
1512
1513        * gconf/gconf.c (gconf_engine_unref): If unreffing the default engine
1514          set the default_engine pointer to NULL
1515
15162001-04-02  Federico Mena Quintero  <federico@ximian.com>
1517
1518        * acinclude.m4: "sourceforge.net", not "sourceforce.net".
1519
15202001-03-24  Anders Carlsson   <andersca@gnu.org>
1521
1522        * configure.in (REBUILD): Add gconf-2.0.pc to AC_OUTPUT files.
1523
15242001-03-23  Marius Andreiana  <mandreiana@yahoo.com>
1525
1526        * configure.in: Added ro (Romanian) to ALL_LINGUAS
1527
15282001-03-18  Martin Baulig  <baulig@suse.de>
1529
1530        * gconf/gthreadpool.[ch]: Removed.
1531        * gconf/gconf-glib-private.h: Removed.
1532        * gconf/gconf-glib-public.h: Removed.
1533
1534        * gconf/gconf-client.[ch]: Moved here from wrappers/gtk/
1535        and migrated to use GObject.
1536
1537        * gconf/testgconfclient.c: Moved here from wrappers/gtk/.
1538
1539        * gconf/gconf-internals.h
1540        (gconf_CORBA_Object_hash, gconf_CORBA_Object_equal):
1541        New static inline functions.
1542
1543        * gconf/gconfmarshal.list: New file.
1544
1545        * gconf/gconftool.c: Use libxml 2.
1546
1547        * backends/xml-backend.c, backends/xml-cache.h,
1548        backends/xml-dir.c, backends/xml-dir.h,
1549        backends/xml-entry.c, backends/xml-entry.h: Use libxml 2.
1550
1551        * wrappers/gtk/*: Moved to gconf/.
1552
15532001-03-18  Martin Baulig  <baulig@suse.de>
1554
1555        We're now on the GNOME 2.0 platform.
1556
1557        * configure.in: Set MAJOR_VERSION to 2, use pkg-config to
1558        check for stuff; GTK+ is now optional and only used for
1559        the examples; depend on ORBit2.
1560
1561        * acinclude.m4: Add the contents of
1562        gnome-common/macros2/gnome-pkgconfig.m4 here.
1563
1564        * Makefile.am: Install gconf-2.0.pc.
1565
1566        * gconf-2.0.pc.in: New file.
1567
15682001-03-13  Kjartan Maraas  <kmaraas@gnome.org>
1569
1570        * backends/xml-entry.c: Merge from branch. Use xmlFree().
1571        * gconf/gconftool.c: Merge from branch. Use xmlFree() and
1572        don't free until after referencing stuff.
1573       
15742001-03-12  Timur Bakeyev  <timur@gnu.org>
1575
1576        * Makefile.am: Made warning printing a bit nicer.
1577       
15782001-03-06  Havoc Pennington  <hp@redhat.com>
1579
1580        Merge from stable.
1581       
1582        * gconf/gconfd.c (gconf_main): change the periodic timeout to 15
1583        minutes, to be a bit more aggressive about cleanup.
1584        (open_append_handle): add a timeout to close the
1585        saved_state filehandle after a short time, to avoid keeping
1586        descriptors open.
1587        (gconfd_need_log_cleanup): new internal function used to control
1588        whether the periodic cleanup function needs to save a log file
1589
15902001-02-27  Havoc Pennington  <hp@redhat.com>
1591
1592        * gconf.spec.in: %define prefix %{_prefix} instead of @prefix@
1593
15942001-02-27  Havoc Pennington  <hp@redhat.com>
1595
1596        Merge from stable.
1597       
1598        * gconf/gconfd.c (main): Close stdin/stdout/stderr. Also, set the
1599        log handler, so we don't need stdout/stderr to see GLib messages,
1600        they go to syslog.
1601
1602        * gconf/Makefile.am (INCLUDES): set the log domain
1603
1604        * gconf/gconftool.c (recurse_subdir_list): the list contains full
1605        directory paths to start with, fix from Colm
1606
1607        * gconf/gconfd.c (register_database): bugfix from Colm
1608
1609        * gconf/gconf.c (lookup_engine): fix from Colm to check that we
1610        have an engines hash
1611        (gconf_engine_get_for_address): improve warning message, fix from
1612        Colm
1613        (gconf_engine_remove_dir): new function from Colm, this was
1614        implemented on the server side but somehow never exported.
1615
1616        * gconf/gconf-database.c (gconf_database_get_persistent_name): Fix
1617        from Colm to handle the case of empty databases (no sources).
1618
16192001-02-05  Havoc Pennington  <hp@redhat.com>
1620
1621        File permissions fixes, problem pointed out by Steve Fox.
1622       
1623        * backends/xml-dir.c (dir_sync): chmod() the XML file after
1624        xmlSaveFile creates it
1625
1626        * gconf/gconfd.c (main): following Stevens advice for daemons, we
1627        were calling umask(0), change to umask(022). We need a predictable
1628        umask, but a safer one would be good since this is a per-user
1629        daemon not a system daemon.
1630       
1631        * backends/dir-utils.c (mode_t_to_mode): make this more portable,
1632        for paranoia
1633
1634        * backends/xml-dir.c (dir_load): We were getting directory
1635        permissions from the %gconf.xml file, instead of from the XML root
1636        directory. Fix.
1637
16382001-01-23  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>
1639
1640        * configure.in: Add 'sk' to ALL_LINGUAS
1641
16422001-01-21  Havoc Pennington  <hp@pobox.com>
1643
1644        * configure.in: change version to 1.1
1645       
1646        Sync from stable
1647       
1648        * backends/xml-entry.c (schema_subnode_extract_data): don't warn
1649        about <local_schema> with no locale field, because that's normal
1650        for the default case
1651        (schema_node_extract_value): use <local_schema> with no locale
1652        if it exists and we don't find anything better
1653
1654        * tests/testschemas.c (check_schema_use): fix indentation and mem
1655        leaks
1656
1657        * gconf/gconftool.c (do_get): print default value from schema
1658
16592000-12-19  Rebecca Schulman  <rebecka@eazel.com>
1660
1661        * gconf/gconfd.c: (gconf_server_load_sources):
1662        Added a return value to a g_slist_append that would
1663        cause a segfault in some cases.
1664
1665Fri Dec 01 00:54:33 2000  George Lebl <jirka@5z.com>
1666
1667        * gconf/gconf-locale.c (gconf_split_locale):  When inserting "C"
1668          into a list, dup it first to avoid a possible crash later.
1669
16702000-11-30  Havoc Pennington  <hp@redhat.com>
1671
1672        * gconf/gconf.c (gconf_engine_unset): Fix dereference of NULL GError**
1673
16742000-11-20  Havoc Pennington  <hp@redhat.com>
1675
1676        * doc/gconf/Makefile.am: Fix "make scan" to actually work, so
1677        you can build the docs
1678
16792000-11-11  Havoc Pennington  <hp@pobox.com>
1680
1681        * gconf/gconf-value.c (gconf_entry_set_is_writable): Add this
1682        function
1683
16842000-11-05  Havoc Pennington  <hp@pobox.com>
1685
1686        * gconf/gconf-glib.c, gconf/gconf-glib-private.h: Remove the
1687        GMarkup and Unicode stuff, turned out to be unnecessary.
1688        Left only GError.
1689
16902000-11-05  Havoc Pennington  <hp@pobox.com>
1691
1692        * gconf/gconfd.c (parse_listener_entry): fix strtoul error
1693        checking
1694
1695        * gconf/gconf-internals.c (gconf_string_to_gulong): Fix error
1696        checking on strtoul
1697
16982000-11-05  Havoc Pennington  <hp@pobox.com>
1699
1700        * gconf/gconf-glib.c (g_propagate_error): Sync from GLib,
1701        should fix one very minor memory leak in GConf
1702
17032000-10-31  Almer S. Tigelaar  <almer1@dds.nl>
1704
1705        * configure.in: Add 'nl' to ALL_LINGUAS
1706
17072000-10-26  Havoc Pennington  <hp@pobox.com>
1708
1709        * configure.in: Bump version to 0.11
1710
17112000-10-25  Havoc Pennington  <hp@pobox.com>
1712
1713        * wrappers/gtk/gconf-client.c: remove get_nocopy, since it can't
1714        be implemented since we don't cache everything. Oops.
1715
17162000-10-16  Havoc Pennington  <hp@pobox.com>
1717
1718        * wrappers/gtk/gconf-client.c
1719        (gconf_client_real_unreturned_error): implement default error
1720        handler that prints to stderr
1721        (gconf_client_key_is_writable): hmm, this function didn't compile
1722        very cleanly
1723
1724        * wrappers/gtk/gconf-client.h: Remove the ParentWindowFunc
1725        concept. Two reasons: a) it was really hard for users to implement
1726        such a thing, and if they did then implementing an error dialog
1727        function was pretty trivial also b) decided to make the default
1728        error handler use fprintf(stderr) since GConfClient is going to
1729        move into the main GConf library and thus not depend on GTK.
1730
1731        So, this is mild API breakage (but hopefully no one was using the
1732        feature anyway).
1733       
17342000-10-10  Christophe Merlet  <christophe@merlet.net>
1735
1736        * backends/Makefile.am: Added README.bdb in EXTRA_DIST.
1737
1738        * gconf/gconf-glib.c: Corrected mispelling string.
1739
17402000-10-10  Havoc Pennington  <hp@pobox.com>
1741
1742        * gconf/gconf-value.c (gconf_value_to_string): fix segfault when
1743        pair contains unset car or cdr
1744        (gconf_value_set_car): allow setting car or cdr of a pair to
1745        NULL. I'm not sure if this is the normal thing in the code
1746        right now, but, hmm.
1747
1748        * gconf/gconf-sources.c (gconf_sources_all_entries): fix
1749        cut-and-paste error resulting in NULL pointer dereference.
1750
17512000-10-08  Havoc Pennington  <hp@pobox.com>
1752
1753        gconfd should now exit when not in use.
1754       
1755        * gconf/gconf-database.c (gconf_database_drop_dead_listeners):
1756        function to drop any listeners with dead clients.
1757
1758        * gconf/gconfd.c (drop_old_databases): before checking
1759        whether the listener count is 0, clean up listeners belonging
1760        to dead clients.
1761
1762        * gconf/gconf-listeners.c (gconf_listeners_remove_if): New
1763        function removes listeners matching some predicate
1764        (ltable_remove): fix some indentation
1765
17662000-10-08  Havoc Pennington  <hp@pobox.com>
1767
1768        * configure.in: version to 0.10
1769
17702000-10-06  Havoc Pennington  <hp@pobox.com>
1771
1772        * wrappers/gtk/gconf-client.c: indentation/formatting
1773
1774        * gconf/gconfd.c (parse_listener_entry): extra paranoia error
1775        check. Also, make log messages level DEBUG, not WARNING.
1776
17772000-10-06  Havoc Pennington  <hp@pobox.com>
1778
1779        * configure.in: check for flockfile.
1780        Check for BDB, but don't make it fatal; do an AM_CONDITIONAL and
1781        don't build the BDB backend if it's not found.
1782
1783        * gconf/gconfd.c (main): unregister with OAF after all shutdown is
1784        complete.
1785        (signal_handler): do the full, clean shutdown on SIGTERM; should
1786        reduce the damage caused by those pesky killall gconfd scripts ;-)
1787        Try to do the same on FPE and PIPE, though it's not likely to
1788        work, it doesn't hurt to try.
1789        (logfile_read): rewrite the logfile reading code; somewhat more
1790        robust, possibly.
1791
1792        * gconf/gconf-database.c, gconf/gconfd.c: Make all CORBA
1793        implementation return immediately with an error if we're currently
1794        shutting down. We'd just unregister with OAF, or deactivate our
1795        objects, but then another gconfd would start up before we finish
1796        cleaning up our stuff and introduce a mess of race
1797        conditions. Instead clients will automatically retry lots of times
1798        if they get the IN_SHUTDOWN error. Actually this possibly
1799        shouldn't even happen, since we aren't normally in the main loop
1800        once we start to shut down, I don't think - not sure.
1801       
1802        * gconf/gconfd.c (gconf_set_exception): add ConfigInShutdown
1803
1804        * gconf/GConf.idl: add ConfigInShutdown error
1805
1806        * gconf/gconf.c (corba_errno_to_gconf_errno): add ConfigInShutdown
1807
1808        * gconf/gconf-error.h: two error codes had the same integer value.
1809        Also, add GCONF_ERROR_IN_SHUTDOWN
1810
1811        * gconf/gconfd.c (gconfd_in_shutdown): Add a flag
1812        to indicate we're shutting down; all operations will
1813        return an error at that point.
1814
1815        * gconf/gconf.c (gconf_server_broken): treat ConfigInShutdown
1816        as a broken server.
1817       
18182000-10-06  Colm Smyth  <colm.smyth@sun.com>
1819
1820        * Committed BerkeleyDB back-end:-
1821
1822          backends/bdb.c backends/bdb.h backends/bdb-backend.c
1823          backends/val-encode.c backends/val-encode.h
1824          backends/dir-utils.c backends/dir-utils.h backends/README.bdb
1825
1826        * Changes to make GConf build with an ISO C compiler:-
1827
1828          configure.in backends/Makefile.am backends/xml-cache.c
1829          gconf/gconf-database.c gconf/gconf-sources.c gconf/gconfd.c
1830          tests/testchangeset.c tests/testencode.c tests/testgconf.c
1831          tests/testlisteners.c tests/testpersistence.c
1832          tests/testschemas.c
1833
1834
18352000-10-03  Robin * Slomkowski  <rslomkow@eazel.com>
1836
1837        * gconf.spec.in:/etc/etc is not a directory
1838        OK I am less foolish now
1839
18402000-10-03  Robin * Slomkowski  <rslomkow@eazel.com>
1841
1842        * gconf.spec.in: updated the spec file again
1843        if you are interested we are trying to track it
1844        http://tinderbox.eazel.com
1845
18462000-10-03  Havoc Pennington  <hp@redhat.com>
1847
1848        * gconf/gconfd.c (close_append_handle): set invalid FILE* to
1849        NULL afterward, avoid segfaults.
1850
1851        * Makefile.am: add install-schemas target here which recurses
1852        into standard-schemas and runs install-schemas
1853
1854        * standard-schemas/Makefile.am (install-schemas): Move schema
1855        installation to a special target install-schemas which must be
1856        run manually _after_ make install. This should resolve problems
1857        people are having with RPMs and such. However it means spec files
1858        have to explicitly add a 'make install-schemas'
1859
18602000-09-29  Havoc Pennington  <hp@pobox.com>
1861
1862        * gconf/gconf.c (drop_all_caches): don't spew warnings here for
1863        now.
1864        (invalidate_cached_values): no spew
1865        (update_listener): remove more spew
1866
18672000-09-29  Havoc Pennington  <hp@pobox.com>
1868
1869        * gconf/gconf.c (ctable_reinstall): we were overwriting the hash
1870        key before trying to remove the old server ID from the hash, so
1871        the removal failed, leading to an assertion failure later (this
1872        hopefully fixes one of the bugs reported by Ramiro, if not then
1873        I'll keep looking)
1874
18752000-09-26  Havoc Pennington  <hp@pobox.com>
1876
1877        * gconf/gconf-locale.c (gconf_locale_cache_expire): fix a
1878        static initialization with non-const value
1879
18802000-09-25  Havoc Pennington  <hp@pobox.com>
1881
1882        Bug fixes and portability issues reported by Colm Smyth
1883       
1884        * gconf/gconf-sources.c (gconf_sources_query_value): fix NULL
1885        pointer dereference
1886
1887        * s/__FUNCTION__/G_GNUC_FUNCTION/g;
1888       
1889        * configure.in: Add check for GCC before using -Wall (can't
1890        believe no one has _ever_ tried building GConf without gcc,
1891        but it appears so...)
1892
1893        * gconf/gconftool.c: use N_ not _ with static strings.
1894
1895        * tests/testschemas.c: Don't include locale.h
1896
1897        * gconf/gconf-internals.h: Remove some of the #defines from
1898        the non-ENABLE_NLS case.
1899
19002000-09-24  Havoc Pennington  <hp@pobox.com>
1901
1902        * NEWS: Put release notes for 0.9 in here.
1903
19042000-09-24  Havoc Pennington  <hp@pobox.com>
1905
1906        * gconf/gconfd.c (gconf_main): With debugging turned on, use
1907        obscenely short timeout for periodic cleanups, to ensure bugs
1908        get triggered.
1909
1910        * gconf/gconf-database.c (impl_ConfigDatabase_all_dirs): Set
1911        _release to TRUE for sequences
1912        (impl_ConfigDatabase_all_entries): ditto
1913
1914        * gconf/gconfd.c (half_hour_timeout): exit only if client count is
1915        0 after dropping all dead clients.
1916       
1917        * gconf/gconf-database.c (impl_ConfigDatabase_all_dirs): Don't
1918        put memory in the out param if we set an exception
1919        (impl_ConfigDatabase_all_entries): Ditto
1920
1921        * backends/xml-dir.c (dir_all_subdirs): Fix a memory leak
1922
1923        * gconf/gconfd.c: Implement client list logging
1924
1925        * gconf/gconf.c: Add self to the server's client list
1926        whenever we get a new server objref
1927
19282000-09-23  Havoc Pennington  <hp@pobox.com>
1929
1930        * gconf/gconfd.c: Implement add/remove client methods;
1931        still need to log these to disk, and on restart tell the
1932        logged clients to drop their caches.
1933
1934        * gconf/GConf.idl: Add methods on ConfigServer to maintain
1935        a list of active clients; this allows us to invalidate client
1936        caches on daemon restart.
1937
19382000-09-21  Havoc Pennington  <hp@pobox.com>
1939
1940        * configure.in: remove intl/Makefile
1941
1942        * Makefile.am: remove intl subdir
1943
19442000-09-17  Havoc Pennington  <hp@pobox.com>
1945
1946        * gconf/gconf.c: Update to reflect IDL change
1947
1948        * gconf/GConf.idl: Change invalidate_cached_values() to take
1949        multiple keys to invalidate; better efficiency that way
1950
19512000-09-17  Havoc Pennington  <hp@pobox.com>
1952
1953        * gconf/gconf-database.c: Add new methods on ConfigDatabase
1954
1955        * gconf/gconf.c: Add new methods on ConfigListener, but they
1956        do nothing at the moment
1957
1958        * gconf/GConf.idl: Add some methods to ConfigListener to tell
1959        clients when they need to drop cached values Add batch_lookup()
1960        and batch_change() methods to ConfigDatabase so we can implement
1961        them later
1962
19632000-09-16  Havoc Pennington  <hp@pobox.com>
1964
1965        * gconf/gconf.c (gconf_engine_key_is_writable): And actually
1966        implement it here. Doh.
1967
1968        * wrappers/gtk/gconf-client.c (gconf_client_key_is_writable): Gee,
1969        forgot to actually implement this function after implementing all
1970        the backend work for it...
1971
1972        * gconf/gconf.c (corba_errno_to_gconf_errno): add
1973        NO_WRITABLE_DATABASE handling here also
1974
1975        * gconf/gconfd.c (gconf_set_exception): handle
1976        NO_WRITABLE_DATABASE error
1977
1978        * gconf/GConf.idl: Add NoWritableDatabase to error type enum
1979
1980        * wrappers/gtk/testgconfclient.c (entry_attached_to): Update
1981        to properly handle writability
1982
1983        * examples/simple-controller.c (main): set entry sensitivity
1984        properly
1985
1986        * examples/basic-gconf-app.c (main): Remove ref/sink and destroy,
1987        just use plain refcounting
1988        (create_config_entry): Set entry sensitivity according to key
1989        writability
1990
1991        * wrappers/gtk/gconf-client.c (gconf_client_finalize): Move all
1992        cleanup to finalize, remove destroy handler     
1993
19942000-09-16  Havoc Pennington  <hp@pobox.com>
1995
1996        * doc/gconf/tmpl/gconf-value.sgml: Update some docs
1997
1998        * wrappers/gtk/gconf-client.c (notify_listeners_callback): Update
1999        to reflect new callback signature for GConfClientNotifyFunc
2000
2001        * gconf/gconf-sources.c (gconf_sources_set_value): Make it an
2002        error to if we try to write a value for a non-writable source.
2003        This is new; it used to silently fail.
2004
2005        * gconf/gconf-database.c (gconf_database_notify_listeners): Add
2006        is_writable here
2007
2008        * gconf/GConf.idl: Add writable flag to notification
2009
2010        * gconf/gconf.h: Update GConfNotifyFunc to have fewer args, and
2011        a GConfEntry is just passed in (since I was going to have
2012        to add an is_writable arg, and passing in a GConfEntry
2013        gives us future extensibility against this sort of thing)
2014        BREAKS USER CODE, many apologies.
2015
2016        * wrappers/gtk/gconf-client.c (gconf_client_get_entry): Update
2017        to reflect GConfEngine changes
2018
2019        * gconf/gconf.c (gconf_engine_all_entries): Get the writability
2020        stuff
2021        (gconf_engine_get_full): rename to gconf_value_get_entry
2022        and return an entry; drop the is_default argument.
2023
2024        * gconf/gconf-sources.c (gconf_sources_query_value): Implement
2025        finding out if a value is writable
2026        (gconf_sources_all_entries): Implement setting is_writable
2027        flag on the entries
2028
2029        * gconf/gconf-value.c (gconf_entry_new_nocopy): Default to
2030        the entry being writable
2031
2032        * gconf/gconf-database.c: Change to match IDL changes
2033
2034        * gconf/GConf.idl (lookup_with_locale): Add out param for
2035        writability
2036        (all_entries): Add out param for writability
2037
2038        * gconf/gconf-value.h: Add is_writable field to GConfEntry
2039        (gconf_entry_get_is_writable): Add this
2040
2041        * wrappers/gtk/gconf-client.c (gconf_client_key_is_writable): Add
2042        the matching stub here
2043
2044        * gconf/gconf.c (gconf_engine_key_is_writable): Go ahead and add
2045        this function so we can implement it later, but it always returns
2046        TRUE at the moment.
2047
2048        * gconf/gconf-changeset.c (gconf_change_set_set_user_data,
2049        gconf_change_set_get_user_data): Add user data for language
2050        bindings
2051
2052        * gconf/gconf.c (gconf_engine_set_user_data,
2053        gconf_engine_get_user_data): Add user data for language
2054        bindings
2055
20562000-09-15  Havoc Pennington  <hp@redhat.com>
2057
2058        * s/gconf_concat_key_and_dir/gconf_concat_dir_and_key/g
2059
20602000-09-14  Havoc Pennington  <hp@pobox.com>
2061
2062        * gconf/gconf.c (gconf_engine_all_dirs): Update to
2063        return fully qualified name in GConfEntry
2064        (gconf_engine_all_entries): missed the local case
2065        earlier when adapting it to use fully-qualified name
2066
2067        * acinclude.m4: Add never-use-included-gettext macro
2068
2069        * configure.in: Bump version to 0.9
2070
20712000-09-14  Darin Adler  <darin@eazel.com>
2072
2073        * backends/xml-dir.c: (dir_load): Fixed code that set up file mode
2074        to always be 0600 to instead inherit from parent directory as
2075        intended.
2076       
2077        * gconf/gconf-sources.c: (gconf_sources_new_from_addresses):
2078        Removed unused variable.
2079        * tests/.cvsignore: Added some generated files.
2080
20812000-09-13  Havoc Pennington  <hp@redhat.com>
2082
2083        * More renaming:
2084
2085        s/gconf_meta_info_schema/gconf_meta_info_get_schema/g;
2086        s/gconf_meta_info_mod_user/gconf_meta_info_get_mod_user/g;
2087        s/gconf_meta_info_mod_time/gconf_meta_info_mod_time/g;
2088
2089        s/gconf_entry_key/gconf_entry_get_key/g;
2090        s/gconf_entry_value/gconf_entry_get_value/g;
2091        s/gconf_entry_schema_name/gconf_entry_get_schema_name/g;
2092        s/gconf_entry_is_default/gconf_entry_get_is_default/g;
2093
2094        s/gconf_value_string/gconf_value_get_string/g;
2095        s/gconf_value_int/gconf_value_get_int/g;
2096        s/gconf_value_float/gconf_value_get_float/g;
2097        s/gconf_value_list_type/gconf_value_get_list_type/g;
2098        s/gconf_value_list/gconf_value_get_list/g;
2099        s/gconf_value_car/gconf_value_get_car/g;
2100        s/gconf_value_cdr/gconf_value_get_cdr/g;
2101        s/gconf_value_bool/gconf_value_get_bool/g;
2102        s/gconf_value_schema/gconf_value_get_schema/g;
2103
2104        s/gconf_schema_type/gconf_schema_get_type/g;
2105        s/gconf_schema_list_type/gconf_schema_get_list_type/g;
2106        s/gconf_schema_car_type/gconf_schema_get_car_type/g;
2107        s/gconf_schema_cdr_type/gconf_schema_get_cdr_type/g;
2108        s/gconf_schema_locale/gconf_schema_get_locale/g;
2109        s/gconf_schema_short_desc/gconf_schema_get_short_desc/g;
2110        s/gconf_schema_long_desc/gconf_schema_get_long_desc/g;
2111        s/gconf_schema_owner/gconf_schema_get_owner/g;
2112        s/gconf_schema_default_value/gconf_schema_get_default_value/g;
2113
21142000-09-13  Havoc Pennington  <hp@redhat.com>
2115
2116        * gconf/gconf.c (gconf_engine_all_entries): Put full key in
2117        GConfEntry (but we only get the relative key over the
2118        CORBA wire)
2119
2120        * wrappers/gtk/gconf-client.c (cache_pairs_in_dir): Change to
2121        reflect fact that GConfEntry now contains full key
2122
2123        * gconf/gconftool.c (list_pairs_in_dir): Change to reflect full
2124        key in GConfEntry
2125
2126        * doc/gconf/tmpl/gconf-value.sgml: updated GConfEntry docs on this
2127        matter.
2128       
21292000-09-11  Havoc Pennington  <hp@redhat.com>
2130
2131        * Actually use gettext. Involves checking in configure.in, linking
2132        to it in Makefile.am, making _() do the right thing.
2133
2134        I have gettext in libc instead of -lintl though, so I'm not going
2135        to see Makefile bugs - maybe someone can check on it.
2136
21372000-09-10  Havoc Pennington  <hp@pobox.com>
2138
2139        * gconf/gconf-value.c (gconf_entry_new): New function
2140        (gconf_entry_set_value): New function
2141
21422000-09-10  Havoc Pennington  <hp@pobox.com>
2143
2144        * Another rename fest:
2145
2146        #!/usr/bin/perl -pi.bak
2147
2148        ## note that this regexp could affect non-GConf stuff
2149        s/writeable/writable/g;
2150
2151        s/gconf_meta_info_destroy/gconf_meta_info_free/g;
2152        s/gconf_database_destroy/gconf_database_free/g;
2153        s/gconf_source_destroy/gconf_source_free/g;
2154        s/gconf_sources_destroy/gconf_sources_free/g;
2155        s/gconf_locale_cache_destroy/gconf_locale_cache_free/g;
2156
21572000-09-10  Havoc Pennington  <hp@pobox.com>
2158
2159        * gconf/gconf-value.c (gconf_value_new): don't use
2160        GCONF_INTERNAL_VALUE_TYPE_VALID
2161
2162        * gconf/gconf-internals.h, gconf/gconf-error.h:
2163        (gconf_error_new)
2164        (gconf_set_error)
2165        (gconf_compose_errors):
2166        Move these to gconf-internals.h, now they aren't needed due
2167        to GError
2168
2169        * gconf/gconf.c: Get rid of GConfEnginePrivate, just define struct
2170        _GConfEngine in the private .c file, like a sane person.
2171
2172        * gconf/gconf-value.h: remove GCONF_INTERNAL_VALUE_TYPE_VALID
2173
2174        * gconf/gconf.h: #ifdef the GNOME module system and popt stuff for
2175        GNOME 1.4. This stuff is tied to GNOME 2.0 and still unstable in
2176        that respect; should not be used before GNOME 2.0
2177        (gconf_get_string): forgot to rename this earlier
2178       
21792000-09-09  Havoc Pennington  <hp@pobox.com>
2180
2181        * gconf/gconfd.c (half_hour_timeout): Convert one_hour_timeout to
2182        half_hour_timeout() to more agressively prune resources. In the
2183        half hour timeout, if we have no connected listeners on any
2184        database, shut down gconfd. (We might want to make the timeout
2185        length configurable; and for laptops people might not want any
2186        timeouts at all, since it will wake up their laptop.)
2187        (fast_cleanup): Remove comment about getting incoming connections
2188        after shutting things down; this is no longer a problem because
2189        we deactivate databases in the POA
2190
21912000-09-09  Havoc Pennington  <hp@pobox.com>
2192
2193        * gconf/Makefile.am (libgconf_1_la_SOURCES): Move gconf-backend.h
2194        here, I don't see why it was in the public headers
2195
2196
2197        Throughout, rename a bunch of stuff:
2198
2199        #!/usr/bin/perl -pi.bak
2200
2201        s/gconf_notify_add/gconf_engine_notify_add/g;
2202        s/gconf_notify_remove/gconf_engine_notify_remove/g;
2203        s/gconf_get_without_default/gconf_engine_get_without_default/g;
2204        s/gconf_get_full/gconf_engine_get_full/g;
2205        s/gconf_get_with_locale/gconf_engine_get_with_locale/g;
2206        s/gconf_get_default_from_schema/gconf_engine_get_default_from_schema/g;
2207        s/gconf_unset/gconf_engine_unset/g;
2208        s/gconf_associate_schema/gconf_engine_associate_schema/g;
2209        s/gconf_all_entries/gconf_engine_all_entries/g;
2210        s/gconf_all_dirs/gconf_engine_all_dirs/g;
2211        s/gconf_suggest_sync/gconf_engine_suggest_sync/g;
2212        s/gconf_dir_exists/gconf_engine_dir_exists/g;
2213        s/gconf_get_float/gconf_engine_get_float/g;
2214        s/gconf_get_int/gconf_engine_get_int/g;
2215        s/gconf_get_bool/gconf_engine_get_bool/g;
2216        s/gconf_get_schema/gconf_engine_get_schema/g;
2217        s/gconf_get_list/gconf_engine_get_list/g;
2218        s/gconf_get_pair/gconf_engine_get_pair/g;
2219        s/gconf_set_float/gconf_engine_set_float/g;
2220        s/gconf_set_int/gconf_engine_set_int/g;
2221        s/gconf_set_string/gconf_engine_set_string/g;
2222        s/gconf_set_bool/gconf_engine_set_bool/g;
2223        s/gconf_set_schema/gconf_engine_set_schema/g;
2224        s/gconf_set_list/gconf_engine_set_list/g;
2225        s/gconf_set_pair/gconf_engine_set_pair/g;
2226
2227        s/gconf_commit_change_set/gconf_engine_commit_change_set/g;
2228        s/gconf_create_reverse_change_set/gconf_engine_reverse_change_set/g;
2229        s/gconf_create_change_set_from_currentv/gconf_engine_change_set_from_currentv/g;
2230        s/gconf_create_change_set_from_current/gconf_engine_change_set_from_current/g;
2231
2232        s/gconf_schema_destroy/gconf_schema_free/g;
2233        s/gconf_value_destroy/gconf_value_free/g;
2234        s/gconf_listeners_destroy/gconf_listeners_free/g;
2235        s/gconf_entry_destroy/gconf_entry_free/g;
2236
2237        s/gconf_client_create_change_set_from_current/gconf_client_change_set_from_current/g;
2238        s/gconf_client_create_change_set_from_currentv/gconf_client_change_set_from_currentv/g;
2239        s/gconf_client_create_reverse_change_set/gconf_client_reverse_change_set/g;
2240
2241        ## These require some care, since they can be the prefix for unrelated stuff.
2242        s/gconf_get /gconf_engine_get /g;
2243        s/gconf_set /gconf_engine_set /g;
2244
2245        s/gconf_get\(/gconf_engine_get (/g;
2246        s/gconf_set\(/gconf_engine_set (/g;
2247
2248       
22492000-09-09  Havoc Pennington  <hp@pobox.com>
2250
2251        * gconf/gconf-database.c (gconf_database_add_listener)
2252        (gconf_database_remove_listener): immediately log the addition
2253        or removal to the saved state file, which is now in a streaming
2254        format
2255        (gconf_database_get_persistent_name): abstraction for getting
2256        the address of the database, of "def" if it's the default one
2257        (gconf_database_log_listeners_to_string): replaces conversion
2258        from database to markup node; no longer using GMarkup here
2259
2260        * gconf/gconf-listeners.c (gconf_listeners_get_data):
2261        new function to get listener data for a connection ID
2262
2263        * gconf/gconfd.c (one_hour_timeout): save the logfile in the
2264        timeout, to compress it since we have just been appending over the
2265        last hour
2266        (logfile_read, logfile_save): rewrite to use new format, not the
2267        GMarkup format
2268
2269        * gconf/gconf-internals.c (gconf_object_to_string): Add
2270        this function
2271
22722000-09-04  Havoc Pennington  <hp@pobox.com>
2273
2274        * doc/gconf/Makefile.am (LDFLAGS): libs have been renamed
2275
22762000-08-31  Havoc Pennington  <hp@redhat.com>
2277
2278        * Massive rename from GConfError to GError
2279
2280        * gconf/gconf-error.h, gconf/gconf-error.c: Remove
2281        redundant-with-GError stuff; add GCONF_ERROR domain
2282        macro
2283
22842000-08-30  Havoc Pennington  <hp@redhat.com>
2285
2286        * gconf/gconfd.c (restore_listener): use gconf_string_to_gulong
2287        instead of atoi for reading a ulong out of the log file
2288
2289        * gconf/gconf.c (gconf_engine_get_default): assign to the
2290        default_engine variable, so we don't keep creating new default
2291        engines.
2292
2293        * gconf/gconf-listeners.c (ltable_next_cnxn): Start "uniqueness
2294        bits" at a different location depending on pid
2295
22962000-08-30  Havoc Pennington  <hp@redhat.com>
2297
2298        * gconf/gconf.c: Change client to new system (use object
2299        references to ConfigDatabase instead of the integer context ID).
2300       
2301        * gconf/gconf-backend.c: Fix path to uninstalled modules, and
2302        put the whole uninstalled modules thing in GCONF_ENABLE_DEBUG
2303
2304        * gconf/gconf-database.c: add some missing includes, and fix
2305        a typo bug
2306
2307        * gconf/gconfd.c: CORBA_Object_duplicate() the ConfigDatabase
2308        objrefs before passing them back out to ORBit. Remove
2309        some bogus assertions.
2310       
2311        * TODO: Updates, added notes from Colm
2312
23132000-08-30  Havoc Pennington  <hp@pobox.com>
2314
2315        * gconf/gconfd.c, gconf/gconf-database.h, gconf/gconf-database.c,
2316        gconf/gconfd.h: Completed the server-side implementation of
2317        the new system where a ConfigServer_Context becomes
2318        a ConfigDatabase object. Client side doesn't even compile
2319        yet. Will get it compiling in the morning.
2320
23212000-08-29  Havoc Pennington  <hp@redhat.com>
2322
2323        * gconf/gconfd.c: Add logfile load/save; not really working
2324        yet.
2325
2326        * gconf/gconf.c: Remove reinstall-listeners stuff and implement
2327        update_listeners() from the server. Most of this is about to get
2328        removed again when I fix context ID's to be object references
2329        instead.
2330
2331        * gconf/gconf-listeners.c: #include <string.h>,
2332        store full key name on tree nodes, add connection ID to
2333        foreach callback
2334
2335        * gconf/GConf.idl: Add update_listener method on ConfigListener,
2336        so the daemon can tell a client that a listener's ID has changed
2337
2338        * gconf/gconf-glib-public.h,
2339        gconf/gconf-glib-private.h,
2340        gconf/gconf-glib.c: Put in gmarkup.[hc], gunicode stuff,
2341        and gerror.[hc] from GLib 2.0. The Unicode char tables are
2342        causing big bloat; may be able to get rid of them
2343        before GNOME 1.4 if we are lucky.
2344
23452000-08-27  Havoc Pennington  <hp@pobox.com>
2346
2347        * gconf/gconf-glib-public.h,
2348        gconf/gconf-glib-private.h,
2349        gconf/gconf-glib.c: Place to put cut-and-paste code from
2350        GLib 2.0
2351
2352        * gconf/gconf.c (notify): Only print warnings on bogus notifies
2353        if debugging is enabled; without debugging, silently ignore
2354        the notifies, it just means gconfd got confused.
2355
23562000-08-26  Havoc Pennington  <hp@pobox.com>
2357
2358        * gconf/gconf-listeners.c (gconf_listeners_foreach): Add a foreach
2359        function, will use that to dump the daemon's listener table to
2360        a file.
2361
23622000-08-26  Havoc Pennington  <hp@pobox.com>
2363
2364        * TODO: Created a TODO file
2365
23662000-08-09  Havoc Pennington  <hp@pobox.com>
2367
2368        * configure.in: 0.8
2369
2370        * fixes from Ralph Loader for DESTDIR support (hopefully
2371        got them all in)
2372
2373        * gconf.spec: fix description (the G is just a G, doesn't stand
2374        for anything)
2375       
23762000-08-09  Robin * Slomkowski  <rslomkow@eazel.com>
2377
2378        * gconf.spec.in: made it so the specfile worked for rpm builds
2379
23802000-08-07  Robin * Slomkowski  <rslomkow@eazel.com>
2381
2382        * gconf/Makefile.am: use top_build instead of build
2383        and some beautification.
2384
2385Wed Aug 02 18:11:37 2000  George Lebl <jirka@5z.com>
2386
2387        * backends/xml-entry.c (node_set_schema_value) (node_unset_value)
2388          (schema_node_extract_value):  Set the list_type and car_type and
2389          cdr_type from the schema.  Unset these on clear.  Also get these
2390          on extraction.
2391
2392        * gconf/GConf.idl:  Add value_list_type, value_car_type,
2393          value_cdr_type to the ConfigSchema struct
2394
2395        * gconf/gconf-internals.c (fill_corba_schema_from_gconf_schema)
2396          (gconf_schema_from_corba_schema) (corba_type_from_gconf_type)
2397          (gconf_type_from_corba_type) (gconf_string_to_double)
2398          (gconf_double_to_string) (gconf_unquote_string_inplace)
2399          (gconf_value_decode) (gconf_value_encode):  When passing schema
2400          to/from corba, pass the list_type and car/cdr_type fields as well.
2401          When converting to/from doubles guard the printf/scanf with
2402          setlocale(LC_NUMERIC, "C").  When encoding/decoding the lists
2403          encode their type, for schemas encode/decode the list/car/cdr_type
2404
2405        * gconf/gconf-internals.h:  For gconf_value_new_list_from_string
2406          and gconf_value_new_pair_from_string add an GConfError field
2407
2408        * gconf/gconf-schema.[ch] (gconf_schema_new) (gconf_schema_copy):
2409          Add the list/car/cdr_type fields to the schema structure and
2410          support it when creating and copying.  Also add accessors for
2411          these fields.
2412
2413        * gconf/gconf-value.c (escape_string)
2414          (gconf_value_new_list_from_string)
2415          (gconf_value_new_pair_from_string)
2416          (gconf_value_to_string):  Implement the list and pair_from_string
2417          functions.  In to_string escape the characters that would cause
2418          problems.
2419
2420        * gconf/gconf.c (gconf_unique_key): use GPOINTER_TO_UINT to
2421          avoid warning on alpha
2422
2423        * gconf/gconftool.c (do_get) (do_set) (do_set_schema)
2424          (fill_default_from_string) (extract_global_info)
2425          (process_locale_info) (process_schema):  Add support for
2426          setting lists and pairs by supporting the list/car/cdr_type.
2427          Add these to setting schemas as well.  Also add support for
2428          these in reading/setting schemas from .schema files and support
2429          defaults of lists/pairs using this information.
2430
24312000-07-27  Havoc Pennington  <hp@redhat.com>
2432
2433        * backends/Makefile.am (backenddir): backenddir is
2434        pkglibdir/MAJOR_VERSION, not plain VERSION
2435
2436        * configure.in: Bump to 0.7
2437
2438Wed Jul 26 12:40:45 2000  George Lebl <jirka@5z.com>
2439
2440        * gconf/gconf.c (gconf_key_is_below):  Make sure that the segment
2441          above is a complete directory and not just partial directory.
2442          so that /foo is not taken as above /foobar/blah
2443
2444Tue Jul 25 23:48:24 2000  George Lebl <jirka@5z.com>
2445
2446        * wrappers/gtk/gconf-client.c:  || doesn't mean && :).  It would
2447          consider as an above directory every directory that had a notify_id
2448
24492000-07-25  James Henstridge  <james@daa.com.au>
2450
2451        * Makefile.am, gconf/Makefile.am: make relative symlinks rather than
2452        absolute path symlinks.  Again to help packagers.
2453
2454        * configure.in (GCONF_CONFIG_SOURCE): don't use
2455        EXPANDED_SYSCONFDIR hack.  Instead just escape the dollar sign in
2456        ${sysconfdir}.  This fixes build root installs used when building
2457        packages.
2458
2459Mon Jul 24 16:39:01 2000  George Lebl <jirka@5z.com>
2460
2461        * wrappers/gtk/gconf-client.[ch]: Allow adding overlapping
2462          subdirectories.  What happens is that the real gconf notify
2463          is not added for subdirectories.  When directories are added
2464          or removed the hash is traversed and fixed up.  This is
2465          done in a simple and incredibly inefficent manner and needs
2466          to be fixed.  Also this change adds an "err" argument to
2467          the _remove_dir call as errors can now happen.  Also
2468          fix a minor warning by casting.
2469
2470        * wrappers/gtk/testgconfclient.c: Add some testing of overlapping
2471          directories.  Add buttons to add/remove the main directory and
2472          the subdirectory.  This way you can see if things get proper
2473          notifications.
2474
24752000-07-24  Yukihiro Nakai <nakai@gnome.gr.jp>
2476
2477        * configure.in: Add Japanese (ja)
2478
24792000-07-21  Robin * Slomkowski  <rslomkow@eazel.com>
2480
2481        * gconf.spec.in: just fixed up some filename stuff
2482
24832000-07-14  Havoc Pennington  <hp@pobox.com>
2484
2485        * gconf/gconf-sources.c (gconf_sources_query_value): Fix memleak
2486        of schema_name in case where we return a value
2487        (hash_lookup_defaults_func): Fix bug where we returned the schema
2488        instead of the default value stored in the schema, when returning
2489        default values for a directory listing, which GConfClient did in
2490        order to preload its cache. (Upshot: GConfClient with preloading
2491        was broken if you had schemas.)
2492
24932000-07-13  Havoc Pennington  <hp@pobox.com>
2494
2495        * gconf/gconfd.c (shutdown_contexts): fix cheesy race condition
2496        (context_list may not exist at this point)
2497
24982000-07-12  Havoc Pennington  <hp@pobox.com>
2499
2500        * gconf.spec.in: Change spec file to reflect my fooling with
2501        names of things
2502
2503        * configure.in: Some files converted to .in files, so we can
2504        do versioning
2505
2506        * gconf-config.in: output versioned names for libs and includes
2507
2508        * gconf/Makefile.am: version all installed files
2509
2510        * wrappers/gtk/Makefile.am: put version in the name of
2511        everything
2512
2513        * wrappers/gtk/testgconfclient.c (main): remove ref/sink to
2514        reflect change to GConfClient
2515
25162000-07-13  Havoc Pennington  <hp@pobox.com>
2517
2518        * backends/xml-entry.c (schema_node_extract_value): fix a
2519        double-free
2520
25212000-07-12  Havoc Pennington  <hp@pobox.com>
2522
2523        * configure.in: Bump library versions, bump to 0.6
2524
2525        * gconf/gconf.c (gconf_engine_get_local): Rename from
2526        gconf_engine_new_local
2527        (gconf_engine_get_default): rename from gconf_engine_new
2528        (gconf_engine_get_for_address): rename from
2529        gconf_engine_new_from_address
2530
2531        * wrappers/gtk/gconf-client.c (gconf_client_get_default): rename
2532        from gconf_client_new. Always sink the client, so we are strictly
2533        refcounted, no floating state (for future GObject compatibility)
2534        (gconf_client_get_for_engine): rename from
2535        gconf_client_new_with_engine
2536
25372000-07-11  Havoc Pennington  <hp@redhat.com>
2538
2539        * Makefile.am: spew messages about needing to create
2540        prefix/etc/gconf/path, should make things easier for users.
2541
25422000-07-05  Eskil Heyn Olsen  <eskil@eazel.com>
2543
2544        * gconf-config.in:
2545        adds output of oaf-config, since gconf uses oaf.
2546
25472000-07-05  Eskikl Heyn Olsen  <eskil@eazel.com>
2548
2549        * gconf.spec.in:
2550        Fixed som typos.
2551
25522000-06-22  Dan Winship  <danw@helixcode.com>
2553
2554        * wrappers/gtk/gconf-client.c (gconf_client_set_pair): Pass both
2555        car and cdr to gconf_set_pair rather than passing car twice. Oops.
2556
25572000-06-12  Eskil Heyn Olsen  <eskil@eazel.com>
2558
2559        * gconf.spec.in: Removed the .a libs from the base package, but
2560        added them to -devel.
2561
25622000-06-11  Eskil Heyn Olsen  <eskil@eazel.com>
2563
2564        * gconf.spec.in: Req oaf >= 0.3.0
2565
25662000-06-11  Eskil Heyn Olsen  <eskil@eazel.com>
2567
2568        * gconf.spec.in: Added a .spec file.
2569        * configure.in: Generate gconf.spec.
2570        * Makefile.am: Added gconf.spec.in and gconf.spec to the
2571        EXTRA_DIST.     
2572
25732000-06-07  Pavel Cisler  <pavel@eazel.com>
2574
2575        * wrappers/gtk/gconf-client.c: (gconf_client_get_string):
2576        Fix a storage leak -- a g_strdup and an string ownership
2577        swapping optimization were working against each other.
2578        Removed the g_strdup that is not needed.
2579
25802000-06-04      Mathieu Lacage  <mathieu@gnome.org>
2581
2582        * gconf-config.in: add gtk-config --cflags and --libs
2583        output to the gconf-gtk --cflags and --libs output.
2584
25852000-06-01  Havoc Pennington  <hp@pobox.com>
2586
2587        * gconf/gconf.c (lookup_engine): check whether the hash is NULL
2588        before looking up the engine.
2589
25902000-06-01  Havoc Pennington  <hp@pobox.com>
2591
2592        * gconf/gconf.c (gconf_engine_new): If there's an existing engine
2593        for a given context, return that engine instead of creating a new
2594        one.
2595        (gconf_engine_new_from_address): ditto
2596
2597        * wrappers/gtk/gconf-client.c (gconf_client_finalize): remove
2598        client from client registration table
2599        (gconf_client_new): register newly-created client in hash from
2600        engines to clients; return an existing client if there's already
2601        a client for the default engine
2602        (gconf_client_new_with_engine): register newly-created client,
2603        and try to return existing client.
2604
26052000-05-07  Havoc Pennington  <hp@pobox.com>
2606
2607        * gconf/gconf-listeners.c: Move struct _GConfListeners
2608        into the .c file, eventually need to simply get rid of this.
2609
26102000-04-24  Fatih Demir <kabalak@gmx.net>
2611
2612        * configure.in : Added tr to ALL_LINGUAS .
2613
26142000-04-19  Pablo Saratxaga <pablo@mandrakesoft.com>
2615
2616        * configure.in (ALL_LINGUAS): Added Catalan language
2617
26182000-04-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2619
2620        * gconf/gconftool.c (main): Don't g_free the result of g_getenv ().
2621
2622Tue Apr 18 01:37:51 2000  George Lebl <jirka@5z.com>
2623
2624        * gconf/gconf.c: make the default path sane by adding the flag
2625          field with readwrite
2626
2627        * gconf/gconf.path: add readwrite flag field to make the path legal
2628
26292000-03-30  Matthias Warkus  <mawa@iname.com>
2630
2631        * configure.in (ALL_LINGUAS): Added German translation.
2632
26332000-03-13 Alastair McKinstry <mckinstry@computer.org>
2634
2635        * configure.in (ALL_LINGUAS): Added Irish translation.
2636
26372000-03-09  Havoc Pennington  <hp@redhat.com>
2638
2639        * configure.in (absolute_top_srcdir): don't do makefile for Guile
2640        stuff.
2641
2642        * Makefile.am: create DIST_SUBDIRS with tests directory
2643
26442000-03-09 Elliot Lee <sopwith@redhat.com>
2645        * gconf/gconf-internals.c: Don't syslog things.
2646        * gconf/examples/Makefile.am: Fix for builddir != srcdir.
2647
26482000-03-08  Havoc Pennington  <hp@redhat.com>
2649
2650        * gconf/gconf.c (gconf_init): exit on error.
2651
2652        * examples/simple-controller.c (main): fix gconf_init() error
2653
2654        * examples/simple-view.c (main): fix gconf_init() error
2655
26562000-03-06  Havoc Pennington  <hp@redhat.com>
2657
2658        * doc/intro-article.sgml: Add the examples
2659
2660        * examples/simple-view.c: Change include to work before
2661        we install.
2662       
2663        * examples/simple-controller.c: ditto
2664
26652000-02-29  Havoc Pennington  <hp@redhat.com>
2666
2667        * configure.in: Add goofy "--enable-docs" option to bypass all
2668        library checks, we just want to generate sufficient makefile
2669        for the doc-building targets to run on developer.gnome.org
2670
26712000-02-26  Havoc Pennington  <hp@pobox.com>
2672
2673        * examples/Makefile.am: Add new examples
2674        * examples/simple-view.c, examples/simple-controller.c:
2675        Two simple new examples
2676
26772000-02-23  Havoc Pennington  <hp@redhat.com>
2678
2679        * configure.in: Bump version and libtool versions,
2680        and try to fix the prefix mess. Update required OAF version.   
2681
2682        * doc/gconf/Makefile.am: srcdir != builddir fix
2683
2684        * standard-schemas/Makefile.am: add schemas to EXTRA_DIST
2685
26862000-02-22  Elliot Lee  <sopwith@redhat.com>
2687
2688        * tests/Makefile.am: srcdir != builddir fix.
2689        * wrappers/gtk/Makefile.am: Add libgconf-gtk.la to testgconfclient
2690        deps so that 'make -j' builds will work correctly.
2691
26922000-02-19  Havoc Pennington  <hp@pobox.com>
2693
2694        * gconf/gconf.c (try_to_contact_server): Make sure we always set
2695        an error
2696
26972000-02-15  Havoc Pennington  <hp@redhat.com>
2698
2699        * gconf/gconf-changeset.c (gconf_change_set_set): apply patch from
2700        Rusty Conover <rconover@zootweb.com> fixing an infinite recursion
2701        typo
2702
2703        * gconf/gconfd.c (fast_cleanup): Don't bother to unregister with
2704        OAF
2705
27062000-02-01  Havoc Pennington  <hp@redhat.com>
2707
2708        * configure.in (GCONF_CONFIG_SOURCE): update default schema
2709        install source
2710        (XML_LIBS): add better check that we actually ran xml-config
2711        successfully
2712
2713        * gconf/gconf-backend.c (gconf_backend_resolve_address): Honor the
2714        "readonly" flag in address names
2715
2716        * gconf/gconf-sources.c (SOURCE_WRITEABLE): convert to a function,
2717        source_is_writeable
2718
2719        * gconf/gconf-sources.h: add GCONF_SOURCE_NEVER_WRITEABLE flag
2720
2721        * tests/testaddress.c: new test to verify the functions that break
2722        up a configuration source address
2723
2724        * gconf/gconf-backend.c (gconf_address_flags): function to extract
2725        configuration source flags
2726
2727        * doc/gconf/gconf.sgml: note new configuration source URL format
2728
2729        * gconf/gconf.c: Add space, tab, carriage return, newline to the
2730        invalid characters in a gconf key
2731
27322000-01-31  Havoc Pennington  <hp@redhat.com>
2733
2734        * wrappers/gtk/gconf-client.c (check_type): include name of the
2735        key with the wrong type in the error message
2736
27372000-01-31  Havoc Pennington  <hp@redhat.com>
2738
2739        * wrappers/gtk/gconf-client.c
2740        (gconf_client_real_unreturned_error): only handle the error if the
2741        mode is GCONF_CLIENT_HANDLE_UNRETURNED
2742        (gconf_client_real_error): only handle if GCONF_CLIENT_HANDLE_ALL
2743        (gconf_client_init): change default error handling to
2744        GCONF_CLIENT_HANDLE_UNRETURNED
2745
2746        * wrappers/gtk/gconf-client.h: don't pass error handling mode to
2747        the error handler function
2748
27492000-01-28  Havoc Pennington  <hp@redhat.com>
2750
2751        * wrappers/gtk/gconf-client.c
2752        (gconf_client_set_global_default_error_handler): New function so
2753        gnome-libs can install a Gnomized error dialog
2754
27552000-01-27  Havoc Pennington  <hp@pobox.com>
2756
2757        * wrappers/gtk/gconf-client.c (check_overlap): fix the no-debug
2758        case
2759
27602000-01-24  Havoc Pennington  <hp@redhat.com>
2761
2762        * backends/xml-backend.c (resolve_address): base mode for creating
2763        files and directories on the permissions of the root XML directory
2764
2765        * gconf/gconf.h: Clean up indentation
2766
27672000-01-27  Elliot Lee  <sopwith@redhat.com>
2768        * gconf/Makefile.am, standard-schemas/Makefile.am: Fix builddir != srcdir
2769
27702000-01-24  Havoc Pennington  <hp@redhat.com>
2771
2772        * gconf/gconf-sources.c (gconf_sources_new_from_addresses):
2773        never return errors, just log them.
2774
2775        * gconf/gconf-backend.c (gconf_get_backend): fix mem leak (free
2776        "name" if we don't create a new backend to use it in)
2777
2778        * gconf/gconf-internals.c (gconf_get_lock): fix mem leak
2779
2780        * backends/xml-entry.c (schema_node_extract_value): fix a mem leak
2781
2782        * gconf/gconfd.c (main): keep a pointer to the object ID returned
2783        from PortableServer_POA_activate_object()
2784
2785        * backends/xml-backend.c (resolve_address): fix a mem leak on
2786        error
2787
27882000-01-24  Havoc Pennington  <hp@redhat.com>
2789
2790        * gconf/gconf-internals.c (gconf_get_lock): Use a long enough
2791        buffer to read in the IOR
2792
27932000-01-24  Havoc Pennington  <hp@redhat.com>
2794
2795        * gconf/gconftool.c (do_load_schema_file): Apply patch from Mirko,
2796        properly locates the root node instead of assuming it is the only
2797        node at the toplevel (handles comments, etc).
2798        (process_schema): Report error if a schema has no <locale>
2799        tags.
2800
28012000-01-23  Havoc Pennington  <hp@pobox.com>
2802
2803        * backends/xml-entry.c (node_set_value): Store strings in a
2804        sub-node and use xmlEncodeEntitiesReentrant() to encode it
2805        (node_extract_value): Extract string from the subnode
2806
28072000-01-23  Havoc Pennington  <hp@pobox.com>
2808
2809        * doc/gconf/gconf.sgml: Add schema file DTD from Mirko
2810
2811        * backends/xml-dir.c (dir_sync): pass the XML filename in to
2812        create_fs_dir()
2813        (dir_load): This was broken; bug reported by Mirko Streckenbach.
2814        The Dir object was created even if %gconf.xml file didn't exist,
2815        so we didn't get around to actually creating %gconf.xml
2816        (create_fs_dir): Make %gconf.xml the thing this function is
2817        primarily creating, with the directory containing it as a side
2818        effect only.
2819
2820        * gconf/Makefile.am (install-data-local): Install default path to
2821        path.example, so we don't override someone's existing setup.
2822
2823        * gconf/tests/testdirlist.c: test program that detects dir listing
2824        bugs.
2825       
28262000-01-22  Havoc Pennington  <hp@pobox.com>
2827
2828        * backends/xml-dir.c (dir_all_subdirs): If we can't open the
2829        directory it's not an error, just return NULL.
2830
28312000-01-21  Havoc Pennington  <hp@redhat.com>
2832
2833        * backends/xml-cache.c (cache_clean_foreach): remove everything
2834        older than or the same age as the older_than time value (i.e.
2835        put >= instead of >)
2836        (cache_destroy_foreach): debug check to be sure we aren't
2837        destroying unsynced directories
2838
2839        * gconf/gconfd.c (context_synchronous_sync): remove sync
2840        timeout/idle handlers when we do a synchronous sync
2841
28422000-01-21  Havoc Pennington  <hp@pobox.com>
2843
2844        * gconf/gconf-value.c (gconf_value_new_from_string): use new
2845        double conversion
2846        (gconf_value_to_string): use new conversion
2847
2848        * gconf/gconf-internals.c (gconf_double_to_string)
2849        (gconf_string_to_double): new functions to go from string
2850        to double, we had precision problems with this and maybe
2851        still do, these functions encapsulate it. For now
2852        copied code from gnumeric/src/xml-io.c
2853
2854        * gconf/gconftool.c (main): improve gconfd-is-running error
2855        message
2856
2857        * gconf/gconf.c (gconf_synchronous_sync): internal-only API
2858        for the synchronous sync
2859
2860        * gconf/gconfd.c (gconfd_synchronous_sync): implement a way to
2861        force _immediate_ sync for testing purposes
2862
28632000-01-21  Havoc Pennington  <hp@pobox.com>
2864
2865        * tests/Makefile.am (testpersistence_SOURCES): add new test
2866
2867        * tests/testpersistence.c: New test, clears the cache after every
2868        set, to see if the get() function can properly load stuff off of
2869        disk. Right now we fail this test. Blah.
2870
28712000-01-21  Havoc Pennington  <hp@pobox.com>
2872
2873        * backends/xml-cache.c (cache_clean): oops, this was broken
2874        before; we need to check that the dir doesn't need a sync before
2875        we destroy it.
2876
2877        * backends/xml-dir.c (dir_sync_pending): new function
2878
2879        * backends/xml-backend.c (clear_cache): implement clearing cache
2880        for XML backend
2881
2882        * gconf/gconf.c (gconf_clear_cache): implement API here
2883
2884        * gconf/GConf.idl: add clear_cache method
2885
2886        * gconf/gconfd.c (context_clear_cache): add code to implement
2887        clear_cache IDL
2888
2889        * gconf/gconf-sources.c (gconf_sources_clear_cache): New function
2890        for debugging purposes
2891
28922000-01-20  Havoc Pennington  <hp@pobox.com>
2893
2894        * backends/xml-entry.c (node_extract_value): Detect case where a
2895        pair is missing car and/or cdr and do an error instead of
2896        returning an invalid pair.
2897
2898        * gconf/gconf-internals.c (gconf_get_lock): remove IOR debug spew
2899
2900        * gconf/gconftool.c: Add --break-key and --break-directory, these
2901        allow you to easily torture test your application and see if
2902        you're robust against users setting your config keys to stupid
2903        stuff.
2904
2905        * tests/testgconf.c: Include the empty string in the list
2906        of strings we test. I know this is currently broken if you
2907        exit gconfd or purge the cache between set and get.
2908       
29092000-01-20  Havoc Pennington  <hp@redhat.com>
2910
2911        * gconf/Makefile.am (EXTRA_DIST): fix EXTRA_DIST to have
2912        default.path.in in it
2913
29142000-01-20  Havoc Pennington  <hp@redhat.com>
2915
2916        * gconf/default.path: remove, replace with gconf/default.path.in
2917        which is set up properly to go in $sysconfdir
2918       
2919        * gconf/gconftool.c (main): Always unref the engine when we're
2920        done, to ensure we cleanly give up locks on local sources.
2921
2922        * configure.in (GCONF_CONFIG_SOURCE): --enable-gconf-source option
2923
2924        * gconf/gconftool.c (main): add an --makefile-install-rule option,
2925        which does the right thing in makefile install rules.   
2926
2927        * Makefile.am: add standard-schemas subdir
2928       
2929        * configure.in (absolute_top_srcdir): create standard-schemas Makefile
2930
2931        * standard-schemas/desktop.schemas: Schemas that any desktop can use
2932
2933        * standard-schemas/Makefile.am: install schemas
2934
29352000-01-19  Havoc Pennington  <hp@redhat.com>
2936
2937        * gconf/gconfd.c (gconf_set_exception): warn if the error is set
2938        to GCONF_ERROR_SUCCESS
2939
2940        * gconf/gconf-error.h: Prefix all errno values with GCONF_ERROR as
2941        Owen suggested
2942
29432000-01-15  Havoc Pennington  <hp@pobox.com>
2944
2945        * tests/testlisteners.c (check_immediate_remove_after_add): update
2946        to match change to gconf-listeners.c
2947
2948        * gconf/gconf-listeners.c: Use only 24 bits for the array index,
2949        and put a variable value in the top 8 bits, so recycling array
2950        indices doesn't create the possibility of clients clashing with
2951        each other (i.e. to clients it doesn't appear that indexes are
2952        being recycled).       
2953
29542000-01-15  Havoc Pennington  <hp@pobox.com>
2955
2956        * backends/xml-dir.c (dir_unset_value): check entries for
2957        uselessness on unset, even if they are unchanged by the unset.
2958        Allows us to delete useless crap we loaded from disk.
2959        If you unset, the entry should no longer appear in all_entries
2960        unless there's a schema name to remember.
2961       
2962        * backends/xml-entry.c (entry_unset_value): Fix this to properly
2963        unset value for all locales if the locale passed in to "unset" is
2964        NULL
2965        (entry_sync_to_node): Remember to unset the value if necessary
2966       
2967        * gconf/gconftool.c (list_pairs_in_dir): handle entries with no
2968        value.
2969
29702000-01-15  Havoc Pennington  <hp@pobox.com>
2971
2972        * backends/xml-dir.c (dir_destroy): destroy entries before the xml
2973        doc, since they hold pointers into the xml doc.
2974
2975        * backends/xml-entry.c (entry_sync_to_node): if no cached value,
2976        blow away the value in the node.
2977
29782000-01-14  Havoc Pennington  <hp@pobox.com>
2979
2980        * gconf/gconfd.c (gconfd_all_entries): remove bad assertion that
2981        the value in an entry was non-NULL
2982
2983        * gconf/gconf.c (gconf_set): check for invalid list type
2984
2985        * gconf/gconf-internals.c (gconf_value_from_corba_value): Be more
2986        paranoid about list types coming from gconfd
2987
29882000-01-13  Havoc Pennington  <hp@pobox.com>
2989
2990        * gconf/gconf.c (gconf_unique_key): function to generate
2991        a pseudo-random very-very-likely-to-be-unique key name.
2992
29932000-01-13  Havoc Pennington  <hp@redhat.com>
2994
2995        * gconf/gconf-internals.c (gconf_concat_key_and_dir): move
2996        declaration to public header
2997
2998        * doc/gconf/tmpl/gconf-client.sgml: Document the changed
2999        dir add/remove behavior
3000
30012000-01-13  Havoc Pennington  <hp@redhat.com>
3002
3003        * backends/xml-dir.c (dir_load): arguments to this were backward
3004
3005        * wrappers/gtk/gconf-client.c: keep a count of the number of times
3006        a directory has been added/removed from the dir list, so we only
3007        remove it from the list after that number of removals.
3008        Perhaps somewhat unintuitive, but we'll document it, and it's
3009        really necessary if multiple code sections are going to share the
3010        same GConfClient.
3011        (gconf_client_destroy): move a bunch of stuff to finalize
3012        so we remain "safe" before last unref
3013
30142000-01-12  Havoc Pennington  <hp@redhat.com>
3015
3016        * gconf/gconfd.c (main): don't use custom object ID
3017
30182000-01-12  Jonathan Blandford  <jrb@redhat.com>
3019
3020        * wrappers/gtk/gconf-client.c: #include <stdio.h>
3021
30222000-01-11  Havoc Pennington  <hp@pobox.com>
3023
3024        * gconf.m4: separate $4 from gconf_config_args
3025
3026        * gconf-config.in (af_libs): -lgconf, not -lgconf-client
3027        (Libraries): add gconf-gtk lib
3028
30292000-01-11 Andreas Hyden <andreas.hyden@telia.com>
3030
3031        * configure.in : added sv (swedish)
3032
30332000-01-08  Havoc Pennington  <hp@pobox.com>
3034
3035        * gconf/gconftool.c (main): had local and non-local cases backward
3036        so you got the opposite of what you requested
3037
3038        * gconf/gconf-internals.c (gconf_release_lock): include strerror()
3039        in "can't open lock file" message
3040        (gconf_get_lock): actually write the PID to the lock file,
3041        and use ConfigServer_ping() instead of CORBA_Object_is_nonexistent()
3042
30432000-01-07  Havoc Pennington  <hp@redhat.com>
3044
3045        * gconf/gconf-internals.c (gconf_get_lock): totally rewrite the
3046        locking stuff
3047
3048        * backends/xml-dir.c (dir_load): if errno == ENOENT don't make
3049        dir_load() fail
3050
3051        * gconf/gconfd.c (main): check return value of
3052        oaf_active_server_register() and act accordingly.
3053
3054        * gconf/gconf.c (try_to_contact_server): use new
3055        OAF_FLAG_EXISTING_ONLY when appropriate
3056
3057        * gconf/gconf-internals.c (gconf_set_daemon_ior): allow setting
3058        IOR to a global var
3059
3060        * gconf/gconfd.c (main): set the IOR so it can be used in lockfiles
3061
30622000-01-03  Havoc Pennington  <hp@redhat.com>
3063
3064        * gconf/gconftool.c (main): add support for direct config source access
3065
30661999-12-31  Havoc Pennington  <hp@pobox.com>
3067
3068        * gconf/gconf-internals.c (gconf_log): in non-daemon mode, use
3069        fprintf() when it's an error and printf() when not
3070        (gconf_in_daemon_mode): new function
3071
3072        * gconf/gconfd.c (signal_handler): special-case some more signals;
3073        do more thorough cleanup when we can.
3074        (main): fix which signals we add an action for
3075
3076        * gconf/gconf-internals.h: Remove server_info* functions
3077
3078        * gconf/gconf-error.h: add GCONF_LOCK_FAILED
3079
3080        * gconf/gconf.c (corba_errno_to_gconf_errno): lock failed error
3081
3082        * gconf/gconf-internals.c (gconf_nanosleep): Add utility function
3083        to portably sleep a little while (we should really stick one of
3084        these in glib)
3085        (gconf_release_lock, gconf_get_lock): Lock directory functions
3086
30872000-01-02  Timur Bakeyev <mc@bat.ru>
3088
3089        * doc/gconf/Makefile.am: Replace unportable install -d with $MKINSTALLDIRS.
3090        install -m 0644 - with $(INSTALL_DATA).
3091
30922000-01-02  Timur Bakeyev <mc@bat.ru>
3093
3094        * po/uk.po: Add missed "\n" in 2 strings. Things sholud be checked
3095        before commit :)
3096       
3097        * backends/Makefile.am, wrappers/gtk/Makefile.am: Add $(top_builddir)/gconf
3098        to INCLUDES to make GConf.h visiable.
3099
3100        * gconf/gconf-internals.c: If LC_MESSAGE doesn't exist, use value of
3101        LC_CTYPE (is this correct?)
3102               
31031999-12-31  Yuri Syrota  <rasta@renome.rovno.ua>
3104
3105        * configure.in: Added "uk" to ALL_LINGUAS
3106
31071999-12-30  Havoc Pennington  <hp@pobox.com>
3108
3109        * backends/xml-backend.c: Complete cleanup of XML backend,
3110        all test suite passes, code is much more manageable.
3111
31121999-12-21  Havoc Pennington  <hp@redhat.com>
3113
3114        * doc/gconf/tmpl/gconf-backend.sgml: Documented the methods in the
3115        backend vtable.
3116
3117        * backends/xml-dir.[hc], backends/xml-entry.[hc]: fixed up some
3118        code, mostly done.     
3119
31201999-12-20  Havoc Pennington  <hp@redhat.com>
3121
3122        * gconf/gconf-sources.c (gconf_sources_new_from_addresses): const
3123        correctness
3124
3125        * gconf/gconfd.c: Massive const-correctness changes to match
3126        latest ORBit
3127
3128        * gconf/gconf.c (notify): "in string" seems to be const again now.
3129
3130        * wrappers/gtk/gconf-client.c (cache_pairs_in_dir): store the
3131        is_default parameter when preloading
3132
3133        * gconf/gconf.c (gconf_all_entries): receive the is_default
3134        parameter
3135
3136        * gconf/gconfd.c (gconfd_all_entries): pass the is_default
3137        parameter over the CORBA link
3138
3139        * backends/xml-backend.c (listify_foreach): Add the schema name to
3140        the entry if appropriate (if value is unset)
3141
3142        * gconf/gconf-sources.c (gconf_sources_all_entries): Change to
3143        match new semantics of all_entries in the backend; get all entries
3144        that have a schema set on them, and the corresponding default
3145        value if appropriate.
3146
3147        * gconf/gconf-value.c (gconf_entry_set_is_default): new function
3148        (gconf_entry_set_schema_name): new function
3149
3150        * backends/xml-backend.c (listify_foreach): Include keys that
3151        exist but have no value set in the list of returned entries.
3152
31531999-12-20  Havoc Pennington  <hp@redhat.com>
3154
3155        * tests/testlisteners.c: fix include
3156
3157        * wrappers/gtk/gconf-client.c (gconf_client_preload): Actually
3158        implement preloading. We have some "issues" here to resolve I
3159        think, because of the defaults stuff and schemas.
3160       
31611999-12-14  Havoc Pennington  <hp@redhat.com>
3162
3163        * gconf/gconf.c (gconf_engine_new_from_address): Add a g_warning()
3164        that people probably don't want to use this.
3165
31661999-12-14  Havoc Pennington  <hp@redhat.com>
3167
3168        * doc/gconf/tmpl/gconf-client.sgml: fix a typo, add additional
3169        explanation to the introduction.
3170
3171        * doc/gconf/tmpl/gconf.sgml: Document the string-to-enum functions.
3172        Update some other docs too.
3173
3174        * doc/gconf/gconf-sections.txt: add new functions
3175
3176        * gconf/gconf.c (gconf_string_to_enum): new function
3177        (gconf_enum_to_string): new function
3178
3179        * gconf/gconf-engine.h: Put gconf_engine_new_local() here instead
3180        of gconf-internals.h
3181
3182        * gconf/gconf-internals.h: added a new GCONF_ENABLE_INTERNALS
3183        define, to allow us to have internal stuff in headers other than
3184        gconf-internals.h
3185
3186        * gconf/gconf.c (gconf_unset): local version
3187        (gconf_associate_schema): local version
3188        (gconf_all_entries): local version
3189        (gconf_all_dirs): local version
3190        (gconf_suggest_sync): local version
3191        (gconf_dir_exists): local version
3192
3193        * gconf/gconf-internals.h (gconf_engine_new_local): Declare this
3194        function here, though it's defined in gconf.c
3195
3196        * gconf/gconf.c (gconf_set): local version
3197
3198        * gconf/gconfd.c (context_query_default_value): use
3199        gconf_sources_query_default_value()
3200
3201        * gconf/gconf-sources.c (gconf_sources_query_default_value): New
3202        function
3203
3204        * gconf/gconf-sources.h: egtk-format-protos the function
3205        prototypes.
3206
3207        * gconf/Makefile.am (libgconf_la_SOURCES): move gconf-locale.[hc]
3208        into the library, bah
3209
3210        * gconf/gconf.c (gconf_get_full): Add local (no gconfd) version
3211
3212        * gconf/gconf-locale.c (gconf_split_locale): locale splitter
3213        function.
3214
3215        * gconf/gconf-sources.c (gconf_sources_new_from_source): new function
3216
3217        * examples/basic-gconf-app.c (create_prefs_dialog): Move keys from
3218        /apps/gnome to plain /apps
3219
3220        * doc/gconf/gconf.sgml: Add an initial stab at namespace
3221        splitting.
3222
32231999-12-09  Havoc Pennington  <hp@redhat.com>
3224
3225        * gconf/gconf.c (gconf_init): Safety check to ensure we don't
3226        initialize OAF a second time.
3227
32281999-12-06  Havoc Pennington  <hp@pobox.com>
3229
3230        * gconf/gconf.c (gconf_notify_add): Backward assertion
3231
32321999-12-02  Havoc Pennington  <hp@pobox.com>
3233
3234        * examples/basic-gconf-app.c (create_configurable_widget): use
3235        gconf_client_get_string() instead of gconf_client_get()
3236        (update_entry): Check for the default value if we have an unset
3237        value in the change set.       
3238
3239        * wrappers/gtk/gconf-client.c
3240        (gconf_client_create_change_set_from_currentv): use without_default
3241        (revert_foreach): use without_default
3242
3243        * gconf/gconf-changeset.c (gconf_create_change_set_from_currentv):
3244        use gconf_get_without_default()
3245        (revert_foreach): use gconf_get_without_default()
3246
3247        * wrappers/gtk/testgconfclient.c (entry_notify_func): fix to compile
3248
3249        * examples/basic-gconf-app.c (configurable_widget_config_notify):
3250        fix to compile
3251
3252        * wrappers/gtk/gconf-client.c
3253        (gconf_client_get_default_from_schema): New function
3254
3255        * gconf/gconf.c (gconf_get_without_default): renamed from
3256        gconf_get_no_default(), so that gconf_get_default_from_schema()
3257        won't be as confusing maybe.
3258        (gconf_get_default_from_schema): new function to read the default
3259        setting in the schema
3260
3261        * backends/xml-backend.c (xentry_extract_value): remove ignore_subsequent
3262        (xentry_set_value): ditto
3263
3264        * gconf/gconf-sources.c (gconf_sources_query_value): Remove ignore
3265        subsequent
3266
3267        * gconf/gconf-value.c (gconf_value_new_from_string): remove
3268        ignore_subsequent
3269        (gconf_value_to_string): remove ignore_subsequent
3270        (gconf_value_copy): Remove ignore_subsequent
3271
3272        * gconf/gconfd.c (context_unset): add is_default to notification
3273        (context_set): add is_default to notification
3274
3275        * gconf/gconf-internals.c (gconf_value_type_to_string): Remove
3276        ignore_subsequent.
3277
3278        * gconf/gconf.c (gconf_cnxn_notify): add is_default
3279        (notify) add is_default
3280
3281        * gconf/gconf-value.h: Remove GCONF_VALUE_IGNORE_SUBSEQUENT
3282
3283        * gconf/gconf-sources.c (gconf_sources_unset_value): don't do that
3284        weird IGNORE_SUBSEQUENT goo
3285
3286        * wrappers/gtk/Makefile.am (INCLUDES): add top_builddir to include
3287        search to get the built sources
3288
3289        * gconf/gconf-engine.h: fix includes
3290
3291        * gconf/gconf-changeset.h: fix includes
3292
3293        * gconf/Makefile.am (gconfd_SOURCES): add gconf-sources.h here
3294        instead of installing it.
3295
3296        * wrappers/gtk/Makefile.am (INCLUDES): remove -I$(top_builddir)/gconf
3297
3298        * wrappers/gtk/gconf-client.c (gconf_client_get_full): Add this,
3299        etc.
3300
3301        * gconf/gconf-sources.c (gconf_sources_query_value): Set a flag
3302        indicating whether the retrieved value was the default or not.
3303
3304        * gconf/GConf.idl: add value_is_default out flag to
3305        lookup_with_locale()
3306
33071999-12-02  Havoc Pennington  <hp@pobox.com>
3308
3309        * gconf/gconf-error.c: Was missing an element in the err_msgs
3310        array and the array had the wrong size.
3311       
3312        * gconf/gconf-sources.c (gconf_sources_query_value): Add
3313        use_schema_default flag here (and in the other stuff that calls
3314        it, I'm skipping some layers in the changelog)
3315        (gconf_sources_query_value): If we find an IGNORE_SUBSEQUENT, we
3316        should return immediately, rather than checking the schema default.
3317
3318        * gconf/gconfd.c (gconfd_lookup_with_locale): fix
3319       
3320        * gconf/gconf.c (gconf_get_no_default): new function to get
3321        a value, but not fall back to the schema default.
3322
3323        * gconf/GConf.idl: lookup_with_locale() needs to raise
3324        ConfigException. Also, add a "use schema default" flag.
3325
33261999-12-01  Havoc Pennington  <hp@pobox.com>
3327
3328        * gconf/gconf.c: Add local "direct mode" engine; mildly bad hack.
3329        This file could use some modularization. Still have to make
3330        all the methods support the local version.
3331       
3332        * gconf/Makefile.am (libgconf_la_SOURCES): move gconf-sources.c to
3333        the library instead of gconfd (again).
3334
3335        * gconf/gconf-internals.c (gconf_handle_oaf_exception): set the
3336        GCONF_OAF_ERROR errno
3337       
3338        * gconf/gconf-error.c: add strerror stuff for those errors.
3339
3340        * gconf/gconf-error.h: add oaf error and "this is not a gconfd
3341        engine" error.
3342
33431999-12-01  Havoc Pennington  <hp@pobox.com>
3344
3345        * gconf/gconf.c (try_to_contact_server): handle OAF exceptions
3346
3347        * gconf/gconf-internals.c (gconf_handle_oaf_exception): new
3348        function to handle OAF CORBA exceptions, now I have to find all
3349        the places that I need to use this function...
3350
33511999-12-01  Havoc Pennington  <hp@pobox.com>
3352
3353        * doc/gconf/gconf-sections.txt: Add new create_change_set
3354        functions for GConfClient and GConfEngine
3355
3356        * doc/gconf/Makefile.am (LDFLAGS): Use proper cflags/ldflags
3357        for gtk and OAF when doing 'make scan'
3358
3359        * wrappers/gtk/testgconfclient.c (entry_attached_to): change for
3360        new get_string() thing
3361
3362        * gconf/gconf-changeset.h: fix the "" vs. <> issue on an #include
3363
3364        * wrappers/gtk/gconf-client.c (gconf_client_get_bool): remove
3365        "default" argument
3366        (gconf_client_get_string): ditto
3367        (gconf_client_get_int): ditto
3368        (gconf_client_get_float): ditto
3369
3370        * gconf/gconf.c (gconf_get_bool): Remove "default" argument.
3371        (gconf_get_string): ditto
3372        (gconf_get_int): ditto
3373        (gconf_get_float): ditto
3374
33751999-11-30  Havoc Pennington  <hp@pobox.com>
3376
3377        * backends/xml-backend.c (resolve_address): s/dir/root_dir/
3378
33791999-11-29  Havoc Pennington  <hp@pobox.com>
3380
3381        * gconf/gconftool.c (do_load_schema_file): Use new syntax for
3382        attaching schema names to key names
3383
3384        * backends/xml-backend.c (resolve_address): Create the XML root
3385        directory if necessary.
3386
33871999-11-29  Havoc Pennington  <hp@pobox.com>
3388
3389        * wrappers/gtk/gconf-client.c (gconf_client_get): sheesh, this
3390        stupid function didn't work at all. fix it
3391        (get): properly check whther val is NULL before copying it.
3392
3393        * gconf/gconf-internals.c (gconf_set_daemon_mode): Function to set
3394        daemon mode, for now changes gconf_log behavior
3395        (gconf_log): handle daemon vs. non-daemon mode, and with syslog do
3396        syslog(pri, "%s", msg) instead of syslog(pri, msg) to avoid
3397        unwanted printf magic. 
3398        (gconf_value_from_corba_value): more robust for list types, add an assertion
3399
3400        * gconf/gconfd.c (gconfd_set): return if the conversion from
3401        GConfValue doesn't fly
3402
3403        * gconf/gconf-value.c (gconf_value_new): add a check for valid type
3404
3405        * gconf/gconf-value.h (GCONF_VALUE_TYPE_VALID): Add macro to check the
3406        a value type is valid
3407
3408        * gconf/gconf-changeset.c (change_set): return if the value being
3409        set is the same as the existing value.
3410
3411        * examples/Makefile.am (EFENCE): add EFENCE var
3412
3413        * wrappers/gtk/gconf-client.c (gconf_client_commit_change_set):
3414        add checks
3415
3416        * gconf/gconf-changeset.c (gconf_commit_change_set): add checks
3417
3418        * gconf/gconf-listeners.c (gconf_listeners_remove): Robust against
3419        bad notify_id
3420
3421        * gconf/gconf-changeset.c (gconf_create_change_set_from_current):
3422        New function to create a change set which will restore the current
3423        values of a list of keys.
3424        (gconf_create_change_set_from_currentv): Vector version of the
3425        same function.
3426        (gconf_change_set_check_value): new function to check for and get
3427        the value of a key in a change set.
3428
3429        * wrappers/gtk/gconf-client.h: Add client analogues for the above
3430        two set-creation functions.
3431       
34321999-11-28  Havoc Pennington  <hp@pobox.com>
3433
3434        * gconf.m4: add the "" around the $4, seems to work - the problem
3435        here seems to have something to do with aclocal or autoconf
3436        doing the wrong thing, rather than a shell issue. I don't
3437        understand it yet.
3438
34391999-11-23  Havoc Pennington  <hp@pobox.com>
3440
3441        * backends/xml-backend.c (query_value): Don't return errors here;
3442        this is somewhat wrong, we actually need to discriminate between
3443        errors and report the "abnormal" ones, but for now I think all of
3444        them are ignorable.
3445
3446        * gconf/gconf-internals.c (gconf_log): If the log string contains
3447        a % escape it with another percent so we don't get printf()
3448        effects (was causing a segfault) - however it's still broken if
3449        unintentional percents exist in the initial format string. Will
3450        fix later by adding a "printf()-formatting" arg I think
3451
3452        * wrappers/gtk/gconf-client.c (gconf_client_commit_change_set):
3453        put some casts in to chill warnings
3454
3455        * gconf/gconf-changeset.c (gconf_change_set_size): new function
3456
3457        * wrappers/gtk/gconf-client.c (gconf_client_destroy): Destroy the
3458        directory list.
3459
3460        * Makefile.am (SUBDIRS): add "examples" directory
3461
3462        * examples/Makefile.am, examples/basic-gconf-app.c: Examples;
3463        write nice example program.
3464       
3465        * gconf/gconfd.c (notify_listeners_cb): error message improvement
3466        (set_default_context): Set the "context" field of the default
3467        context, I don't get how that was working before.       
3468
34691999-11-23  Havoc Pennington  <hp@pobox.com>
3470
3471        * wrappers/gtk/testgconfclient.c: remove GNOME dependency
3472
3473        * configure.in: don't build gconf-editor makefile.
3474
3475        * Makefile.am (SUBDIRS): never build gconf-editor, it will have to
3476        go in a separate module (somewhat inconveniently, since I'll
3477        probably end up installing gconf-internals.h for its use, blah)
3478
3479        * configure.in (GCONF_AGE): Check for plain GTK not GNOME
3480
3481        * wrappers/Makefile.am (SUBDIRS): change GNOME conditional to GTK
3482
34831999-11-23  Havoc Pennington  <hp@pobox.com>
3484
3485        * gconf/Makefile.am (libgconf_la_LDFLAGS): split off LIBADD
3486
3487        * wrappers/gtk/Makefile.am (libgconf_gtk_la_LIBADD): set shared
3488        lib version
3489        (libgconf_gtk_la_LDFLAGS): split LIBADD and LDFLAGS maybe properly.
3490
3491        * configure.in: remove gnorba cflags/libs
3492
3493        * gconf/Makefile.am (install-data-local): Create the
3494        $(sysconfdir)/gconf directory.
3495
3496        * wrappers/Makefile.am: For now, always disable Guile wrapper
3497        build.
3498
34991999-11-22  Havoc Pennington  <hp@pobox.com>
3500
3501        * backends/xml-backend.c (resolve_address): Check whether the XML
3502        directory is readable/writeable and report an error if neither;
3503        set readable/writeable flags properly.
3504
3505        * gconf/gconfd.c (gconf_server_load_sources): log decision to use
3506        default config source
3507
35081999-11-22  Havoc Pennington  <hp@pobox.com>
3509
3510        * gconf/gconfd.c (gconf_server_load_sources): Fall back to
3511        xml:~/.gconf if no config file is found
3512
35131999-11-22  Havoc Pennington  <hp@pobox.com>
3514
3515        * gconf/default.path: default configuration file
3516       
3517        * gconf/Makefile.am (install-data-local): Install default.path to
3518        sysconfdir/gconf/path (theoretically)
3519
35201999-11-22  Havoc Pennington  <hp@pobox.com>
3521
3522        * gconf/gconfd.c (gconf_set_exception): lots of assertions
3523        (gconf_server_load_sources): Install the default context even if
3524        we don't find any configuration sources in the path
3525
3526        * gconf/gconf.c (gconf_get_config_server): always return an error
3527        if the server isn't available. This is still not doing the right
3528        thing; for shutdown and ping we need to be able to get the object
3529        if and only if it already exists. This feature is also needed for
3530        something like magicdev-patched gtcd.
3531
3532        * gconf/gconfd.c (gconf_server_load_sources): #ifdef the
3533        debug-only search for debugging path file.
3534
35351999-11-19  Havoc Pennington  <hp@pobox.com>
3536
3537        * gconf/gconfd.c (gconf_server_load_sources): Give actual
3538        sysconfdir in the error message, not just /etc;
3539        include liboaf.h
3540
3541        * gconf/gconf.c: include liboaf.h
3542        (gconf_postinit): fix a bunch of missing semicolons
3543
35441999-11-20  Havoc Pennington  <hp@pobox.com>
3545
3546        * wrappers/gtk/gconf-client.c
3547        (gconf_client_create_reverse_change_set): new function
3548        (gconf_client_commit_change_set): new function
3549
35501999-11-20  Havoc Pennington  <hp@pobox.com>
3551
3552        * gconf/gconf-changeset.c (gconf_create_reverse_change_set): New
3553        function creates a change set which will revert another change set
3554        on commit.
3555
35561999-11-19  Havoc Pennington  <hp@pobox.com>
3557
3558        * gconf/gconfd.c (gconf_server_load_sources): Give actual
3559        sysconfdir in the error message, not just /etc;
3560        include liboaf.h
3561
3562        * gconf/gconf.c: include liboaf.h
3563        (gconf_postinit): fix a bunch of missing semicolons
3564
35651999-11-19  Havoc Pennington  <hp@pobox.com>
3566
3567        * gconf/gconf.c (gconf_server_broken): don't need to set the
3568        server to NIL here, it gets set in gconf_detach_config_server()
3569
3570        * doc/gconf/gconf-sections.txt: Add preinit, postinit
3571
3572        * doc/gconf/gconf.sgml: Remove gconf-orbit entity
3573
3574        * doc/gconf/gconf-sections.txt: Remove gconf-orbit stuff
3575
3576        * tests/*.c: Fix to not include gconf-orbit.h, call gconf_init()
3577        properly
3578       
3579        * gconf-editor/gconf-editor.c: don't include gconf-orbit.h
3580
3581        * wrappers/gtk/testgconfclient.c (main): remove "orb" variable
3582
3583        * gconf/gconftool.c: don't include gconf-orbit.h
3584
3585        * gconf/gconfd.c: don't include gconf-orbit.h
3586
3587        * gconf/gconf.c: don't include gconf-orbit.h
3588
3589        * gconf/gconf.h: don't include gconf-orbit.h
3590
3591        * gconf/Makefile.am (gconfinclude_HEADERS): remove gconf-orbit.h
3592        (libgconf_la_SOURCES): remove gconf-orbit.c
3593
3594        * gconf/gconfd.c (main): fix error message if oaf_init() returns FALSE
3595
3596        * gconf/gconf.c (try_to_contact_server): Use the IID macro
3597        (gconf_postinit): Change all the error checks to assertions; if
3598        these errors can really happen they need to be reported as before
3599        (not sure how to do this with the pre/post init setup), if they
3600        can't happen then they should be asserted, not error-checked.
3601
3602        * gconf/gconfd.c (fast_cleanup): Unregister with OAF in order to
3603        clean up.
3604
3605        * gconf/Makefile.am: add -DIID to INCLUDES
3606
3607        * gconf/gconfd.c (main): Use a macro for the IID
3608
3609        * gconf/gconf-internals.c: Remove gconf_read_server_ior(),
3610        gconf_info_dir(), gconf_info_file(), etc. since we use OAF instead.
3611
3612        * gconf/gconfd.c (main): Remove "nodaemon" flag since we don't run
3613        as a daemon anymore.
3614        (main): After oaf_init(), don't try to use "err" since oaf_init()
3615        won't set it.
3616
3617        * gconf/gconf-orbit.h, gconf/gconf-orbit.c: Delete these, we
3618        are using OAF now.
3619       
3620        * gconf/gconf.c (gconf_get_config_server): Change this to only
3621        call try_to_contact_server() if start_if_not_found is TRUE,
3622        since with OAF any attempt to contact the server will
3623        automatically restart it. Now we keep the server variable
3624        up-to-date locally (set it to NULL on any system exception).
3625
36261999-11-19  Elliot Lee  <sopwith@redhat.com>
3627
3628        * Make it all use OAF, and redo the initialization routine(s) to
3629        fit better into the GnomeModuleInfo system.
3630
36311999-11-18  Elliot Lee  <sopwith@redhat.com>
3632
3633        * gconf.m4: AM_PATH_GCONF macro.
3634       
3635        * wrappers/gtk/Makefile.am, autogen.sh, backends/Makefile.am: Work with builddir != srcdir
3636
3637        * Makefile.am: Distribute gconf.m4 & gconf-config.in, install gconf.m4
3638
36391999-11-18  Havoc Pennington  <hp@pobox.com>
3640
3641        * gconf/gconfd.c (gconf_server_load_sources): fix the message
3642        about writeable sources
3643
36441999-11-18  Havoc Pennington  <hp@pobox.com>
3645
3646        * backends/xml-backend.c (find_schema_subnode_by_locale): Check
3647        that locale && this_locale before strcmp()'ing them
3648        (entry_unset): take a NULL locale in unset to mean "unset all locales"
3649
3650        * tests/testschemas.c (check_one_schema): fix the locale-related tests
3651
3652        * gconf/gconf.c (gconf_set_schema): remove debug spew
3653
3654        * gconf/gconf-internals.c (gconf_schema_from_corba_schema): parse
3655        the encoded default value
3656        (fill_corba_schema_from_gconf_schema): encode the default value to
3657        ship to the server.
3658
3659        * gconf/GConf.idl: Add encoded default value string to
3660        ConfigSchema struct
3661
3662        * gconf/gconf-internals.c (gconf_value_decode): implement
3663        (gconf_value_encode): implement
3664
3665        * gconf/gconf-value.c (gconf_value_to_string): Use
3666        g_strdup_printf() to create int/float strings, rather than
3667        guessing at the needed string size.
3668
36691999-11-17  Havoc Pennington  <hp@pobox.com>
3670
3671        * tests/testencode.c: new test for string quoting
3672
3673        * gconf/gconf-internals.c (gconf_unquote_string_inplace): new
3674        function unquotes a string
3675        (gconf_quote_string): quotes a string
3676        (gconf_unquote_string): unquotes a const string
3677
36781999-11-16  Havoc Pennington  <hp@pobox.com>
3679
3680        * gconf/gconf-schema.c (gconf_schema_copy): copy locale, and
3681        handle NULL fields. Sheesh this was broken.
3682        (gconf_schema_destroy): destroy default value and locale
3683
36841999-11-16  Havoc Pennington  <hp@pobox.com>
3685
3686        * gconf/gconf-value.c (gconf_value_to_string): print more info
3687        about schemas
3688
3689        * backends/xml-backend.c (xentry_set_schema_value): Set the schema
3690        type on the toplevel node, not the localized node.
3691        (xentry_set_schema_value): Set the owner on the toplevel node
3692        (schema_node_extract_value): Do better at falling back to any
3693        schema if the locale we want isn't found.
3694        (my_xmlSetProp): Replace xmlSetProp with this, deletes the prop
3695        if setting to NULL or ""
3696        (my_xmlGetProp): Replace xmlGetProp with this, returns NULL if the
3697        prop has an empty value.
3698
3699        * gconf/gconf-internals.c (gconf_value_type_to_string): Add case
3700        for GCONF_VALUE_INVALID
3701
3702        * backends/xml-backend.c (entry_unset): refill cached_value if
3703        other locale values still exist. Also, mark the Entry dirty.
3704        (entry_value): add a sync_if_needed here
3705        (entry_sync_if_needed): just always sync if it's a schema; this
3706        code is so broken we may as well not try to be clever. 
3707
37081999-11-15  Havoc Pennington  <hp@pobox.com>
3709
3710        * backends/xml-backend.c (entry_fill): handle locale by syncing
3711        cached value if necessary
3712       
3713        * wrappers/gtk/gconf-client.c (gconf_client_get_string):
3714        g_strdup() the retval if necessary
3715        (gconf_client_get_pair): fix one of the checks
3716
3717        * backends/xml-backend.c (xentry_extract_value): use "C" locale if
3718        none is given.
3719
3720        * gconf/gconftool.c (do_load_schema_file): check type of nodes
3721        (process_key_list): check node type
3722        (process_schema): check node type
3723        (process_locale_info): check node type
3724        (extract_global_info): check node type
3725
3726        * backends/xml-backend.c (entry_unset): deal with locales
3727        (entry_set): deal with locales
3728        (entry_value): locales
3729        (schema_node_extract_value): handle locales
3730
3731        * gconf/gconf-internals.c (gconf_log): move the check for debug
3732        messages to the top of the function, before g_strdup_vprintf(),
3733        and if GCONF_ENABLE_DEBUG isn't defined return immediately (ignore
3734        the GCL_DEBUG messages).
3735
37361999-11-15  Havoc Pennington  <hp@pobox.com>
3737
3738        * doc/gconf/tmpl/gconf-client.sgml: write GConfClient docs.
3739
3740        * wrappers/gtk/gconf-client.c (gconf_client_new_with_engine):
3741        change this to increment the #GConfEngine reference count.
3742
3743        * doc/gconf/gconf.sgml: Add GConfClient entity
3744
3745        * doc/gconf/gconf-sections.txt: Add GConfClient stuff, add
3746        set_list and set_pair for GConfChangeSet
3747
3748        * doc/gconf/gconf.types: New file gtk-doc requires
3749
3750        * doc/gconf/Makefile.am (scan): Scan GConfClient as well.
3751        Uses a bad, probably nonportable hack, but this stuff isn't
3752        built by default anyway.
3753
3754        * wrappers/Makefile.am: Build GConfClient if we have GNOME
3755
37561999-11-15  Havoc Pennington  <hp@pobox.com>
3757
3758        * gconf/gconf.c (gconf_get): Fix it to use the current
3759        locale as documented.
3760
3761        * gconf/gconf-internals.c
3762        (gconf_value_list_to_primitive_list_destructive): new function
3763        takes most code from gconf_get_list()
3764        (gconf_value_pair_to_primitive_pair_destructive): new function
3765
3766        * wrappers/gtk/gconf-client.c (get): Return a copy of the cached
3767        value, should save us some segfaults.
3768        (gconf_client_get_list): new function
3769        (gconf_client_get_pair): new function
3770        (gconf_client_set_list): new function
3771        (gconf_client_set_pair): new function
3772
3773        * gconf/gconf-internals.c (gconf_value_pair_from_primitive_pair):
3774        new function removes guts of gconf_set_pair()
3775
3776        * gconf/gconf.c (gconf_set_list): change to use
3777        gconf_value_list_from_primitive_list()
3778
3779        * gconf/gconf-changeset.c (gconf_change_set_set_list): new
3780        convenience function
3781        (gconf_change_set_set_pair): new function
3782
3783        * gconf/gconf-internals.c (gconf_value_list_from_primitive_list):
3784        new function, takes most of the code from gconf_set_list() to
3785        share with other list-set wrappers
3786
37871999-11-14  Havoc Pennington  <hp@pobox.com>
3788
3789        * backends/xml-backend.c (listify_foreach):  s/gconf_entry_new/gconf_entry_new_nocopy/
3790
3791        * gconf/gconf.c (gconf_all_entries):  s/gconf_entry_new/gconf_entry_new_nocopy/
3792
3793        * gconf/doc/*: tons of documentation updates.
3794       
3795        * gconf/gconf-changeset.c: Add an "in_foreach" flag and warn if
3796        you do bad things during a foreach operation.
3797        (gconf_change_set_remove): check that we aren't in a foreach
3798        (gconf_change_set_unref): if refcount == 0 check that we aren't in
3799        a foreach
3800
3801        * gconf/gconf-changeset.h: try to spell "committed" right.
3802
3803        * gconf/gconf-value.h (gconf_entry_value): add accessor macros
3804        to GConfEntry.
3805
3806        * gconf/gconf-value.c (gconf_entry_new_nocopy): Rename
3807        gconf_entry_new() to gconf_entry_new_nocopy() to reflect its
3808        actual behavior.
3809
38101999-11-13  Havoc Pennington  <hp@pobox.com>
3811
3812        * gconf/gconf-internals.h: move the value-from-string constructors
3813        here
3814
3815        * gconf/gconf-value.h: moved from here
3816
38171999-11-13  Havoc Pennington  <hp@pobox.com>
3818
3819        * gconf/gconf-value.h (gconf_meta_info_schema): Add const cast to
3820        this macro.
3821
3822        * gconf/gconf.c (gconf_set_list): allow list of schemas
3823        (from_primitive): handle schemas
3824        (primitive_value): handle schemas
3825        (gconf_get_list): handle schemas
3826
3827        * doc/gconf/tmpl/gconf-value.sgml: docs!
3828
3829        * doc/gconf/tmpl/gconf.sgml: docs!
3830
3831        * doc/gconf/gconf-sections.txt: add set/get list/pair
3832
3833        * gconf/gconf.c (gconf_set_list): Fix dumb bug (assign back to the
3834        original list!)
3835
38361999-11-13  Havoc Pennington  <hp@pobox.com>
3837
3838        * tests/testgconf.c (check_list_storage): Use the new list
3839        convenience wrappers, to be sure they are tested. (the test
3840        reveals that right now they don't work ;-)
3841
3842        * gconf/gconf.c (error_checked_set): destroy the error if it isn't
3843        passed out to the user, to avoid a mem leak
3844        (gconf_set_float): checks
3845        (gconf_set_int): checks
3846        (gconf_set_string): checks
3847        (gconf_set_bool): checks
3848        (gconf_set_bool): canonicalize the boolean value with !!
3849        (gconf_set_schema): checks
3850
3851        * gconf/gconf-value.h (gconf_value_string): add const cast to this
3852        macro
3853
3854        * gconf/gconf.c (gconf_get_schema): add checks
3855        (gconf_get_bool): checks
3856        (gconf_get_string): checks
3857        (gconf_get_int): checks
3858        (gconf_get_float): checks
3859        (gconf_get_with_locale): checks
3860        (gconf_set): more checks
3861        (gconf_unset): checks
3862        (gconf_associate_schema): checks
3863        (gconf_all_dirs): checks
3864        (gconf_dir_exists): checks
3865        (gconf_get_list): New function, gets a list of native types
3866        and avoids GConfValue.
3867        (gconf_get_pair): New function, gets a pair of native types
3868        (gconf_set_list): New function, sets a list of native types
3869        (gconf_set_pair): New function, sets a pair of native types
3870       
38711999-11-12  Havoc Pennington  <hp@pobox.com>
3872
3873        * doc/gconf/gconf.sgml: Set up the gtk-doc system. Added all the
3874        files for that.
3875
38761999-11-12  Havoc Pennington  <hp@pobox.com>
3877
3878        * backends/xml-backend.c: Change all comments starting with /** to
3879        not start with that (for gtkdoc)
3880
38811999-11-12  Havoc Pennington  <hp@pobox.com>
3882
3883        * gconf/gconftool.c (main): Add the ability to specify a
3884        configuration source other than the default configuration source
3885        stack.
3886        Add the ability to install a schema file.
3887
3888        * gconf/Makefile.am (INCLUDES): add XML_CFLAGS
3889        (gconftool_LDADD): add XML_LIBS
3890
3891        * backends/Makefile.am (INCLUDES): add XML_CFLAGS
3892
38931999-11-11  Havoc Pennington  <hp@pobox.com>
3894
3895        * tests/testchangeset.c: test for the changeset stuff
3896       
3897        * gconf/gconf.c (gconf_set): add check that string values don't
3898        contain a NULL string   
3899
3900        * gconf/gconf-changeset.c (gconf_change_set_unset): fix typo
3901
3902        * doc/gconf.sgml: tweaks
3903       
3904        * gconf/gconf-changeset.c, gconf/gconf-changeset.h: ChangeSet data
3905        structure stores a bunch of changes to be committed in a block.
3906        For now the gconf_commit_change_set() function is really naive
3907        (iterates over the change set and sets each value)
3908
3909        * backends/xml-backend.c: Throughout, use accessor functions to
3910        access the "value" field in the cache entries; we're going to
3911        have to update the value field to match the proper locale
3912        before supplying it via the entry_value() accessor.
3913
39141999-11-11  Havoc Pennington  <hp@pobox.com>
3915
3916        * tests/runtests.sh: Enhance to detect missing tests.
3917
3918        * gconf/gconf-internals.c (gconf_log): don't log DEBUG level stuff
3919        if built without GCONF_ENABLE_DEBUG
3920
3921        * backends/xml-backend.c (safe_g_hash_table_insert): Same, use
3922        GCONF_ENABLE_DEBUG
3923        Add locales stuff throughout this file, but do nothing with it for
3924        now.
3925
3926        * gconf/gconfd.c (safe_g_hash_table_insert): Make this dependent
3927        on GCONF_ENABLE_DEBUG setting.
3928
3929        * gconf/gconf-sources.c (gconf_sources_query_value): fix locale
3930        (gconf_sources_unset_value): locale
3931        (gconf_sources_all_entries): locales
3932
3933        * gconf/gconfd.c (context_query_value): Use locale list
3934        (context_unset): locale argument
3935        (context_all_entries): locale argument
3936        (gconfd_unset_with_locale): locale
3937
3938        * gconf/gconf-sources.c (gconf_source_query_value): Pass an array
3939        of locales to look for
3940        (gconf_source_all_entries): ditto
3941        (gconf_source_unset_value): pass locale to unset
3942
3943        * gconf/gconf-backend.h: Add locale args to the backend functions
3944        that need it
3945
3946        * gconf/gconf-internals.c (gconf_current_locale): Use setlocale()
3947        again, not guess_category_value from gnome-i18n
3948
39491999-11-10  Havoc Pennington  <hp@pobox.com>
3950
3951        * gconf/Makefile.am (gconfd_SOURCES): Move the locale stuff here;
3952        decided not to use it in backends, so it can be in gconfd not the
3953        library.
3954
3955        * gconf/gconfd.c (one_hour_timeout): Expire old locale cache stuff
3956        (locale_cache_lookup): New function to look stuff up in the locale
3957        cache.
3958        (main): free the locale cache on exit
3959
39601999-11-10  Havoc Pennington  <hp@pobox.com>
3961
3962        * backends/xml-backend.c (free_childs): function to free children
3963        of a node.
3964        (xentry_set_value): free_childs() in a couple places we weren't
3965
3966        * tests/testschemas.c: Add new schema test to check for storing a
3967        blank schema
3968
3969        * gconf/gconf-locale.c, gconf/gconf-locale.h: New module, creates
3970        and caches the list of locales to search for given an environment
3971        variable value
3972
3973        * gconf/gconf-internals.c (gconf_current_locale): We want
3974        LC_MESSAGES not LC_ALL
3975
39761999-11-07  Havoc Pennington  <hp@pobox.com>
3977
3978        * gconf/gconf.c (reinstall_listeners_for_all_engines): Function to
3979        iterate over all engines and do the context
3980        reinstallation. However, it's not used yet because we also need
3981        to regenerate the context IDs.
3982
3983        * gconf/gconfd.c: Add a ConfigServer_Context field to GConfContext
3984        (register_context): fill in the ConfigServer_Context field
3985        (context_new): init context field to invalid context
3986
3987        * gconf/gconf.c (register_engine): Keep a hash from context ID's
3988        to GConfEngine, because we no longer have the global connection
3989        table (that table was broken anyway).
3990        (gconf_engine_blank): new function shared by the GConfEngine
3991        constructors (contains previous contents of gconf_engine_new,
3992        separate function required by registration stuff)
3993        (gconf_engine_new): Create blank engine, then register it
3994        (gconf_engine_new_from_address): register the engine
3995        (gconf_engine_unref): unregister the engine
3996
3997        * gconf/GConf.idl: Add a context ID to the argument
3998        list of the notification.
3999
4000        * gconf/gconf.c (gconf_server_broken): New predicate, asks if an
4001        exception is set indicating that our server is hosed.
4002        (gconf_detach_config_server): Function to release the server
4003        object reference and set it to nil
4004        (gconf_engine_new_from_address): Detach server and retry if
4005        appropriate.
4006        (gconf_notify_add): Detach and respawn if needed
4007        (gconf_notify_remove): ditto
4008        (gconf_set): ditto
4009        (gconf_associate_schema): ditto
4010        (gconf_unset): ditto
4011        (gconf_all_entries): ditto
4012        (gconf_all_dirs): ditto
4013        (gconf_suggest_sync): ditto
4014        (gconf_notify_add): remove debugging spew
4015        (gconf_cnxn_new): Add namespace_section to GConfCnxn struct
4016        (gconf_cnxn_destroy): free namespace_section
4017        (GConfEnginePrivate): Put the connection table in here, it is
4018        per-context (and thus per-GConfEngine), should not be global.
4019        (gconf_init): don't create CnxnTable here, create it for each engine.
4020        (gconf_engine_new_from_address): remove redundant refcount
4021        initialization
4022        (gconf_engine_unref): Destroy CnxnTable, and free the engine
4023        struct itself.
4024        (notify): remove debug spew, reflect new signature of notify function
4025
40261999-11-07  Havoc Pennington  <hp@pobox.com>
4027
4028        * gconf/gconf-internals.c: #include <locale.h>, oops
4029
40301999-11-07  Havoc Pennington  <hp@pobox.com>
4031
4032        * tests/testschemas.c (check_schema_storage): Properly consider
4033        that schema fields can be NULL
4034
4035        * backends/xml-backend.c (entry_value): Properly consider that
4036        a schema can have a NULL locale
4037
4038        * gconf/gconf.c (gconf_get_with_locale): New function
4039        (gconf_get): just calls get_with_locale() with a NULL locale
4040        (gconf_get_schema): Use get_with_locale()
4041
4042        * gconf/gconf-internals.c (gconf_current_locale): So I don't have
4043        to think about setlocale()
4044
4045        * tests/testschemas.c: New test program for schema stuff
4046       
40471999-11-06  Havoc Pennington  <hp@pobox.com>
4048
4049        * gconf/gconf.c (gconf_associate_schema): Add function to associate
4050        a schema name with a key.
4051
40521999-10-28  Havoc Pennington  <hp@pobox.com>
4053
4054        * backends/xml-backend.c (query_value): Add locale
4055        (dir_get_value): add locale
4056        (entry_value): new function gets the value from an entry,
4057        looking up a new value by locale if necessary.
4058
4059        (xentry_extract_value): locale argument added, but needs to
4060        be implemented.
4061
4062        * gconf/gconf-backend.h: Add locale to query_value in vtable
4063
4064        * gconf/gconf-sources.c (gconf_source_query_value): Add locale
4065        (gconf_sources_query_value): Add locale
4066
4067        * gconf/gconfd.c (gconfd_lookup_with_locale): Implement new
4068        IDL method
4069        (context_query_value): Add locale
4070
4071        * gconf/GConf.idl: Add lookup_with_locale() method
4072
4073        * gconf/gconf-internals.c (fill_corba_schema_from_gconf_schema):
4074        Handle case where some schema fields are NULL, handle locale field.
4075        (gconf_schema_from_corba_schema): Handle locale field.
4076
4077        * gconf/gconf-schema.c (gconf_schema_set_locale): New function
4078
4079        * gconf/gconftool.c: Clean up so it is easier to deal with
4080
40811999-10-28  Havoc Pennington  <hp@pobox.com>
4082
4083        * gconf/gconfd.c: Rework the sync code; now, any change queues a
4084        sync in 1 minute. If a client calls suggest_sync(), we sync in an
4085        idle (as soon as the event loop quiets down). Also, we now sync
4086        on shutdown.
4087
4088        * tests/testgconf.c: Fix to compile
4089
4090        * tests/Makefile.am (testgconf_LDADD): Fix Makefile.am to use new
4091        library name
4092
40931999-10-27  Havoc Pennington  <hp@pobox.com>
4094
4095        * configure.in: Add --enable-debug option to G_DISABLE_CHECKS as needed
4096
4097        * gconf/wrappers/gtk/testgconfclient.c: Test program for the GTK+
4098        client wrapper.
4099       
4100        * gconf/gconf-sources.c (gconf_sources_query_value):
4101        Wasn't handling errors; now we report errors. The bad thing is,
4102        it might be better to go ahead and do our best despite the error.
4103
4104        * gconf/gconf.c (gconf_init): Actually set the have_initted variable.   
4105
4106        * wrappers/gtk/Makefile.am (libgconf_gtk_la_LIBADD): Don't try to
4107        link with libgconf;
4108        Add testgconfclient target.
4109
4110        * wrappers/gtk/gconf-client.h, wrappers/gtk/gconf-client.c: Make
4111        it compile
4112       
4113        * configure.in: Generate Makefile for GtkObject wrapper
4114
41151999-10-27  Havoc Pennington  <hp@pobox.com>
4116
4117        * gconf-editor/Makefile.am (gconf_editor_LDADD):
4118        link to libgconf.la
4119
4120        * gconf/Makefile.am: Renamed the shared lib to libgconf instead of
4121        libgconf-client.
4122       
4123        * wrappers/gtk/Makefile.am: Renamed gconf-gtk.[hc] to
4124        gconf-client.[hc] via CVS surgery, then updated Makefile.
4125
41261999-10-21  Havoc Pennington  <hp@pobox.com>
4127
4128        * gconf/gconf.c (gconf_key_is_below): New function, tells you if a
4129        key is below another key in the directory hierarchy.
4130
41311999-10-20  Havoc Pennington  <hp@pobox.com>
4132
4133        * gconf/gconfd.c, gconf/gconf-sources.c: Finish stuff from the
4134        17th (use GConfError throughout, etc.)
4135
4136        * gconf/gconfd-error.h, gconf/gconfd-error.c: Remove the broken
4137        old error stuff, even gconfd no longer uses it.
4138       
41391999-10-17  Havoc Pennington  <hp@pobox.com>
4140
4141        * gconf/gconf-sources.c: Use GConfError** throughout, make the
4142        _source_ functions static
4143        (gconf_sources_query_value): Use the new flags and readable
4144        function
4145        (gconf_sources_set_value): use the new flags and writeable
4146        function
4147
4148        * gconf/gconf-error.c (gconf_error_copy): new function
4149        (gconf_compose_errors): new function
4150
4151        * backends/xml-backend.c: Throughout, use a GConfError** argument
4152        instead of the global errno thing
4153       
4154        * gconf/gconf-error.c (gconf_set_error): New function properly
4155        handles a GConfError** by setting error or ignoring if NULL,
4156        also warns if you "stack" two errors on top of each other.
4157        (gconf_clear_error): New function clears a GConfError**
4158
4159        * gconf/gconfd.c: don't include gconfd-error.h
4160
4161        * backends/xml-backend.c: Remove inclusion of gconfd-error.h
4162
4163        * gconf/gconf-backend.h: Add lock/unlock and readable/writeable
4164        functions to the backend vtable, and add error arguments to
4165        all functions in the vtable.
4166
4167        * gconf/gconfd.c (safe_g_hash_table_insert): priority GCL_WARNING
4168
4169        * backends/xml-backend.c (safe_g_hash_table_insert): make
4170        it priority GCL_WARNING.
4171
4172        * gconf/gconf-sources.h: GCONF_SOURCE_ALL_WRITEABLE,
4173        GCONF_SOURCE_ALL_READABLE flags to short-circuit calls to the new
4174        writeable/readable vtable functions.
4175
41761999-10-17  Havoc Pennington  <hp@pobox.com>
4177
4178        * gconf/gconf-orbit.h: Include orb/orbit.h instead of GConf.h
4179
41801999-10-17  Havoc Pennington  <hp@pobox.com>
4181
4182        * backends/xml-backend.c: Use %gconf.xml instead of .gconf.xml
4183        for the magic files.
4184
41851999-10-17  Havoc Pennington  <hp@pobox.com>
4186
4187        * tests/runtests.sh: Make this script work
4188
4189        * gconf/gconftool.c: Don't use -s for --spawn, since it's used for
4190        --set.
4191
4192        * gconf/gconf.c (gconf_get_config_server): Clear the error
4193        from the initial ping if we're asked to start the server.
4194        (gconf_engine_unref): No error spew if server is down when
4195        the engine is destroyed.
4196
4197        Throughout: Make sure error is set but don't require a
4198        specific error type
4199
4200        * gconf/gconf-internals.c (gconf_read_server_ior): Set error
4201        if the server info file doesn't exist
4202
4203        * gconf/gconf.c (try_to_contact_server): Add a check for setting
4204        the error properly
4205
4206        * gconf/gconftool.c (main): Switch to gconf_suggest_sync()
4207        instead of gconf_sync()
4208
4209        * gconf/gconfd.c: Add a GConfContext::sync_idle field, to
4210        store the source ID of an idle function that performs a sync.
4211        (context_destroy): Remove the sync idle
4212        (context_hibernate): Check that sync idle is 0
4213        (context_sync): Add the sync idle if it doesn't exist
4214
4215        * gconf/gconf.c (gconf_suggest_sync): gconf_sync() renamed to
4216        gconf_suggest_sync(), because a sync is for all clients;
4217        suggest_sync() means "I just finished a large block of operations,
4218        so I'm suggesting that it would be efficient and data-preserving
4219        to schedule a sync in the near future." gconf_sync() didn't
4220        make much sense because it was global, not per-client.
4221       
42221999-10-17  Havoc Pennington  <hp@pobox.com>
4223
4224        * For all files, s/G_CONF/GCONF
4225
42261999-10-12  Havoc Pennington  <hp@pobox.com>
4227
4228        * gconf/gconfd.c: Use GConfListeners to handle listener
4229        registration and notification
4230
42311999-10-12  Havoc Pennington  <hp@pobox.com>
4232       
4233        * gconf/gconf-listeners.c (ltable_insert): Was failing to init
4234        the node in the flat array of nodes if the listener location
4235        was NULL.
4236        (gconf_listeners_count): new function reports number of listeners
4237        (ltable_new): init next_cnxn to 1 instead of 0
4238        (ltable_remove): Do a better job of cleaning up dead
4239        tree nodes (go up looking for empty parent nodes)
4240        (ltable_destroy): type error, was calling listener_destroy()
4241        on the GNodes. Oops. fixed, now use g_node_traverse() to
4242        destroy the node contents.
4243        (ltable_new): don't create the root node until it's needed
4244        (ltable_insert): add root node here if needed
4245        (ltable_remove): zero lt->tree if we destroy it
4246       
4247        * tests/testlisteners.c: New test program for GConfListeners,
4248        fairly comprehensive
4249
4250        * tests/Makefile.am: add testlisteners, put EFENCE at the end of
4251        the link line
4252
42531999-10-12  Havoc Pennington  <hp@pobox.com>
4254
4255        * gconf/Makefile.am: Fixes - remove some public headers from
4256        libgconf_client_SOURCES, look for GConf.idl in $(srcdir) (bug from
4257        Wichert Akkerman)
4258
4259        * gconf/gconf-listeners.h, gconf/gconf-listeners.c: New files,
4260        compile but are not tested. Moves listener tree interface into
4261        a public header to re-use in GTK+ wrapper.
4262
42631999-10-11  Havoc Pennington  <hp@pobox.com>
4264
4265        * For all files, s/g_conf/gconf
4266
42671999-10-05  Havoc Pennington  <hp@pobox.com>
4268
4269        * tests/testgconf.c (check_list_storage): Add checks for empty
4270        lists, and all the various list types.
4271
4272        * gconf/gconf-value.c (g_conf_value_to_string): Fix a segfault
4273        (not always allocating a large enough buffer)
4274
42751999-10-05  Havoc Pennington  <hp@pobox.com>
4276
4277        * configure.in: 0.3, bump soname
4278
42791999-10-04  Havoc Pennington  <hp@pobox.com>
4280
4281        * tests/testgconf.c (main): Add checks for getting/setting lists,
4282        bools, floats, and ints
4283
4284        * gconf/gconf-internals.c (fill_corba_value_from_g_conf_value): We
4285        have to set the release flag on a sequence inside a union, since
4286        the sequence isn't default initialized as it normally would be.
4287        Plugs a big memory leak (all sequence buffers).
4288
4289        * backends/xml-backend.c (dir_fill_cache_from_doc): Plug a leak
4290        where we set entry->name and then reset it in entry_fill()
4291        (entry_destroy): Free entry->mod_user
4292        (x_shutdown): Renamed shutdown() to x_shutdown() to avoid
4293        namespace clash with some libcs. Bug report from Bjorn Andersson
4294        <ban@lifix.fi>.
4295
4296        * gconf/gconf-internals.c (g_conf_log): Plug memory leak (not
4297        freeing log string)
4298
4299        * gconf/gconfd.c (gconfd_set): Plug memory leak (not freeing the GConfValue)
4300
4301        * tests/Makefile.am: Make testgconf noinst
4302
4303        * gconf/gconfd.c (main): check GCONFD_NO_DAEMON environment
4304        variable to run in no-daemon mode for debugging. Needless to say
4305        this does NOT work if you are trying to use gconf for real.
4306
4307        * gconf/gconf-internals.c (fill_corba_value_from_g_conf_value):
4308        Fill in the list type in the CORBA value
4309        (g_conf_value_from_corba_value): Fill in the list type in the
4310        GConfValue
4311
4312        * gconf/GConf.idl: Create ConfigList type to past the list type
4313        along with the sequence of values
4314
4315        * gconf/gconf-value.c (g_conf_value_set_list): New function, list
4316        setter that copies the list
4317
4318        * gconf/gconf.c (g_conf_unset, g_conf_set): return boolean to
4319        indicate success
4320
4321        * gconf/gconf-value.c (g_conf_value_new_from_string): Rewrite the
4322        bool string parser with switch, accept y/n as values.
4323
43241999-10-01  Havoc Pennington  <hp@pobox.com>
4325
4326        * gconf/gconf-sources.c (g_conf_sources_query_value): Check for
4327        errors when we query the default value from the schema.
4328
4329        * backends/xml-backend.c (entry_fill): If the schema key for a key is
4330        invalid, don't load it.
4331
43321999-09-30  Havoc Pennington  <hp@pobox.com>
4333
4334        * gconf/gconf-sources.c (g_conf_key_check_hack): Clear error
4335        before we check the key
4336
4337        * backends/xml-backend.c (dir_unset_value): Actually set the
4338        entry's value to NULL
4339        (entry_destroy): check whether Entry::value is NULL. Not sure
4340        why I didn't check; I think NULL is allowed, but if not
4341        we will have problems I guess.
4342
4343        * tests/testgconf.c: Easiest to just write the test suite in
4344        C. Tests set/get and unset for strings so far.
4345
43461999-09-29  Havoc Pennington  <hp@pobox.com>
4347
4348        * gconf/gconf.sgml: Update docs
4349
43501999-09-29  Havoc Pennington  <hp@pobox.com>
4351
4352        * gconf/gconf-conf.h: Replaced with gconf-engine.h
4353
4354        * gconf/Makefile.am: use gconf-engine.h
4355
4356        * gconf/gconf.c, gconf/gconf.h, gconf/gconftool.c,
4357        gconf-editor/app.c, wrappers/guile/scm-gconf.c:
4358        Use GConfEngine name instead of GConf
4359
43601999-09-29  Rodrigo Stulzer Lopes <rodrigo@conectiva.com.br>
4361
4362        * configure.in: added pt_BR to ALL_LINGUAS
4363
43641999-09-29  Havoc Pennington  <hp@pobox.com>
4365
4366        * backends/xml-backend.c: include gconfd-error.h and gconf.h,
4367        change error checking to new system as needed
4368
4369        * gconf/Makefile.am: Put more stuff in gconfd_SOURCES instead of
4370        client lib, add new files
4371
4372        * gconf/gconf-backend.h: include gconf-sources.h
4373
4374        * gconf/gconf-conf.h: add error arg to g_conf_new_from_address
4375
4376        * gconf/gconf-error.c: move strerror in here, fixups,
4377        preconditions
4378
4379        * gconf/gconf-internals.c, gconf/gconf-sources.c: move all sources
4380        stuff to new gconf-sources file
4381
4382        * gconf/gconf-orbit.c: Check for failure to get lock
4383
4384        * All the rest of this giant diff: Move to new error-handling
4385        scheme
4386       
43871999-09-26  Havoc Pennington  <hp@pobox.com>
4388
4389        * gconf/Makefile.am: add gconf-error.h, gconf-conf.h headers,
4390        gconf-value.c file
4391
4392        * gconf/gconf-error.h, gconf/gconf-conf.h, gconf/gconf-value.c:
4393        New files, just rearranging old files, no new code (well, there is
4394        a new GConfError object but it's unused)
4395
4396        * gconf/gconf-internals.c: Move the value, metainfo, and entry
4397        datatypes to gconf-value.c
4398
4399        * gconf/gconf.c, gconf/gconf.h: Remove appname argument from
4400        g_conf_init(), remove g_conf_global_appname() function.
4401
4402        * gconf/gconftool.c: don't pass appname to g_conf_init()
4403
4404        * gconf-editor/gconf-editor.c: Ditto
4405       
44061999-09-25  Kjartan Maraas  <kmaraas@online.no>
4407
4408        * configure.in: Added "da" to ALL_LINGUAS.
4409       
44101999-09-19  Havoc Pennington  <hp@pobox.com>
4411
4412        * NEWS, README: put something in here
4413
4414        * Makefile.am: conditionally include gconf-editor if we have
4415        GNOME
4416
4417        * autogen.sh: make it more like "macros" autogen.sh
4418       
4419        * configure.in: manually check for GNOME instead of using
4420        "macros"
4421       
4422        * macros, intl: remove these subdirs, autogen.sh now
4423        generates intl
4424
4425        * gconf/gconf.c: fix array size for strerror messages
4426
4427        * gconf-editor/Makefile.am: use new GNOME variables
4428
4429        * gconf-editor/gconf-editor.c: use new g_conf_init()
4430        signature
4431
4432        * gconf-editor/menus.h, gconf-editor/menus.c: These
4433        hadn't been added
4434       
44351999-09-19  Havoc Pennington  <hp@pobox.com>
4436
4437        * gconf/gconf.h: Add G_CONF_OVERRIDDEN error if you try to
4438        set a value which will have no effect due to a read-only
4439        setting earlier in the path.
4440
4441        * gconf/gconf.c: Add G_CONF_OVERRIDDEN to strerror, etc.
4442
4443        * gconf/GConf.idl: add ConfigOverridden to pass it across the
4444        CORBA link
4445
4446        * doc/gconf.sgml: Add more stuff to docs
4447       
44481999-09-17  Havoc Pennington  <hp@pobox.com>
4449
4450        * gconf/gconf-internals.c (subst_variables): Add a new function to
4451        perform variable substitution on addresses in the path file.
4452        Supports $(HOME), $(USER), and $(ENV_ANYENVVARNAME)
4453
4454        * Makefile.am: Add "doc" subdir
4455
4456        * doc/Makefile.am: Added
4457
4458        * doc/gconf.sgml: write more docs
4459       
44601999-09-03  Havoc Pennington  <hp@pobox.com>
4461
4462        * configure.in: Set library version info variables, and locate
4463        Guile libraries, etc.   
4464
4465        * wrappers/Makefile.am: conditionally build Guile subdir if we
4466        found guile.
4467
4468        * wrappers/guile: new subdir with the basic files/build for Guile
4469        bindings, will add the actual bindings later.
4470       
44711999-09-03  Havoc Pennington  <hp@pobox.com>
4472
4473        * configure.in: set POPT_LIBS instead of adding -lpopt to generic
4474        LDFLAGS; this was causing libtool to fail to generate the .so
4475        file for the XML backend module.
4476
4477        * gconf/Makefile.am: use POPT_LIBS
4478
4479        * gconf/gconf-backend.c: change some g_warning to g_conf_log
4480
44811999-09-03  Havoc Pennington  <hp@pobox.com>
4482
4483        * gconf/gconfd.c: Every hour or so, hibernate all contexts that
4484        haven't been accessed in 45 minutes. Make some assorted changes
4485        to support that.
4486
44871999-09-02  Havoc Pennington  <hp@pobox.com>
4488
4489        * gconf/gconf-internals.h, gconf/gconf-internals.c: Add a new
4490        g_conf_log() function for logging errors in backends;
4491        for now this wraps syslog() but if we eventually have non-daemon
4492        direct access to backends, we will need to change it. Use
4493        g_conf_log() throughout this file instead of printf() and
4494        g_warning().
4495
4496        * gconf/backends/xml-backend.c: Install a timeout which cleans
4497        old stuff out of the cache every 5 minutes; use g_conf_log
4498        to report problems.
4499
4500        * gconf/gconfd.c: Use g_conf_log(); log "exiting" later than we
4501        had been, after shutting everything down.
4502
45031999-09-02  Havoc Pennington  <hp@pobox.com>
4504
4505        * backends/Makefile.am: Install backends in $(libdir)/gconf
4506
4507        * gconf/Makefile.am: Look for backends in $(libdir)/gconf
4508
4509        * gconf/gconf-backend.c (g_conf_backend_file): Use
4510        g_module_build_path() to build the module path
4511
4512        * gconf/gconf-orbit.c (g_conf_get_cookie_reliably): Make the
4513        ~/.gconfd directory if necessary.
4514
4515        Lots of error-checking added.
4516
4517        * gconf/gconfd.c: Mark a lot of strings for translation; include
4518        username in the syslog spew.
4519
45201999-09-02  Havoc Pennington  <hp@pobox.com>
4521
4522        * gconf/gconfd.c (main): If the orb init fails, syslog the
4523        GConf error.
4524
4525        * gconf/gconf-orbit.c: Add tons of error checks/reports
4526
45271999-09-01  Tim P. Gerla  <timg@means.net>
4528
4529        * configure.in: Added test for popt.
4530
45311999-09-01  Havoc Pennington  <hp@pobox.com>
4532
4533        * backends/xml-backend.c (dir_get_value): Fix a segfault, check
4534        that an Entry != NULL before dereferencing it
4535
4536        * GConf.idl: Add ConfigException and ConfigErrorType to pass
4537        errors from server to client
4538
4539        * gconf.c (g_conf_handle_corba_exception): set the GConf error
4540        based on CORBA error, if any, and free the exception.
4541        Use throughout the file to receive server errors.
4542
4543        * gconfd.c (g_conf_set_exception): set the CORBA exception based
4544        on the GConf error, if any. Use this function throughout the file
4545        to send errors to clients.
4546        (g_conf_nuke_dir): Remove this obsolete function
4547        (context_set): don't notify listeners of a change if an error
4548        occurred
4549
45501999-09-01  Havoc Pennington  <hp@pobox.com>
4551
4552        * configure.in: add gmodule check to AM_PATH_GLIB, add an error if
4553        glib isn't found, use detected $XML_CONFIG to instead of
4554        xml-config, AC_PATH_PROG orbit-config, check for C++ compiler
4555        (since we'll have a C++ wrapper soon)
4556
4557        * gconf/Makefile.am: Assume GMODULE_CFLAGS are now included in
4558        GLIB_CFLAGS since we fixed configure.in
4559
4560        * gconf/gconf.c, gconf/gconf.h: Reference count the GConf object,
4561        add extern "C" when using C++
4562
4563        * gconf/gconftool.c: unref instead of destroying the GConf object
4564
45651999-08-31  Dave Camp  <campd@oit.edu>
4566
4567        * gconf/gconf.c (g_conf_is_initialized): New function.
4568
45691999-08-31  Dave Camp  <campd@oit.edu>
4570
4571        * gconf/gconftool.c (main): Changed --dir-exists to return 0 if
4572        the dir exists, and 2 if it does not.
4573
45741999-08-31  Dave Camp  <campd@oit.edu>
4575
4576        * gconf/gconftool.c (options): Added "--dir-exists".
4577        (main): If dir_exists is on the command line, check if the argument dir
4578        exists.
4579
4580        * gconf/gconfd.c (server_epv): Added gconfd_dir_exists.
4581        (gconfd_dir_exists): New function.
4582        (context_dir_exists): New function.
4583
4584        * gconf/gconf.c (g_conf_dir_exists): New function.
4585
4586        * gconf/gconf-internals.c (g_conf_sources_dir_exists): New function.
4587        (g_conf_source_dir_exists): New function.
4588
4589        * gconf/gconf-backend.h (GConfBackendVTable): Added a dir_exists
4590        entry.
4591
4592        * gconf/GConf.idl (dir_exists): New function.
4593
4594        * backends/xml-backend.c (dir_exists): New function.
4595        (xml_vtable): Added dir_exists.
4596
45971999-08-30  Dave Camp  <campd@oit.edu>
4598
4599        * gconf/gconf.h: #include gconf-orbit.h.
4600
4601        * gconf/Makefile.am (gconfinclude_HEADERS): Install gconf-orbit.h,
4602        GConf.h
4603
46041999-08-29  Dave Camp  <campd@oit.edu>
4605
4606        * Makefile.am (bin_SCRIPTS): Install gconf-config.
4607
4608        * configure.in (AC_OUTPUT): Create gconf-config.
4609
4610        * gconf/Makefile.am: Install gconf.h and gconf-schema.h.
4611       
4612
46131999-08-29  Dave Camp  <campd@oit.edu>
4614
4615        * configure.in (XML_LIBS): Use xml-config.
4616
46171999-08-29  Kjartan Maraas  <kmaraas@online.no>
4618
4619        * configure.in: Added "no" to ALL_LINGUAS
Note: See TracBrowser for help on using the repository browser.