dconf 0.26.0
[dconf.git] / NEWS
blobb90d26572834a719de8fa289de3bbd27e4380c4a
1 Changes in dconf 0.26.0
2 ========================
4 None.
6 Changes in dconf 0.25.1
7 ========================
9  - the libdbus-1 backend has been removed.  dconf now always uses GDBus.
11  - support has been added for system administration frameworks to set up
12    the dconf profile via a file placed in the XDG_RUNTIME_DIR or in
13    /run/dconf/.  In the case of the file in /run/dconf/, it is not
14    possible to modify the proile, even via the DCONF_PROFILE environment
15    variable, which makes it slightly more difficult to evade lockdown.
17  - directory resets are now implemented properly in DConfChangeset which
18    means that reading a subkey through a changeset that contains a reset
19    for a parent directory of that key will return TRUE with a NULL value
21  - a new API dconf_client_read_full() has been added which allows
22    reading the user value, the default value, or querying what the
23    effective value would be if a changeset were to be applied.
25  - a new API has been added for listing the locks that are in effect:
26    dconf_client_list_locks()
28  - DConfClient has a new "writability-changed" signal
30  - support for reading default values and listing locks have been added
31    to the dconf commandline tool
33  - support for g_autoptr() has been added for DConfClient and
34    DConfChangeset
36  - the handling of reading of default values via GSettings has been made
37    more efficient.  More major changes to the GSettings backend are
38    expected in the near future.
40 Changes in dconf 0.24.0
41 ========================
43 The version number was increased and a new entry was added to the NEWS.
45 Changes in dconf 0.23.2
46 ========================
48  - remove dconf-editor manpage (accidentally missed during the split)
50  - fix whitespace issues in 'dconf --help'
52 Changes in dconf 0.23.1
53 ========================
55  - dconf-editor is now in a separate package
57  - portability improvements
59 Changes in dconf 0.22.0
60 ========================
62  - fix handling of floating point keys in editor
64  - update appdata for renamed desktop file
66  - minor doap changes
68 Translations:
69    French
70    Indonesian
71    Lithuanian
72    Hungarian
73    Catalan (Valencian)
74    Korean
75    Traditional Chinese
76    Spanish
77    Brazilian Portuguese
78    Galician translations
79    Catalan
80    Basque language
81    Danish
82    Norwegian bokmål
83    Greek
84    Czech
85    Slovenian
86    Swedish
87    Polish
88    Latvian
89    Hebrew
90    Russian
91    German
92    Assamese
93    Serbian
95 Changes in dconf 0.21.0
96 ========================
98  - editor desktop file renamed to ca.desrt.dconf-editor to take advantage of
99    D-Bus activation
101  - prevent the service from being released more than once if we receive
102    multiple signals (which caused a hang)
104 Translations:
105   Indonesian
106   Greek
107   Swedish
109 Changes in dconf 0.20.0
110 ========================
112 Czech translation updated.
114 Changes in dconf 0.19.92
115 =========================
117  - depend on automake 1.11.2
119  - stop using ACLOCAL_FLAGS
121  - depend on released version of Vala (0.18.0)
123 Changes in dconf 0.19.91
124 =========================
126  - fix an unlikely failure in the fuzz testing of gvdb
128  - fix a thread safety issue with file-db
130 Changes in dconf 0.19.90
131 =========================
133  - dconf compile: always write little endian
135  - file-db: don't install match rules on no bus (fixes gdbus assertion)
137  - update dconf(1) manpage for 'dconf compile'
139  - fix 'make clean' on FreeBSD
141  - editor: provide appdata
143 Translations updates:
144   Ukrainian translation
145   Aragonese translation
146   Chinese
148 Changes in dconf 0.19.3
149 ========================
151  - quite a lot of test coverage improvements
153  - Add a proper DCONF_ERROR error domain
155  - suppress GLib deprecation warnings during build
157  - engine: issue warnings about missing files only once per source
159  - engine: grok the WritabilityNotify signal from D-Bus
161  - gsettings: handle writability changes correctly
163  - engine: assorted fixes for issues found during testing
165  - portability: only link to -ldl if it is required
167  - add support for 'file-db' to profiles: this is an absolute path to a
168    immutable dconf database file
170  - add support for finding profiles in XDG_DATA_DIRS if they are not in
171    /etc
173  - add 'dconf compile' command for building dconf databases from
174    keyfiles in arbitrary locations (like from the build system of a
175    project that may want to install a file-db)
177  - editor: add a section separator to the app menu for consistency
179 Changes in dconf 0.19.2
180 ========================
182  - Add support for the new GSettingsBackend.read_user_value() API
184  - bump GLib version depend accordingly (2.39.1)
186 Translations updates:
187  Greek
188  Catalan (Valencian)
189  Simplified Chinese
190  Persian
192 Changes in dconf 0.18.0
193 ========================
195 Translations updates:
196  Basque
197  Danish
198  Japanese
199  Korean
200  Portuguese
201  Punjabi
203 Changes in dconf 0.17.1
204 ========================
206 Documentation updates, including better coverage of profiles.
208 Translations updates:
209  Assamese
210  Belarusian
211  Catalan
212  Dutch
213  Estonian
214  Finnish
215  French
216  German
217  Hungarian
218  Indonesian
219  Italian
220  Korean
221  Latvian
222  Polish
223  Russian
224  Serbian
225  Tajik
226  Thai
227  Traditional Chinese
229 Changes in dconf 0.17.0
230 ========================
232 Fix a semi-serious thread safety issue:
234   https://bugzilla.gnome.org/show_bug.cgi?id=703073
236 Some improvements to the editor:
238  - fix some compile warnings
239  - use gresource
240  - cancel searches on escape
242 Translation updates:
243  Brazilian Portuguese
244  Czech
245  Esperanto
246  Friulian
247  Galician
248  German
249  Hebrew
250  Indonesian
251  Lithuanian
252  Malayalam
253  Norwegian bokmål
254  Slovak
255  Slovenian
256  Spanish
257  Tajik
259 Changes in dconf 0.16.0
260 ========================
262 This release one small fix and many translation updates.
264  - Set G_LOG_DOMAIN so that 'dconf' shows in GLib log messages
266 Translation updates:
267  Assamese
268  Basque
269  Belarusian
270  Brazilian Portuguese
271  Catalan
272  Czech
273  Danish
274  Estonian
275  Finnish
276  French
277  German
278  Greek
279  Hindi
280  Korean
281  Latvian
282  Persian
283  Portuguese
284  Punjabi
285  Russian
286  Tadjik
287  Tamil
288  Uyghur
289  Valencian
291 Changes in dconf 0.15.3
292 ========================
294 This release more or less completes the rewriting of dconf-service.
295 Support for backends are now fully-realised (and we have a couple of
296 them as proof).  Many small bugs (some with serious symptoms) have been
297 fixed vs. the last release.
299  - fix problem related to empty changesets (caused by empty 'dconf
300    load', for example).  These are now handled properly on the server
301    side but also forbidden in the client libraries.
303  - new icons: hicolor icons have been updated and a HighContrast set
304    added
306  - loosen some assertions on the order of messages being returned from
307    the service.  D-Bus violates this order in the case that the service
308    crashes and that's no reason to take the client with it as well.
310  - improve autogen.sh non-bash compatibility
312  - add some backends to the dconf-service (that were 'considered' as per
313    the last NEWS).  The first backend is a null backend that allows for
314    a temporary database tied to the lifetime of the session, possibly
315    useful for testing.
317  - also add a new 'keyfile' backend for the service.  This is primarily
318    intended to be used with NFS (where use of mmap is not safe)
320  - add a mkdir() in the case of an empty home directory where
321    ~/.config/dconf does not already exist
323  - fix crashes in the service caused by failures to write (including
324    failures caused by the above issue being overlooked)
326  - work around an issue with a testcase hanging and failing due to a
327    GLib change to the order in which testcases are run
329  - running autoreconf on tarballs should now work
331 Translations updated:
332  Aragonese
333  Friulian
334  Galician
335  Greek
336  Hebrew
337  Hungarian
338  Italian
339  Lithuanian
340  Norwegian bokmål
341  Polish
342  Serbian
343  Slovak
344  Slovenian
345  Spanish
346  Thai
347  Uyghur
349 Bugs closed:
350  595579  support NFS
351  663961  Cannot build without a git checkout
352  673834  dconf commandline tool doesn't initialise the locale
353  686998  add keywords to the desktop file
354  687120  gnome-ostree-3.8 triggers expected && oc->change == expected assertion
355  687310  dconf-editor should install a highcontrast app icon
356  689136  Crash in dconf_writer_real_end(): change is NULL (when $XDG_CONFIG_HOME/dconf does not exist)
357  690316  writer: Fix typo causing segfaults on service shutdown
358  690477  Can't build with gnome-apps-3.6 module set
359  691013  Crash on missing ~/.config/dconf and clear pointer
360  692144  needs a nicer icon
361  692186  build: autogen.sh uses /bin/sh but depends on advanced shell redirection shorthands
363 Changes in dconf 0.15.2
364 ========================
366  - update to the new GVDB API (GBytes based) and refactor a bit
368  - add a new type of "database mode" DConfChangeset and use it
370  - the service has been substantially rewritten
371   - using gdbus-codegen
372   - cache the file contents instead of read/modify/write each time
373   - new DConfWriter abstraction allows considering support for backends
374   - uses only POSIX IO (read and write syscalls) for database access
375   - workaround mmap() bug on OpenBSD
377  - editor:
378   - Fix search order of schema dirs
379   - Translate summary and description
381 Translations:
383  - Indonesian
384  - Slovak
386 Changes in dconf 0.15.1
387 ========================
389  - add --disable-man
391  - fix reading default values in GSettings backend
393  - editor:
394    - support schema overrides
395    - search improvements (search directories, values, descriptions)
396    - correctly get text from schema descriptions
397    - only write window state settings on exit and support fullscreen state
399  - dconf_rebuilder_get_parent: don't leak parent_name
401 Translations:
403  - Arabic
404  - Belarusian
405  - Bengali 
406  - Brazilian Portuguese
407  - British English
408  - Bulgarian
409  - Catalan
410  - Catalan (Valencian) 
411  - Czech
412  - Danish
413  - Estonian
414  - Finnish
415  - French
416  - German
417  - Hebrew
418  - Hindi
419  - Hungarian
420  - Indonesian
421  - Italian
422  - Japanese
423  - Korean
424  - Latvian
425  - Lithuanian
426  - Malayalam
427  - Marathi
428  - Norwegian bokmål
429  - Persian
430  - Polish
431  - Portuguese
432  - Russian
433  - Simplified Chinese
434  - Slovenian
435  - Spanish
436  - Swedish
437  - Tamil
438  - Telugu
439  - Thai
440  - Vietnamese
442 Changes in dconf 0.13.90
443 =========================
445 The only change in this release is the addition of many translations for
446 dconf-editor:
448  - Traditional Chinese
449  - Serbian
450  - Ukrainian
451  - Punjabi
452  - Greek
453  - Galician
454  - Spanish
455  - Assamese
456  - Polish
457  - Hungarian
459 Changes in dconf 0.13.5
460 ========================
462  - the service no longer attempts to migrate the primary dconf database from
463    its (years) old path ~/.config/dconf to the new ~/.config/dconf/user
465  - fixes for profile file parsing problems
467  - fix obscure race in GDBus handling code that could result in
468    out-of-order message delivery
470  - editor:
471   - clean up some messages and mark strings for translations
472   - enable NLS
473   - add Esperanto translation
475  - add manpages for dconf(7), dconf(1), dconf-service and dconf-editor
477 Changes in dconf 0.13.4 (since 0.13.0)
478 =======================================
480  - extensively refactored -- watch for bugs
482  - now depends on GLib 2.33.3 for g_slist_copy_deep() and
483    g_clear_pointer() with workaround for GCC
485  - API of libdconf has changed; soname bumped to libdconf.so.1
487  - installed header layout has changed
489  - there are changes to the API used between the client and the service.
490    New clients will only talk with the new service (so make sure to
491    restart it).  Old clients (ie: already-running programs) will
492    continue to be able to talk to the new service version.
494  - there is a now a fairly decent test suite but it requires a full
495    D-Bus environment to run in, so it may make sense to avoid 'make
496    check' on builders for the time being
498 Changes in dconf 0.13.0
499 =======================
501  - now requiring Vala 0.18 (ie: at least 0.17.0)
503  - editor: use GtkApplication and GMenu
504  - editor: support searching for keys
506  - dconf cli: call setlocale() on startup
508 Changes in dconf 0.11.7
509 =======================
511  - engine: don't leak the lock table if a system database changes while
512    a program is running
514  - dbus-1: call g_slist_remove_link instead of g_slist_remove
516  - editor: set 'wrap' property on default value label
518  - dconf update:
520    - code cleanup, better error handling
521    - read keyfiles in a defined order (later files take precedence)
522    - don't issue warnings if a key is defined in multiple files
524 Changes in dconf 0.11.6
525 =======================
527  - new DCONF_BLAME mode for debugging spurious dconf writes at login
529  - stop hardcoding the assumption that there will be exactly one user
530    database followed by zero or more system databases
532  - allow DCONF_PROFILE to specify a profile file by absolute path
534  - dbus-1: fix multiple-key change notifications
536  - autogen.sh can now be called from out of tree
538 Changes in dconf 0.11.5
539 =======================
541  - do not install non-standard icon sizes
543  - fix a bug with getting default values when no profile is in use
545  - some general code cleanups on the client side
547  - improve Makefile compatibility: avoid using 'echo -e'
549 Changes in dconf 0.11.3
550 =======================
552  - works with (and only with) Vala 0.15.1
554  - we now have an icon for dconf-editor
556 Changes in dconf 0.11.2
557 =======================
559  - many bugfixes and improvements to the editor, most notably porting to
560    GtkGrid to avoid the GtkTable layout bug that was causing size to be
561    incorrectly allocated
563  - fix a crasher due to invalid string index of -1
565 Changes in dconf 0.10.0
566 =======================
568 The version number was increased and a new entry was added to the NEWS.
570 Changes in dconf 0.9.1
571 ======================
573   - give a g_warning() on failure to communicate with service
575   - remove unworking 'set lock' call from dconf API and commandline tool
577   - add code to exit gracefully on receipt of SIGINT, SIGHUP, SIGTERM
579   - remove "service function" logic; always use the XDG runtime directory
581 Changes in dconf 0.9.0
582 ======================
584 There has been an extremely minor incompatible change in the D-Bus API
585 of dconf this release.  From a practical standpoint, this change will
586 have no effect.  However, it serves as a reminder that the dconf D-Bus
587 API is private and can change from version to version (and will likely
588 change in the future).
590 As such, it is appropriate for those packaging dconf to kill all running
591 instances of dconf ('killall dconf-service') as part of their postinst
592 for the package.  It will be dbus-activated again on the next use.
594   - support loading/storing of maybe types in dconf
596   - remove NFS detection hackery and rely on XDG runtime dir
598   - add proper support for change notification to DConfClient
600   - commandline tool improvements
602     - reset: reset keys or entire subpaths
604     - dump: dump entire subpaths to keyfile format
606     - load: load them back again (maybe at a different path)
608     - watch: actually works now
610   - editor improvements
612     - keys now change in editor when changed from outside
614     - support for flags
616     - show dconf-editor in applications list
618   - work around incompatible Vala bindings changes with an #if
620   - don't install the bash completion script as executable
622   - fix a warning caused by reusing a GError variable
624   - other small fixes
627 Changes in dconf 0.7.5
628 ======================
630 This release corrects a serious flaw in the previous release: crashing
631 if the database did not already exist.
633 It also contains many fixes and improvements to the dconf-editor,
634 including use of GSettings to store the window geometry.
636 This is the final release before 0.8.0 which will become the first
637 release in a new stable series.  Feature development will continue on
638 'master' toward 0.9 past that point.
640 Changes in dconf 0.7.4
641 ======================
643 Changes in this version:
645   - #648949: multithreading issue fixed (which actually affects all
646     GSettings-using programs since dconf is used from a helper thread in
647     that case)
649   - dconf commandline tool is vastly more friendly now
651     - no more aborting on unrecognised arguments
653     - proper help
655     - bash completion support
657   - support for sysadmin lockdown
659   - the editor now properly reads installed enum xml files
661 Changes in dconf 0.7.3
662 ======================
664 This release consists almost entirely of fixes made by Robert to
665 dconf-editor.  A few other trivial build fixes are included as well
666 (bumping library version dependencies to match reality, etc).
668 Changes in dconf 0.7.2
669 ======================
671 This is entirely a cleanup/fixes release.  Some fixes here to make the
672 increasingly-strict toolchain happy, and also some fixes for some
673 crashers in the GSettings backend and service.
675  - remove some unused variables (new GCC gives a warning: #640566, another)
676  - add a mutex to fix multi-threading issue (#640611)
677  - don't crash if we have no D-Bus
678  - clean up symbol exports
679  - fix a crash in the service when using 'reset'
680  - drop old linker options that were for libtool
682 Changes in dconf 0.7.1
683 ======================
685 The last release contained a few problems that caused build failures on
686 some strict linkers.  Those should be fixed now.
688 Changes in dconf 0.7
689 ====================
691  - new library to use dconf with libdbus-1
692  - quite a lot of improvements and bug-fixes in dconf-editor, thanks to
693    Robert Ancell
694  - some bug fixes in the GSettings backend (crashers caused by use if
695    custom dconf profiles)
696  - some FreeBSD build fixes
697  - increased Vala dependency to 0.11.4 (required for dconf-editor fixes)
699 Changes in dconf 0.6
700 ====================
702  - Rewrite a lot of the GSettings backend to reduce GDBus abuse.  We use
703    our own worker thread now instead of trying to hijack GDBus's.
704  - disable gobject-introspection support for now
705  - drop support for GTK2 in dconf-editor
706  - Add a new torture-test case
707  - Increase dbus timeout to 2 minutes (in case the service is heavily loaded)
708  - Fix several memory leaks and other bugs
710 Changes in dconf 0.5.1
711 ======================
713  - Adjust to GDBus API changes
714  - Send correct object path in Notify on WriteMany
715  - Use printf() and exit() instead of g_error() to avoid too many crash
716    reports for now
717  - Require gobject-introspection 0.9.5
718  - Require vala 0.9.5
719  - Make dconf-editor optional
720  - Drop libgee requirement for dconf-editor
721  - Tweak shared library installation to make ldconfig happy
722  - Bump .gir version to dconf-1.0
723  - Fix introspection build with recent gobject-introspection
724  - Minor bug fixes
726 Changes in dconf 0.5
727 =====================
729  - Include a dconf-editor
730  - drop libtool
731  - allow compiling without gobject-introspection
732  - autotools/build fixups
733  - repair some broken use of tags
734  - many updates for glib API changes
735  - fix a crasher in the service
736  - prefer 'automake-1.11' if it is in the path
737  - add support for layering (ie: for system defaults)
738  - add support for multiple writers in one service
739  - add a shared memory status region to indicate if the gvdb is stale
740      this prevents dconf from having to reopen the file each time
741  - support keyfile-maintained system settings (via 'dconf update')
742  - port client library and commandline tool to vala
743  - client library no longer has unimplemented calls
744    (except for write_many_async, due to bugs in valac)
745  - gtk-doc is now complete for the client library
746  - install our own vapi
747  - support 'reset' in the GSettingsBackend
749 Changes in dconf 0.4
750 =====================
752  - fix crashes when the dconf database doesn't yet exist
753  - add some incomplete gtk-doc
754  - use new GVDB (note: dconf file format has incompatibly changed)
755  - implement GSettings sync()
756  - use string tags instead of sequence numbers since it was impossible
757    to have universally unique sequence numbers
758  - theoretical support for sharing dconf databases between machines with
759    different byte orders
760  - fix bug where first write was not successful when auto-starting
761    service
762  - FreeBSD build fixes
763  - client API cleanups
764  - GObject introspection support
765  - enable automake silent rules by default for tarball builds