glib-compile-schemas: warn about bad dconf paths

For quite some time the recommended usage of GSettings and dconf has
been to use paths like /org/gnome/example/.  Use of /apps/ has spilled
over from GConf and is continuing to make its way into a number of
applications as they port.

glib-compile-schemas will now warn about these types of paths being
used.  This generates a lot of noise, but hopefully it will reduce the
number of ported applications making this mistake.
This commit is contained in:
Ryan Lortie 2012-04-12 19:55:34 -04:00
parent 386f0f29fd
commit 6560b37450

View File

@ -1204,6 +1204,12 @@ parse_state_start_schema (ParseState *state,
return;
}
if (path && (g_str_has_prefix (path, "/apps/") ||
g_str_has_prefix (path, "/desktop/") ||
g_str_has_prefix (path, "/system/")))
g_printerr ("warning: Schema '%s' has path '%s'. Paths starting with "
"'/apps/', '/desktop/' or '/system/' are deprecated.\n", id, path);
state->schema_state = schema_state_new (path, gettext_domain,
extends, extends_name, list_of);