| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit represents a rather complete rethinking of DConfEngine.
- the different kinds of sources are now properly abstracted. This
will make landing NFS support substantially easier.
- there is now substantially more internal documentation
- DConfEngineMessage is gone and replaced with ordinary function calls
to be implemented by the D-Bus glue code
- the GDBus glue has been factored out and is now shared between the
client library and GSettings
- the "outstanding" queue logic from the GSettings backend is now in
the engine
- all changes now go through a single API that accepts a (new)
DConfChangeset object. Currently this only supports the current
operations (ie: setting and resetting). In the future this object
will also support the directory operations required by GSettingsList
and will be the basis for the new approach to implementing the
'delayed' GSettingsBackend (which will be the method by which those
two concepts can co-exist).
The (internal) API of the engine changed substantially. This caused the
following:
- the libdconf client library has been rewritten in C. Most of the
complicated aspects of it (that made it more convenience to use
Vala) are now gone.
- during the rewrite of libdconf, the DConfClient API changed a bit to
look more like a proper GObject. It now makes GIO-style use of
thread-default main contexts and uses GObject signals for
notifications (instead of hand-rolled callbacks).
- the GSettings backend has been substantially simplified (the
"outstanding" logic is gone). No externally-visible changes.
- the dbus-1 backend has taken a copy of the old engine code for now
until it can be ported to the new engine and sufficiently tested.
No externally-visible changes.
- the dconf commandline tool and dconf-editor required minor changes
to adjust to the DConfClient API changes
There is a substantial amount of cleaning up and finishing of work to be
done. There are many stubs remaining. There are likely still a large
number of bugs.
|
| |
|
|
|
|
|
|
|
| |
One -fPIC and one without.
This is done instead of pulling the various source files from other
Makefiles.
|
|
|
|
|
|
| |
We had a workaround for a Vala bug that has been fixed, so remove that.
Add another workaround because Vala cannot be certain that a particular
value has been set or not (so just set it to null to stop the warning).
|
| |
|
| |
|
|
|
|
| |
A few leftovers from the tear-out: docs and header file.
|
|
|
|
|
|
| |
This was required to support the case where the dconf client was unable
to determine the cache directory for itself. Since we now use the XDG
runtime directory, this is redundant.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The dconf service can not presently be run at the system level and it
doesn't make sense to support locks on user-level databases. It also
became clear that most distributors and sysadmins would rather work
directly with text files anyway, so we supported that directly instead.
For this reason, 'set lock' support has never been properly implemented.
All the plumbing was added for it though, which means we have it
appearing on the API of the client library and documented in the help of
the commandline tool. This is misleading, since these functions do
nothing at all (and actually contain bugs anyway since their
do-nothingness was never actually tested).
For now, we rip out these functions. We can add them back later if we
decide to support this properly.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
It's not usable for libdconf anyway (due to lack of GVariant support in
the bindings) and it keeps causing build problems.
|
|
|
|
| |
Use our own private thread instead
|
|
|
|
| |
Dodge vala codegen buglets.
|
|
|
|
| |
Bug #628845
|
|
|
|
|
|
| |
ldconfig gets angry if it finds the soname not to be a symlink.
So, install libdconf.so.0.0.0 and symlink libdconf.so.0 to that.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Rename set_lock to set_locked again (and same SetLock -> SetLocked).
Add missing gtk-doc bits, clean up some that are no longer there.
Bump gtk-doc dependency.
|
|
|
|
|
|
|
|
| |
I just pushed a patch to gobject-introspection to have the scanner
compilation set an -rpath= if --no-libtool is specified.
Specify --no-libtool here and bump our dependency to the latest
gobject-introspection (not yet released).
|
|
|
|
| |
'make distcheck' has a pretty neat check that uncovered this.
|
| |
|
|
|
|
|
| |
This file left in the tree breaks 'make distcheck' which ensures that
the tree is clean after 'make clean' runs.
|
|
|
|
|
|
|
|
|
|
|
| |
You need to type 'make clean' before trying to rebuild dconf after this
update (in fact, 'git clean' may be appropriate to clean out all the
extra files that libtool leaves around).
It's quite likely that this completely breaks dconf builds on non-ELF
platforms (and maybe some ELF ones). Please report any problems to
bugzilla. I'm very happy to accept patches to fix portability (via
./configure-time checks).
|
|
|
|
| |
so people can install it without requiring valac
|
|
|
|
|
| |
also, cache GDBusConnections in the client since GDBus doesn't keep them
alive for us.
|
|
|
|
|
|
|
|
|
|
|
|
| |
- the API is now completely implemented
- update 'engine' API to be vala-bindable without annotations
- update GSettings backend to new engine API
- drop the readtype non-sense
- build/api fixups for editor and commandline tool
|
| |
|
| |
|
|
|
|
|
|
|
| |
Increase the intelligence of the algorithm: use ~/.cache/dconf as a
reasonable default if not on NFS.
The dconf engine now has a non-blocking startup when not on NFS.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- support the notion of 'profiles'
This is how we will configure layering of databases in dconf. It's
not wired-up yet (except to choose the name of the user database).
- support multiple writers in the service
Using the (very freshly API-broken) GDBus subtree support.
Introspection returns the names of existing databases, but any
object path can be used to create a new database.
- support the start of the 'shm' file
Used to prevent the reader from reopening the gvdb every time.
dconf reads now involve zero system calls in the usual case.
The server is queried on startup for the location of the shm files.
By default, this is in ~/.cache/dconf/ for now. This won't work
properly on NFS, but it's a start.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
- move to new GSettingsBackend API
- add 'length' parameter, update callers
|
| |
|
| |
|
|
|
|
| |
fix a silly bug that the testing found
|
| |
|
| |
|
| |
|
|
|
|
|
| |
- add a sync set() call to client API
- GCancellable/GErrorify some APIs
|
|
|
|
| |
Only very preliminary functionality for all of these.
|