commit 6183ad324e74633c2044fdd3700b9e4fd8edb3e6
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Apr 29 11:39:01 2015 +0200

    0.3.1

 NEWS         | 9 +++++++++
 configure.ac | 4 ++--
 2 files changed, 11 insertions(+), 2 deletions(-)

commit 51af68df5bfcf143bc8cced02f96c79403884a8f
Author: Heiher <r@hev.cc>
Date:   Tue Apr 21 07:51:00 2015 +0800

    gom: Fix converting pointer to GType
    
    A gpointer will be the same size as a GType (64-bit), but
    GPOINTER_TO_INT() will clamp that to int (32-bit) causing crashes
    when we try to access the invalid GType values.
    
    This solves crashes when gom was compiled with "-fPIE -pie" CFLAGS
    
    https://bugzilla.gnome.org/show_bug.cgi?id=748196

 gom/gom-repository.c | 5 ++---
 gom/gom-resource.c   | 5 ++---
 2 files changed, 4 insertions(+), 6 deletions(-)

commit 363b4669dd8e95c17a35944f1c75cc066792787a
Author: Alexander Larsson <alexl@redhat.com>
Date:   Tue Apr 14 16:48:39 2015 +0200

    tests: Test id setting and deletion in stress1 test too

 tests/test-gom-stress.c | 29 ++++++++++++++++++++++++++++-
 1 file changed, 28 insertions(+), 1 deletion(-)

commit 9fe1ed826d15bda1c4acb12a80ba254b2bfcc28b
Author: Alexander Larsson <alexl@redhat.com>
Date:   Tue Apr 14 15:49:43 2015 +0200

    gom: Add gom_resource_group_delete_[a]sync functions
    
    These are for deleting a group of objects as a transaction.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=747849

 gom/gom-resource-group.c | 146 +++++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-resource-group.h |   8 +++
 gom/gom-resource-priv.h  |   3 +
 gom/gom-resource.c       |   2 +-
 tests/test-gom-stress.c  |  20 +++++++
 5 files changed, 178 insertions(+), 1 deletion(-)

commit 67d76633ffbdb7a566958be24059c4e251491d59
Author: Alexander Larsson <alexl@redhat.com>
Date:   Tue Apr 14 15:41:35 2015 +0200

    gom: Ensure we update ids when saving a resource group
    
    We move the freeing of the items to the destruction of the asyncresult
    and then we iterate over all items calling gom_resource_set_post_save_properties
    on a successfull operation.
    
    This also updates test-gom-stress to ensure we're getting the right ids
    when calling gom_resource_group_write_sync().
    
    https://bugzilla.gnome.org/show_bug.cgi?id=747849

 gom/gom-resource-group.c | 26 +++++++++++++++++++++-----
 gom/gom-resource-priv.h  | 19 +++++++++++--------
 gom/gom-resource.c       |  8 ++++----
 tests/test-gom-stress.c  | 14 +++++++++++++-
 4 files changed, 49 insertions(+), 18 deletions(-)

commit f2ef936eace226b6178eb0690ee09b5af155e07a
Author: Alexander Larsson <alexl@redhat.com>
Date:   Fri Apr 10 14:44:35 2015 +0200

    tests: Add test for IS [NOT] NULL filters
    
    https://bugzilla.gnome.org/show_bug.cgi?id=747618

 tests/test-gom-find-specific.c | 113 ++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 112 insertions(+), 1 deletion(-)

commit bcee8b7b67ffb387c24c50def35de54dea33b2f6
Author: Alexander Larsson <alexl@redhat.com>
Date:   Fri Apr 10 14:44:17 2015 +0200

    filter: Add IS NULL and IS NOT NULL filters
    
    https://bugzilla.gnome.org/show_bug.cgi?id=747618

 gom/gom-filter.c | 48 +++++++++++++++++++++++++++----
 gom/gom-filter.h | 86 ++++++++++++++++++++++++++++++--------------------------
 2 files changed, 89 insertions(+), 45 deletions(-)

commit d62e3743d82b044669d27832c83ff6a40c07f511
Author: Álvaro Peña <alvaropg@visual-tools.com>
Date:   Tue Mar 31 09:31:20 2015 +0200

    resource: Fix saving a modified object again
    
    If the resource has been saved correctly in the database, we need to set
    to TRUE the "is-from-table" data related to the GomResource object. This
    data is used to set the "is_from_table" internal variable.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=742925

 gom/gom-resource.c | 2 ++
 1 file changed, 2 insertions(+)

commit 9748e261843207eef144c9142310cc27d021f1fb
Author: Álvaro Peña <alvaropg@visual-tools.com>
Date:   Tue Mar 31 09:30:52 2015 +0200

    tests: Update an object after created
    
    This test ensures that an object that has been saved can be
    updated with the same reference.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=742925

 tests/Makefile.include  |   6 ++
 tests/test-gom-update.c | 207 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 213 insertions(+)

commit bb59a549738f3d34c7701a84f96fc6ad3a5a994e
Author: Samir Ribic <samir.ribic@etf.unsa.ba>
Date:   Fri Mar 13 23:37:56 2015 +0000

    Added Bosnian translation

 po/LINGUAS |   1 +
 po/bs.po   | 199 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 200 insertions(+)

commit 2e4d297d21d3e3a494d986da0951e97397b5ae0c
Author: Alexander Larsson <alexl@redhat.com>
Date:   Thu Mar 12 14:52:43 2015 +0100

    Support g_autoptr() for all gom object types
    
    This allows you to use e.g. g_autoptr(GomResource) in your code, but
    does not make gom itself use g_autoptr, or require a new enough glib
    to support it.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=746095

 gom/Makefile.include   |  1 +
 gom/gom-autocleanups.h | 40 ++++++++++++++++++++++++++++++++++++++++
 gom/gom.h              |  2 ++
 3 files changed, 43 insertions(+)

commit 283f59307496b848fef6abae3e69fa39ca414b86
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Feb 17 17:23:31 2015 +0100

    0.3.0

 NEWS         | 13 +++++++++++++
 configure.ac |  4 ++--
 2 files changed, 15 insertions(+), 2 deletions(-)

commit 333d807b5d8533dc56dc27de496c132c49111b9c
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Feb 17 17:22:58 2015 +0100

    gom: Add libtool versioning

 configure.ac         | 9 +++++++++
 gom/Makefile.include | 4 ++++
 2 files changed, 13 insertions(+)

commit a615f5cc1da473a83f782ea7ee0dee45c2356837
Author: Christophe Fergeau <cfergeau@redhat.com>
Date:   Tue Feb 17 16:35:45 2015 +0100

    build-sys: Don't override already set EXTRA_DIST
    
    Makefile.tests initializes EXTRA_DIST to "", tests/Makefile.include sets
    it to a different value rather than appending to it.
    As Makefile.am is including both, this causes warnings from automake
    that we are trying to override EXTRA_DIST which was already set.
    Appending with += fixes this warning.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740948

 tests/Makefile.include | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0bf1a9813ac474942eb4c9e6707688ba1c5035bd
Author: Christophe Fergeau <cfergeau@redhat.com>
Date:   Tue Feb 17 16:32:38 2015 +0100

    build-sys: Stop using INCLUDES
    
    This is deprecated in favour of CPPFLAGS and causes warnings with newer
    automake versions:
    doc/Makefile.am:31: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740948

 doc/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 020ff0fbbee17eda510122550099f8ba08203bd2
Author: Christophe Fergeau <cfergeau@redhat.com>
Date:   Tue Feb 17 16:30:47 2015 +0100

    build-sys: Use subdir-objects
    
    Recent automake versions complain at autogen.sh time:
    
    automake: warning: possible forward-incompatibility.
    automake: At least a source file is in a subdirectory, but the 'subdir-objects'
    automake: automake option hasn't been enabled.  For now, the corresponding output
    automake: object file(s) will be placed in the top-level directory.  However,
    automake: this behaviour will change in future Automake versions: they will
    automake: unconditionally cause object files to be placed in the same subdirectory
    automake: of the corresponding sources.
    automake: You are advised to start using 'subdir-objects' option throughout your
    automake: project, to avoid future incompatibilities.
    gom/Makefile.include:21: warning: source file '$(top_srcdir)/gom/gom-command-builder.c' is in a subdirectory
    gom/Makefile.include:21: but option 'subdir-objects' is disabled
    
    This fixes this warning.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740948

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e57b4136c0487d8a60d39e598fb5051159b399e1
Author: Christophe Fergeau <cfergeau@redhat.com>
Date:   Tue Feb 17 16:29:18 2015 +0100

    build-sys: Don't use $(top_srcdir) to locate source files
    
    This is implicit, and having a variable in source filenames causes
    issues when used with subdir-objects (see
    https://bugzilla.gnome.org/show_bug.cgi?id=740948#c5 and following
    comments).
    I've checked that make distcheck (ie builddir!=srcdir) is still
    successful after this change.

 gom/Makefile.include   | 40 ++++++++++++++++++++--------------------
 tests/Makefile.include | 18 +++++++++---------
 2 files changed, 29 insertions(+), 29 deletions(-)

commit 27cd22da69499ae22b2278d95836b250193b0088
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Feb 17 16:09:36 2015 +0100

    gom: Fix invalid write when destroying GomRepository
    
    We hold a reference to the GomAdapter, so there's no need to set up a
    weak pointer, as we'll be the ones destroying it in finalize or when
    setting a new adapter.

 gom/gom-repository.c | 1 -
 1 file changed, 1 deletion(-)

commit 651baa6706de3990384a578ab0db698c463bfc2b
Author: Enrico Nicoletto <liverig@gmail.com>
Date:   Mon Jan 26 15:59:06 2015 +0000

    Updated Brazilian Portuguese translation

 po/pt_BR.po | 110 ++++++++++++++++++++++++++++++++----------------------------
 1 file changed, 58 insertions(+), 52 deletions(-)

commit ca037253a0239dbbaa84152d7b9e09efb230a4c4
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Mon Dec 29 11:37:37 2014 +0100

    command: Also debug-print the values of the query
    
    This is quite useful when debugging what is going on with a query.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=742180

 gom/gom-command.c | 47 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 46 insertions(+), 1 deletion(-)

commit 7d0a3f32366a96f3faa8204acb04358d09a9696a
Author: Daniel Mustieles <daniel.mustieles@gmail.com>
Date:   Mon Jan 12 19:17:06 2015 +0100

    Updated Spanish translation

 po/es.po | 66 ++++++++++++++++++++++++++++++++++++----------------------------
 1 file changed, 37 insertions(+), 29 deletions(-)

commit 11fab3f99d03d2ae707657ed6833cf6182b6bd7b
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Jan 7 13:58:47 2015 +0100

    Revert "build: Use "subdir-objects" for newer autotools"
    
    This reverts commit 03f516d729dff0a557408dcebf1945c04e0d3feb.
    
    This commit caused build failures. See
    https://bugzilla.gnome.org/show_bug.cgi?id=740948#c5

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 03f516d729dff0a557408dcebf1945c04e0d3feb
Author: Joseph Herlant <herlantj@gmail.com>
Date:   Fri Jan 2 02:14:14 2015 +0000

    build: Use "subdir-objects" for newer autotools
    
    This avoids a warning with newer versions of the autotools
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740948

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 34184c1e292d8d0c269d477ef9669a7da0127422
Author: Patrick Welche <prlw1@cam.ac.uk>
Date:   Mon Dec 8 19:45:24 2014 +0000

    build: Make gdk-pixbuf an optional dependency
    
    gdk-pixbuf is only needed for the unit tests. Instead of bailing
    if gdk-pixbuf is not found, don't build the tests, i.e., behave as
    if --disable-glibtest had been specified.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=741219

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 067e5a536677d5f27d350a438c100dea94c72867
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Thu Nov 27 19:40:28 2014 +0100

    git: Ignore some generated files
    
    https://bugzilla.gnome.org/show_bug.cgi?id=741261

 .gitignore | 3 +++
 1 file changed, 3 insertions(+)

commit 3e70d7bf69ab579c27bfa6c8522a6e53ab11b33e
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Thu Nov 27 19:53:17 2014 +0100

    tests: Fix some build warnings
    
    This removes warnings like:
        ./tests/test-gom-find-specific.c:67:3: warning: initialization discards ‘const’ qualifier from pointer target type
    
    https://bugzilla.gnome.org/show_bug.cgi?id=741261

 tests/test-gom-find-specific.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit aa22569dd294423cdd6792906f0bcec57a12dcc1
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Tue Nov 25 19:37:28 2014 +0100

    tests: Remove shadowed declarations [-Wshadow]
    
    https://bugzilla.gnome.org/show_bug.cgi?id=741261

 tests/test-gom-stress.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit 991dcc20db650611853529c2d9c7dc49700b248b
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Mon Dec 8 18:51:09 2014 +0100

    tests: Ensure filter priority
    
    This runs 2 queries with the same filters, but "grouped" in 2 different
    ways, to ensure that we respect filtering priorities (i.e parentheses).
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740701

 tests/test-gom-find-specific.c | 71 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)

commit 2d4e1dbb9f73b8f7667e8ca3c5db48fd6154bb4f
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Mon Dec 8 18:24:31 2014 +0100

    tests: Add more data to the DB
    
    This will help better ensuring some filter beheviours.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740701

 tests/test-gom-find-specific.c | 31 ++++++++++++++++++-------------
 1 file changed, 18 insertions(+), 13 deletions(-)

commit ac381b1240093f93f1ff3e4c1b60f4c6dd9d8512
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Thu Nov 27 19:38:51 2014 +0100

    filter: Respect filter priorities
    
    This adds parenthesis to the generated SQL queries where appropriate.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740701

 gom/gom-filter.c | 6 ++++++
 1 file changed, 6 insertions(+)

commit 021fffc3386ef2414201b147d1396e7b5d763afa
Author: Balázs Úr <urbalazs@gmail.com>
Date:   Sun Dec 7 11:50:09 2014 +0000

    Updated Hungarian translation

 po/hu.po | 57 +++++++++++++++++++++++++++++++--------------------------
 1 file changed, 31 insertions(+), 26 deletions(-)

commit 9e26704653cfabd86d6835ca93dd63066fe0b5de
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Tue Dec 2 20:52:15 2014 +0100

    filter: Factorize some code
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740872

 gom/gom-filter.c | 28 ++++------------------------
 1 file changed, 4 insertions(+), 24 deletions(-)

commit 84d9d22eb487f058e57e660ae5aa5d882dbdecf0
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Thu Nov 27 19:29:36 2014 +0100

    filter: Add new _fullv constructors
    
    This is similar to the ones introduced in the previous commit, but the
    argument is a NULL-temrinated array of GomFilter, rather than using
    variadic functions.
    
    A unit test is also added.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740872

 gom/gom-filter.c               | 54 +++++++++++++++++++++++++++++++
 gom/gom-filter.h               |  2 ++
 tests/test-gom-find-specific.c | 72 ++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 128 insertions(+)

commit fa1f6031061becab0e722be080d272971a465c75
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Thu Nov 27 19:27:43 2014 +0100

    filter: Add new _full variadic constructors
    
    This allows AND-/OR-ing more than 2 subfilters at a time.
    
    A unit test is also added.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740872

 gom/gom-filter.c               | 75 ++++++++++++++++++++++++++++++++++++++++++
 gom/gom-filter.h               |  4 +++
 tests/test-gom-find-specific.c | 69 ++++++++++++++++++++++++++++++++++++++
 3 files changed, 148 insertions(+)

commit 401d40f53882a0947a36921b7b1bb6c62485bd87
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Thu Nov 27 18:43:07 2014 +0100

    filter: Make subfilters a queue
    
    Having subfilters as just two left/right values makes it impossible to
    have filters with more than 2 subfilters.
    
    But it would be very nice if we could have a single filter like:
    
        foo=1 AND bar=1 AND baz=0
    
    Using a queue for the subfilters makes this possible... and it's coming
    in a future commit.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740872

 gom/gom-filter.c | 59 ++++++++++++++++++++++++++++++++++++++------------------
 1 file changed, 40 insertions(+), 19 deletions(-)

commit e6a7d03daa40610ae47a1718c84e77537a1612d4
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Sat Nov 29 09:43:34 2014 +0100

    filter: Free subfilters
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740872

 gom/gom-filter.c | 3 +++
 1 file changed, 3 insertions(+)

commit 7f594e295c009710318b0874e38d11d27e664b5d
Author: Мирослав Николић <miroslavnikolic@rocketmail.com>
Date:   Sat Nov 29 10:43:59 2014 +0100

    Added Serbian translation

 po/LINGUAS     |   2 +
 po/sr.po       | 199 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 po/sr@latin.po | 199 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 400 insertions(+)

commit 0093368877092b57e1a686ebbc043c81191e3f37
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Nov 26 23:09:01 2014 +0100

    tests: Add a test for finalizing the repo/adapter

 tests/test-gom-repository.c | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

commit d1f73ee9ddc446e50902b45a9813a188b6c5011d
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Mon Nov 24 21:48:32 2014 +0100

    tests: Test behaviour of the GLOB operator
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740657

 tests/test-gom-find-specific.c | 48 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

commit 40c70a00398b9175bf05a8447f4dca055a955575
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Mon Nov 24 21:46:17 2014 +0100

    filter: Support the GLOB operator from SQLite
    
    http://www.sqlite.org/lang_expr.html#like
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740657

 gom/gom-filter.c | 16 ++++++++++++++--
 gom/gom-filter.h |  6 +++++-
 2 files changed, 19 insertions(+), 3 deletions(-)

commit 7ad20c403980e60e77f5b2cf0acacc1d22da8e5a
Author: Mathieu Bridon <bochecha@daitauha.fr>
Date:   Sun Nov 23 20:25:53 2014 +0100

    group: Fix a memory leak
    
    https://bugzilla.gnome.org/show_bug.cgi?id=740595

 gom/gom-resource-group.c | 1 +
 1 file changed, 1 insertion(+)

commit 47f0b6a580b8e1cd16394d9df9f3752d757529d4
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Nov 20 10:54:47 2014 +0100

    build: Bump version
    
    So that Mathieu can rely on the newer version :)

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b43eb35b1d715dd29c50d792e2f210a481654a9b
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Nov 5 18:21:14 2014 +0100

    gom: Don't do get/set properties in != main thread when reading
    
    This is the 2nd part of b14e7044bf5cbfe4b6baac4b3ce66dba7dc8f458.
    
    We now try to avoid creating, and setting GomResource items when reading
    from the database. Instead, the items are created from cached results as
    needed when gom_resource_group_get_index() is called.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=728301

 gom/gom-resource-group.c | 110 +++++++++++++++++++++++++++++++++++++----------
 1 file changed, 87 insertions(+), 23 deletions(-)

commit cf1d44520ebb75e608b367f5260dd9558293e09b
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Nov 4 20:10:03 2014 +0100

    gom: Fetch properties when inserted for batched writes
    
    This could allow front-ends to avoid blocking for "times n_items" that
    time when launching the batched write.

 gom/gom-resource-group.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

commit 880b924e9783e68b3b7339b4baeedb1c878b4e93
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Wed Nov 5 13:42:59 2014 +0100

    Updated Polish translation

 po/pl.po | 50 +++++++++++++++++++++++++++-----------------------
 1 file changed, 27 insertions(+), 23 deletions(-)

commit 02ab604ef6d29302f96ef0cf1df444621882bff7
Author: Marek Černocký <marek@manet.cz>
Date:   Tue Nov 4 21:29:52 2014 +0100

    Updated Czech translation

 po/cs.po | 51 +++++++++++++++++++++++++++------------------------
 1 file changed, 27 insertions(+), 24 deletions(-)

commit 5157bef8da360b16926e3bd928ef26af8acf2173
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sun Sep 21 19:27:54 2014 +0200

    tests: Add test for batched writes
    
    https://bugzilla.gnome.org/show_bug.cgi?id=730950

 tests/test-gom-stress.c | 112 +++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 111 insertions(+), 1 deletion(-)

commit 0faa9577dc961a416ef16b884c22a88f3c82345a
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sun Sep 21 18:55:39 2014 +0200

    gom: Add support for batched writes
    
    https://bugzilla.gnome.org/show_bug.cgi?id=730950

 gom/gom-resource-group.c | 224 +++++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-resource-group.h |  13 +++
 2 files changed, 237 insertions(+)

commit 5955dc1be8dcddc566bbeec132dbfaf8f7a719d2
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sun Sep 21 19:17:04 2014 +0200

    gom: Export gom_resource_do_save() internally
    
    So it can be used for saving when already in worker thread.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=730950

 gom/gom-resource-priv.h | 5 +++++
 gom/gom-resource.c      | 4 ++--
 2 files changed, 7 insertions(+), 2 deletions(-)

commit b14e7044bf5cbfe4b6baac4b3ce66dba7dc8f458
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Nov 4 13:33:17 2014 +0100

    gom: Don't do get/set properties in != main thread when saving
    
    Avoid manipulating properties from within a thread other than the
    main thread when saving. This breaks Javascript and Python bindings.
    
    Note, reading from the database is likely still broken though.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=728301

 gom/gom-resource.c | 120 ++++++++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 96 insertions(+), 24 deletions(-)

commit e943a41e164c1894927329f8e310c028694af639
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Nov 4 17:09:30 2014 +0100

    gom: Fix unsetting the repo property in GomResource
    
    Awkward if ((foo = bar)) construct, and style fixes.

 gom/gom-resource.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 0639c62d2c31c0562f29856bff28bd7e89ea5ae4
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Nov 4 16:57:43 2014 +0100

    gom: Fix setting the repo twice in GomResourceGroup

 gom/gom-resource-group.c | 1 +
 1 file changed, 1 insertion(+)

commit 59d8b6f4187e4d8ed81964520617408c3e1568ad
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Nov 4 13:08:53 2014 +0100

    gom: Fix insertion of resources twice removed from GomResource
    
    When inserting an object that's a child class to a child class of
    GomResource, only the first insert is actually an insert, the rest
    are updates.

 gom/gom-resource.c | 2 ++
 1 file changed, 2 insertions(+)

commit 69a877747835174a1dbd1da7b382ce359ecd691d
Author: Andika Triwidada <andika@gmail.com>
Date:   Wed Oct 15 06:29:10 2014 +0000

    Added Indonesian translation

 po/LINGUAS |   1 +
 po/id.po   | 191 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 192 insertions(+)

commit dc6164dc7d3c626ce149f03b0b2e41ef515166f9
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Sep 26 20:56:08 2014 +0200

    gom: Don't assert when the primary key isn't set
    
    gjs will want to set the primary key after the object has been
    constructed. We'll assert() at the first use of the resource instead.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=728301

 gom/gom-resource.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit d2e01eda68bd9ffbd30c68151760e3346c53de68
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Sep 26 20:52:57 2014 +0200

    gom: Allow the empty string as an ID
    
    gjs doesn't allow null values for string properties, so work-around that
    by allowing '0' as a value.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=728301

 gom/gom-resource.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit cfe86c6a134d1eca7644fb2655213f179cd28aa1
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Sep 26 18:35:29 2014 +0200

    gom: Better warnings for _set_primary_key()
    
    By printing the class name that we're modifying.

 gom/gom-resource.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit d18d14390d88908a95681947dbafa17496acca22
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Sep 26 18:35:06 2014 +0200

    gom: Fix a format warning
    
    By casting GTypes to ints to print them.

 gom/gom-command.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit bd8089928f09690e60ac5ff55235f502f819486c
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sun Sep 21 19:01:43 2014 +0200

    tests: Fix stress test when upping NUM_RECORDS

 tests/test-gom-stress.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit d738e73e5fef84593ac2968dc2489a5ea569e7d7
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sun Sep 21 18:53:07 2014 +0200

    tests: Fix build warnings
    
    Unused variables and missing declarations.

 tests/test-gom-constraints.c   | 2 ++
 tests/test-gom-find-specific.c | 5 ++---
 tests/test-gom-find.c          | 2 ++
 tests/test-gom-insert.c        | 7 ++++---
 tests/test-gom-migration.c     | 2 ++
 tests/test-gom-stress.c        | 2 ++
 tests/test-gom-transform.c     | 2 ++
 7 files changed, 16 insertions(+), 6 deletions(-)

commit 4a32e86d9545e3496ce5415c1bbf4d42d3548553
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sun Sep 21 18:52:46 2014 +0200

    gom: Fix a number of build warnings

 gom/gom-filter.c         |  2 +-
 gom/gom-resource-group.c | 10 +++++-----
 gom/gom-resource.c       |  2 +-
 3 files changed, 7 insertions(+), 7 deletions(-)

commit 10c349e70b509db2679e17636db2ac302e9e969f
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sun Sep 21 18:50:58 2014 +0200

    gom: Fix thinko in is_new_in_version()
    
    Don't really want to be doing arithmetic on a pointer.

 gom/gom-command-builder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d6517c41bf3251c046e64a9b348ee14bc037e6a6
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sun Sep 21 18:41:21 2014 +0200

    build: Add warning CFLAGS

 configure.ac           |  1 +
 gom/Makefile.include   |  1 +
 tests/Makefile.include | 18 +++++++++---------
 3 files changed, 11 insertions(+), 9 deletions(-)

commit 048cb62cbf53cb22a8af955249ee6b5b0907250c
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sun Sep 21 02:24:42 2014 +0200

    gom: Remove "adapter" property from GomResourceGroup
    
    It wasn't used that much, and duplicated what we could have gotten
    from GomRepository anyway.

 gom/gom-repository.c     |  2 +-
 gom/gom-resource-group.c | 49 +++++++-----------------------------------------
 gom/gom-resource.c       |  1 -
 3 files changed, 8 insertions(+), 44 deletions(-)

commit 24d2090fcadf530e3c303ef2c8d7ae2b374a87c0
Author: Balázs Úr <urbalazs@gmail.com>
Date:   Thu Sep 11 18:26:35 2014 +0000

    Updated Hungarian translation

 po/hu.po | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

commit dc3de04150eb9879f8d0e45bff6bef0150dcf5c4
Author: Christian Hergert <christian@hergert.me>
Date:   Tue Sep 9 13:29:18 2014 -0700

    license: update COPYING to LGPL 2.1+ to match file headers.

 COPYING | 657 ++++++++++++++++++++++++++++++++++++++++++++++++----------------
 1 file changed, 497 insertions(+), 160 deletions(-)

commit fcb898411ee7969c376478bba3da3a8d95f98d14
Author: Marek Černocký <marek@manet.cz>
Date:   Tue Sep 9 21:22:21 2014 +0200

    Updated Czech translation

 po/cs.po | 84 ++++++++++++++++++++++++++++++++--------------------------------
 1 file changed, 42 insertions(+), 42 deletions(-)

commit 9d6e201a48c925d0a0a91c843a9797f827460554
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Sun Sep 7 02:48:16 2014 +0200

    Added Polish translation

 po/LINGUAS |   1 +
 po/pl.po   | 199 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 200 insertions(+)

commit 100883735ca4c8b38aafe24f28e847b2cc0d29bc
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Sun Sep 7 02:47:34 2014 +0200

    Fix typo

 gom/gom-filter.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit df89f8792416de47df778de6df5adc3a0a92481d
Author: Bastien Nocera <hadess@hadess.net>
Date:   Mon Aug 18 12:34:53 2014 +0200

    0.2.1

 NEWS         | 7 +++++++
 configure.ac | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

commit 143984b5a6529805272e937b965a9d9631835eb0
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Aug 5 13:18:08 2014 +0200

    tests: Add test for previous commit
    
    Add test case for the double-INSERT, instead of INSERT followed by
    UPDATE, mentioned in
    https://bugzilla.gnome.org/show_bug.cgi?id=734029

 tests/test-gom-insert.c | 252 ++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 223 insertions(+), 29 deletions(-)

commit 0b104be3d580c7596452a70afe669d12baccc53e
Author: Jonathon Jongsma <jjongsma@redhat.com>
Date:   Thu Jul 31 11:06:14 2014 +0200

    gom: Mark resources as from table after it is inserted
    
    Previously, if you create a new resource, then call
    gom_resource_save_*(), then change some properties and call _save()
    again, it will insert another item into the repository. With this
    change, it will mark the resource as being from the table, so that the
    next time save() is called, it was UPDATE, rather than INSERT.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=734029

 gom/gom-resource.c | 1 +
 1 file changed, 1 insertion(+)

commit 2211e085aa3734a02f52acc01dfa74b649b33b22
Author: Balázs Úr <urbalazs@src.gnome.org>
Date:   Sat Jul 26 12:15:01 2014 +0200

    Initial Hungarian translation

 po/hu.po | 196 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 196 insertions(+)

commit 72e8b49594e37a4f7cad7a9e063b548e123caf44
Author: Balázs Úr <urbalazs@src.gnome.org>
Date:   Sat Jul 26 12:14:41 2014 +0200

    Added hu entry

 po/LINGUAS | 2 ++
 1 file changed, 2 insertions(+)

commit a70533c2ecbc18a0787ec4f1178c8b8ac3e6f2b1
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Jul 16 16:13:52 2014 +0200

    gom: Fix another memory management problem in GomFilter
    
    Follow-up to 93694570fde8e29dff132644baa2efb18ef31ff5.
    
    When appended to the target array, the values aren't refcounted, so
    destroying the whole source array would destroy the values as well.
    Disable the freeing of the individual items in the source array so
    that they're not destroyed along with the source array. The destination
    array will now assume ownership.

 gom/gom-filter.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 265e12e5b148bba9d9be07e4ef730143e35a4e12
Author: Tom Tryfonidis <tomtryf@gmail.com>
Date:   Wed Jun 18 10:41:05 2014 +0000

    Added Greek translation

 po/LINGUAS |   1 +
 po/el.po   | 198 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 199 insertions(+)

commit 926a56dc542c7ab531c833424517b632ac119d09
Author: Daniel Mustieles <dnaiel.mustieles@gmail.com>
Date:   Tue Jun 17 19:35:03 2014 +0200

    Updated Spanish Translation

 po/LINGUAS |   3 +-
 po/es.po   | 196 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 198 insertions(+), 1 deletion(-)

commit e58eda1d0e99fc08c176e11a302305ee9f5f2393
Author: Victor Toso <me@victortoso.com>
Date:   Sun Jun 15 23:33:27 2014 -0300

    tests: GomFilter from 3 queries
    
    https://bugzilla.gnome.org/show_bug.cgi?id=731701

 .gitignore                     |   1 +
 tests/Makefile.include         |   6 +
 tests/test-gom-find-specific.c | 395 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 402 insertions(+)

commit 93694570fde8e29dff132644baa2efb18ef31ff5
Author: Bastien Nocera <hadess@hadess.net>
Date:   Mon Jun 16 12:45:43 2014 +0200

    gom: Fix AND/OR filters memory handling
    
    The values were getting double-freed. As gom_filter_get_values() returns
    a new array, no need to stuff it inside another array that we would
    create ourselves, just use that original array.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=731701

 gom/gom-filter.c | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

commit f786c45a6325cba74d2c449b5ff80386ac2c04ab
Author: Bastien Nocera <hadess@hadess.net>
Date:   Mon Jun 16 12:40:36 2014 +0200

    gom: Better debug for gom_command_bind_param()

 gom/gom-command.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 24abe21bb4d814f893fc68f46d3cb763a2bcf905
Author: Bastien Nocera <hadess@hadess.net>
Date:   Mon Jun 16 12:19:07 2014 +0200

    gom: Add support for short and long integers
    
    schar/uchar for guint8 and glong/gulong

 gom/gom-command-builder.c |  4 ++++
 gom/gom-command.c         | 12 ++++++++++++
 2 files changed, 16 insertions(+)

commit 01837602b079bc6b3e0a62947989728fc448edac
Author: Bastien Nocera <hadess@hadess.net>
Date:   Mon Jun 2 10:48:28 2014 +0200

    0.2.0

 NEWS         | 6 ++++++
 configure.ac | 4 ++--
 2 files changed, 8 insertions(+), 2 deletions(-)

commit c22bdd710b058e2bfba196985d88495a3ab7e90c
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Jun 10 14:45:00 2014 +0200

    gom: API documentation improvements

 gom/gom-adapter.c         | 5 +++--
 gom/gom-command-builder.c | 6 ++++--
 gom/gom-repository.c      | 5 +++--
 3 files changed, 10 insertions(+), 6 deletions(-)

commit a155133fa92111ff6eac526b7af59445a046b84c
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Jun 10 14:59:01 2014 +0200

    gom: Fix fallout from object-types leak fix
    
    The fix in 54737fd6c99fb20dc6c8877e035740b9a206258f was incomplete
    and 2 test cases were crashing during migration.
    
    Furthermore, the automatic migrator was freeing the list of object types
    after migrating to version 1, making it crash for any migration past
    that.

 gom/gom-repository.c       | 20 +++++++++++++++-----
 tests/test-gom-find.c      |  3 ---
 tests/test-gom-migration.c |  3 ---
 3 files changed, 15 insertions(+), 11 deletions(-)

commit 54737fd6c99fb20dc6c8877e035740b9a206258f
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri May 30 16:55:19 2014 +0200

    gom: Fix memory leak during migration
    
    The object_types list's ownership is ours when we're called, so
    make sure that we clear out the list when we're done with it.

 gom/gom-repository.c | 1 +
 1 file changed, 1 insertion(+)

commit fce124242c20fdd7546b81e6113bf87c8e32854d
Author: Matej Urbančič <mateju@svn.gnome.org>
Date:   Sat May 17 19:56:53 2014 +0200

    Updated Slovenian translation

 po/sl.po | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 7e07b65b13501d4780515f49ebf316d4086cac03
Author: Matej Urbančič <mateju@svn.gnome.org>
Date:   Sat May 17 19:53:50 2014 +0200

    Added sl for Slovenian translation

 po/LINGUAS | 1 +
 1 file changed, 1 insertion(+)

commit 707439b37fc6129ef599b76b677c5d6c6f089864
Author: Matej Urbančič <mateju@svn.gnome.org>
Date:   Sat May 17 19:45:08 2014 +0200

    Added Slovenian translation

 po/sl.po | 216 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 216 insertions(+)

commit b35e8ce5559e4b2ebe182362ad7a3860e5977f6a
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed May 14 16:46:36 2014 +0200

    gom: Track whether GomResource objects come from the DB
    
    We now track whether objects come from the database
    (GomResourceGroup's fetch will tag items as such when getting them),
    so that we can assert whether saves on that object would be an insert or
    an update.
    
    We also track the primary key changing back to zero/null, so that
    something like getting an item from the DB, resetting the ID, and saving
    it will create a duplicate as intended.
    
    This fixes the failing test case introduced in
    8e5602fa15fee310919a2ef087bc4726d4891f00

 gom/Makefile.include      |  2 +-
 gom/gom-command-builder.c | 22 ++++++++++++++++++
 gom/gom-resource-group.c  |  2 ++
 gom/gom-resource-priv.h   | 31 ++++++++++++++++++++++++++
 gom/gom-resource.c        | 57 ++++++++++++++++++++++++++++++++++++++++++-----
 5 files changed, 108 insertions(+), 6 deletions(-)

commit 72ce70e3bccb07d94b0a1a3aa962b75a01d952d3
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed May 14 13:56:20 2014 +0200

    gom: Fix has_primary_key() return value
    
    The has_primary_key() function was actually returning FALSE if the
    resource had a primary set, the opposite of what we expected.

 gom/gom-resource.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a0f6eeeeff3e8434bef78cacb6eb62489d332d19
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed May 14 14:49:52 2014 +0200

    gom: Clean up gom-resource.h

 gom/gom-resource.h | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

commit 1e1251170e40d249554c8d0336838ef480348a22
Author: Marek Černocký <marek@manet.cz>
Date:   Wed May 14 10:38:16 2014 +0200

    Updated Czech translation

 po/cs.po | 47 ++++++++++++++++++++++++++---------------------
 1 file changed, 26 insertions(+), 21 deletions(-)

commit 8e5602fa15fee310919a2ef087bc4726d4891f00
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue May 13 21:01:29 2014 +0200

    tests: Add failing test with non-automatic primary keys
    
    When the primary key value of a GomResource is set, we imagine that it
    must mean that the value is already present in the database. But for
    non-integer primary keys, the caller is responsible for generating the
    primary key, so it *must* be set before we call gom_resource_save*.
    
    This means that we'll silently fail to insert the item in the database.

 tests/Makefile.include  |   6 ++
 tests/test-gom-insert.c | 221 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 227 insertions(+)

commit 41ae0624806afc90d68ea9496f3f5aa2e06e8ba0
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue May 13 20:53:28 2014 +0200

    gom: Fix reference leak when using GomResourceGroup

 gom/gom-resource-group.c | 1 +
 1 file changed, 1 insertion(+)

commit da7df9d0616dd94432c50acd4d32984d5ab6b05a
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue May 13 20:02:52 2014 +0200

    gom: Add missing gom_repository_find_sync() in header

 gom/gom-repository.h | 4 ++++
 1 file changed, 4 insertions(+)

commit fabe90e0ef171e04f0f50caa7fd168aa58319058
Author: Rafael Ferreira <rafael.f.f1@gmail.com>
Date:   Mon May 12 19:58:07 2014 +0000

    Updated Brazilian Portuguese translation

 po/pt_BR.po | 48 +++++++++++++++++++++++++++---------------------
 1 file changed, 27 insertions(+), 21 deletions(-)

commit 6fb76a81314ce919960aafcecc566f20dee6120e
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Sun May 11 00:14:52 2014 +0800

    tests: Don't use g_assert_nonnull()
    
    Which downgrades the run-time requirements of gom (g_assert_nonnull()
    is only available in glib 2.40).

 tests/test-gom-constraints.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 5907fba433e622620d61c14057ddc5c0e2ebb416
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sat May 10 18:00:29 2014 +0200

    tests: Finish the work from 1785a3c4b61c5860a94a84faf0b98ef46a327342
    
    4 more g_str_match_string() to be done...

 tests/test-gom-constraints.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 1785a3c4b61c5860a94a84faf0b98ef46a327342
Author: Bastien Nocera <hadess@hadess.net>
Date:   Sat May 10 17:55:09 2014 +0200

    tests: Don't use g_str_match_string()
    
    Which downgrades the run-time requirements of gom (g_str_match_string()
    is only available in glib 2.40).
    
    Spotted by Mathieu Bridon <bochecha@fedoraproject.org>

 tests/test-gom-constraints.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a5a932c41228f7d165138b01438ba7f227e1636f
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Wed May 7 18:34:59 2014 +0800

    tests: Ensure the NOT NULL constraint works
    
    https://bugzilla.gnome.org/show_bug.cgi?id=729862

 tests/test-gom-constraints.c | 51 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

commit b2ef0a4c691ab7457ec37ea36f2e6e01368d3367
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Wed May 7 15:25:57 2014 +0800

    gom: Add support for NOT NULL constraint on columns
    
    https://bugzilla.gnome.org/show_bug.cgi?id=729862

 gom/gom-command-builder.c | 15 +++++++++++++++
 gom/gom-resource.c        | 26 ++++++++++++++++++++++++++
 gom/gom-resource.h        |  4 ++++
 3 files changed, 45 insertions(+)

commit 29f7df636f9d3df3babc66cf3c7a4040f7ceaf90
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Fri May 9 18:33:10 2014 +0800

    tests: Ensure the error is related to the UNIQUE constraint

 tests/test-gom-constraints.c | 2 ++
 1 file changed, 2 insertions(+)

commit a371f7f3a39634654a3a9dc39ab39aeb25a6bced
Author: Jonathon Jongsma <jjongsma@redhat.com>
Date:   Thu May 8 14:05:26 2014 -0500

    gom: Fix build with C++ compilers
    
    By moving enum typedefs after the enum definition.
    
    Putting the typedefs above the enum makes compilation fail for C++ programs. Example error:
    
    /gom-filter.h:38:14: error: use of enum ‘_GomFilterMode’ without previous declaration
     typedef enum   _GomFilterMode    GomFilterMode;
                   ^
    
    https://bugzilla.gnome.org/show_bug.cgi?id=729831

 gom/gom-error.h  |  4 ++--
 gom/gom-filter.h | 10 +++++-----
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 83320b3565e5109b90c118d6972c0d53ebcbf6b4
Author: Jonathon Jongsma <jjongsma@redhat.com>
Date:   Thu May 8 13:37:05 2014 -0500

    build: Fix build for srcdir != builddir
    
    Find generated pkg-config file in the build dir
    
    https://bugzilla.gnome.org/show_bug.cgi?id=729830

 data/Makefile.include | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 795fea1ce97ac501a17debda5d347f7edbf2dd4b
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Wed May 7 18:35:38 2014 +0800

    gom: Improve SQLite error reporting
    
    Telling the user that a statement failed because:
    
        Failed to execute statement: 19
    
    is not very useful.
    
    However, this is much better:
    
        Failed to execute statement: UNIQUE constraint failed: items.email
    
    https://bugzilla.gnome.org/show_bug.cgi?id=729722

 gom/gom-command.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7cc9d67357a4ac8bb25276bd75b3238c69dbeaf9
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Wed May 7 18:34:59 2014 +0800

    tests: Ensure the UNIQUE constraint works
    
    https://bugzilla.gnome.org/show_bug.cgi?id=729722

 .gitignore                   |   1 +
 tests/Makefile.include       |   6 ++
 tests/test-gom-constraints.c | 243 +++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 250 insertions(+)

commit 9d2d340c26351b8b3ab5432502825b0e07ff887f
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Wed May 7 15:25:57 2014 +0800

    gom: Add support for UNIQUE constraint on columns
    
    https://bugzilla.gnome.org/show_bug.cgi?id=729722

 gom/gom-command-builder.c | 15 +++++++++++++++
 gom/gom-resource.c        | 26 ++++++++++++++++++++++++++
 gom/gom-resource.h        |  4 ++++
 3 files changed, 45 insertions(+)

commit c0abfa9ecf107b45922044a7f7df988bbfc6636f
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Wed May 7 10:45:09 2014 +0800

    tests: Fix the unit tests
    
    The unit tests were setting the primary key before the property existed,
    which used to be silently accepted until commit f416919.

 tests/test-gom-find.c      | 2 +-
 tests/test-gom-migration.c | 2 +-
 tests/test-gom-stress.c    | 2 +-
 tests/test-gom-transform.c | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 9bd07a37bdd18adcfa284d534553c5d0b5c1247e
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue May 6 21:41:59 2014 +0200

    gom: Correctly check the length of parameters before saving them
    
    Check that the primary-key and table names aren't getting clipped before
    we save them, otherwise we'll fail later at run-time.
    
    Previous commit was trying to do that, but ended up ensuring that the
    names were at least as big as the byte array we store them in, rather
    than the (correct) opposite.

 gom/gom-resource.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ef24a7293d8b285b9914e7885ab3a5eefdff79e8
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue May 6 21:41:59 2014 +0200

    gom: Check the length of parameters before saving them
    
    Check that the primary-key and table names aren't getting clipped before
    we save them, otherwise we'll fail later at run-time.

 gom/gom-resource.c | 2 ++
 1 file changed, 2 insertions(+)

commit f416919a96d6fc087c01b9fdf1bec9d624790ec9
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue May 6 21:39:43 2014 +0200

    gom: Add better check on the primary-key property
    
    Make sure that the primary-key property isn't set as a construct-only
    property, or that its default value is non-NULL.
    
    Thanks to Mathieu Bridon for the code that needed those checks :)

 gom/gom-resource.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

commit 94d26ecefa76177ecf110dbada7ef32f24b7d958
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue May 6 20:46:58 2014 +0200

    gom: Report error correctly when the repository isn't set
    
    gom_resource_save_sync() would fail without returning an error, which
    could cause problems.

 gom/gom-error.h    | 3 ++-
 gom/gom-resource.c | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

commit 3c72daa2f51a36033653898d7f118f8475c4f26f
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue May 6 20:34:09 2014 +0200

    tests: Add test case for boolean columns

 tests/test-gom-find.c | 24 ++++++++++++++++++++++--
 1 file changed, 22 insertions(+), 2 deletions(-)

commit 0125e26d90923c9e90876b976f455b80ce59843d
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Wed May 7 02:15:49 2014 +0800

    gom: Support boolean properties
    
    SQLite does not have a boolean column type, so we need to use integers
    instead:
    
        https://www.sqlite.org/datatype3.html
    
    Luckily, the gboolean type is in fact nothing but an integer.

 gom/gom-command-builder.c | 1 +
 1 file changed, 1 insertion(+)

commit 4232ab9f4c356345585f2eb09cbf73a65d36dd91
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Wed May 7 02:06:35 2014 +0800

    gom: Add warning when a column type is unhandled

 gom/gom-command-builder.c | 3 +++
 1 file changed, 3 insertions(+)

commit 6376d838c1216eec7797eece5cd4ab1416fb49c0
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Tue May 6 17:18:38 2014 +0800

    tests: Chain-up to the parent finalize method

 tests/test-gom-find.c | 1 +
 1 file changed, 1 insertion(+)

commit 0663b0d59277d2c12f9030f16d9d0bacf739ce4a
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue May 6 10:50:57 2014 +0200

    tests: Fix small leak in BookmarksResource
    
    Spotted by Mathieu Bridon <bochecha@fedoraproject.org>

 tests/test-gom-find.c | 1 +
 1 file changed, 1 insertion(+)

commit 622f29b6220392406af4e55b5df0e47083c5f444
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue May 6 10:50:28 2014 +0200

    build: Don't install text documentation
    
    Those are usually installed by the package managers.

 Makefile.am | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

commit 0c54aa2c345110a24ff4f284ad427843ab8cdb5f
Author: Mathieu Bridon <bochecha@fedoraproject.org>
Date:   Tue May 6 14:54:31 2014 +0800

    build: Use xz compression for the tarball
    
    Other GNOME modules switched to this a while ago.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 44631fcddb8debd8c8d985a4781b91418409c88d
Author: Christian Kirbach <christian.kirbach@gmail.com>
Date:   Mon May 5 17:05:35 2014 +0200

    Added German translation

 po/LINGUAS |   1 +
 po/de.po   | 192 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 193 insertions(+)

commit fd0d06475b7b09daf4a7d7d17a0415091be9af86
Author: Enrico Nicoletto <liverig@gmail.com>
Date:   Wed Apr 30 15:56:13 2014 -0300

    Updated Brazilian Portuguese translation

 po/LINGUAS  |   3 +-
 po/pt_BR.po | 190 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 192 insertions(+), 1 deletion(-)

commit d90beb17379dada224fb358287289ff694a42847
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Apr 30 09:32:58 2014 +0200

    gom: Fix description of the limit property
    
    Spotted by Enrico Nicoletto <liverig@gmail.com>
    
    https://bugzilla.gnome.org/show_bug.cgi?id=729231

 gom/gom-command-builder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit aa9a38cb80c1c4e6827f841925d0ba20146de18b
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Apr 25 16:14:51 2014 +0200

    gom: Fix introspection of gom_resource_class_set_property_transform()
    
    By skipping this function for introspection, and adding two new
    functions for the bindings to use.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=728504

 gom/gom-resource.c | 39 +++++++++++++++++++++++++++++++++++++++
 gom/gom-resource.h |  8 ++++++++
 2 files changed, 47 insertions(+)

commit 9696310f3919110c67450b9608cdc948bc64c20e
Author: Marek Černocký <marek@manet.cz>
Date:   Wed Apr 23 07:41:27 2014 +0200

    Added Czech language

 po/LINGUAS | 1 +
 1 file changed, 1 insertion(+)

commit ec6f986f2b310d4fe92076f8cb60aa8e0e4bea64
Author: Marek Černocký <marek@manet.cz>
Date:   Wed Apr 23 07:41:10 2014 +0200

    Czech translation

 po/cs.po | 191 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 191 insertions(+)

commit 61a7aca1de2fdcfdf9beec8ad10a41907c2a4870
Author: Tristan Brindle <t.c.brindle@gmail.com>
Date:   Sat Apr 19 01:06:23 2014 +0800

    gom: Remove separate error enums and quarks functions
    
    Replaced by GomError domain
    
    https://bugzilla.gnome.org/show_bug.cgi?id=728491

 gom/gom-adapter.c    | 6 ------
 gom/gom-adapter.h    | 8 --------
 gom/gom-command.c    | 6 ------
 gom/gom-command.h    | 9 ---------
 gom/gom-repository.c | 6 ------
 gom/gom-repository.h | 7 -------
 gom/gom-resource.c   | 6 ------
 gom/gom-resource.h   | 8 --------
 8 files changed, 56 deletions(-)

commit 0a12f66ffa2a237db9734d1dd2cf06c88248a1d5
Author: Tristan Brindle <t.c.brindle@gmail.com>
Date:   Sat Apr 19 00:59:13 2014 +0800

    gom: Use GomError rather than separate error domains
    
    Convert all functions to use the GomError domain for errors
    
    https://bugzilla.gnome.org/show_bug.cgi?id=728491

 gom/gom-adapter.c    |  5 +++--
 gom/gom-command.c    | 11 ++++++-----
 gom/gom-repository.c |  9 +++++----
 gom/gom-resource.c   |  5 +++--
 4 files changed, 17 insertions(+), 13 deletions(-)

commit 063c490d181bfbf958b766e23cd7cf6d3f21544f
Author: Tristan Brindle <t.c.brindle@gmail.com>
Date:   Sat Apr 19 00:50:32 2014 +0800

    gom: Add GomError enum as a single unified error domain
    
    Adds GomError as a single error domain replacing GomCommandError,
    GomResourceError etc. The enumerators are taken from the existing
    four error domains used in Gom.
    
    This also adds a gom_error_get_type() function to define a GType
    for GomError, which is necessary for introspection purposes. It
    might be better to use glib-mkenums for this purpose.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=728491

 gom/Makefile.include |  2 ++
 gom/gom-error.c      | 45 +++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-error.h      | 44 ++++++++++++++++++++++++++++++++++++++++++++
 gom/gom.h            |  1 +
 4 files changed, 92 insertions(+)

commit c9546cbe09161a239cd65de5e25d41e3c9ca83be
Author: Tristan Brindle <t.c.brindle@gmail.com>
Date:   Fri Apr 18 22:55:55 2014 +0800

    gom: Add "constructor" annotations for gom_filter_new_and/or
    
    The first argument to these functions is a GomFilter*, meaning they
    are incorrectly introspected as instance methods rather than constructors.
    
    Add the (constructor) annotation to fix this.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=728517

 gom/gom-filter.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4b17d100ec56926dd29c7f35bc79df3794b29c82
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Apr 18 10:32:32 2014 +0200

    gom: Add automatic migration support for flags/enum

 gom/gom-command-builder.c | 6 ++++++
 gom/gom-command.c         | 6 ++++++
 gom/gom-cursor.c          | 6 ++++++
 3 files changed, 18 insertions(+)

commit 4062ec05a6f4cc65e0cc780dbc231ba740c938a9
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Apr 18 10:29:15 2014 +0200

    gom: Add debug when a type couldn't be mapped

 gom/gom-command-builder.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 9e28a25417c44be1234f33b5ea7fa2ca30c4f2dc
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Apr 18 01:15:36 2014 +0200

    tests: Fix test-gom-find running in distcheck
    
    The DB was copied as read-only, so we couldn't even check the
    version of the database as we try to create a _gom_version table.

 tests/test-gom-find.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4fd37c4a6e04ddbb8844a639cc03740a51b2c304
Author: Tristan Brindle <tristan@fugro-fsi.com.au>
Date:   Thu Apr 17 18:16:04 2014 +0800

    gom: Fix typo in gom_filter_mode_get_type()
    
    GOM_FILTER_AND is "AND" not "SQL".
    
    https://bugzilla.gnome.org/show_bug.cgi?id=728412

 gom/gom-filter.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9e5f6407486a1417d72962e33484ccf9027aa7b8
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Apr 18 00:46:08 2014 +0200

    tests: Use a temporary dir for test-gom-find
    
    So that tests don't fail on startup when a failed test happened
    beforehand.

 tests/test-gom-find.c | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

commit 327d004bc0d80cc1ebe38ca10c71be29d83f07c9
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Apr 18 00:45:49 2014 +0200

    tests: Add migration test for empty DBs
    
    This is pretty much the same test as test-gom-find, except that
    this database is initially empty during migration.

 .gitignore                 |   1 +
 tests/Makefile.include     |   6 +
 tests/test-gom-migration.c | 336 +++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 343 insertions(+)

commit 25c5bf0f0554d6b7ec1e3de9c980eab12c619186
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 23:19:18 2014 +0200

    all: Stop first-time GOM users from having to set the "new in version"
    
    Applications that use GOM from the get-go shouldn't have to
    call "new in version" for every single one for their initial
    properties/columns.
    
    Nor should applications with existing columns have to set their
    "new in version" to 0 for those columns.
    
    Instead, we'll try to create the table with all the columns
    that are new in version 1 in one go, which can fail gracefully.

 gom/gom-command-builder.c  | 40 +++++++++++++++++++++++++++++-----------
 gom/gom-resource.c         |  4 +++-
 tests/test-gom-stress.c    |  2 --
 tests/test-gom-transform.c |  4 ----
 4 files changed, 32 insertions(+), 18 deletions(-)

commit 37133da665f3e71993cf6f09d139d906b5b6e889
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 22:43:41 2014 +0200

    tests: Add test for columns with references

 tests/test-gom-transform.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit f428c8f39f0b13da0a2b6492a777e83458af505a
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 22:43:13 2014 +0200

    gom: Add support for creating columns with references

 gom/gom-command-builder.c | 17 +++++++++++++++++
 gom/gom-resource.c        | 36 ++++++++++++++++++++++++++++++++++++
 gom/gom-resource.h        |  8 ++++++++
 3 files changed, 61 insertions(+)

commit 1161965e67bf98f52f949227ae455082b00a0b3d
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 22:42:40 2014 +0200

    gom: Add guards in class metadata setters

 gom/gom-resource.c | 3 +++
 1 file changed, 3 insertions(+)

commit ea621659a99a101acd7d99ecfdda0848fe46b733
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 19:48:53 2014 +0200

    build: Update .gitignore

 .gitignore | 2 ++
 1 file changed, 2 insertions(+)

commit 0f3819f81134af109ec23c3c40698f73197b2c23
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 19:41:09 2014 +0200

    tests: Add a "stress" test
    
    Adds 1000 items, and checks that they one of them was written properly.
    
    To test disk-based performance, change the gom_adapter_open_sync()
    call to the one that's commented.

 tests/Makefile.include  |   6 ++
 tests/test-gom-stress.c | 231 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 237 insertions(+)

commit 46fc743a1cf2da9a811c052b45e249bf22e04fa3
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 19:27:56 2014 +0200

    gom: Enhance performance for our use cases
    
    First, we'll use the SQLITE_OPEN_NOMUTEX open flag, which will
    mean that we are expected to implement our own locking access to
    the database, which we don't need to do as a single worked thread
    will access the database.
    
    Secondly, we'll execute a few PRAGMA statements. The journal_mode
    will change the behaviour of the rollback model. We now use a
    write-ahead log instead of a journal. This is much faster with small
    transactions (ours are very small).
    https://www.sqlite.org/pragma.html#pragma_journal_mode
    
    With this change, adding 1000 items into a disk-backed database
    drops from 20 seconds to 7 seconds.
    
    Finally, we also change the synchronous behaviour to NORMAL.
    This is a good trade-off between performance, and possibility of
    database corruption.
    https://www.sqlite.org/pragma.html#pragma_synchronous
    
    With the same test case as above, we drop from taking 7 seconds
    to 0.2 seconds to add 1000 items.

 gom/gom-adapter.c    | 2 +-
 gom/gom-repository.c | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

commit 1c5b84653645804d12174292ca3aed7815467417
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 09:23:56 2014 +0200

    tests: Add test for GDateTime and strv properties

 tests/test-gom-transform.c | 60 +++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 59 insertions(+), 1 deletion(-)

commit 12b429fb2af0d8bdc197c44d5f777dc7c3d9ab9a
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 00:54:04 2014 +0200

    gom: Add GDateTime/strv support in automatic migration

 gom/gom-command-builder.c | 3 +++
 1 file changed, 3 insertions(+)

commit 6ff60d882d319e645f5d15a30ded722b36741739
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Apr 16 17:27:37 2014 +0200

    tests: Add test for the new transformation functions

 configure.ac               |   1 +
 tests/Makefile.include     |   8 +-
 tests/gnome.png            | Bin 0 -> 52468 bytes
 tests/test-gom-transform.c | 301 +++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 309 insertions(+), 1 deletion(-)

commit 108ef88c2dabbc724ee9623806c2edefd5642285
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Apr 16 17:26:52 2014 +0200

    gom: Use new to/from bytes functions from GomResource

 gom/gom-command-builder.c | 37 +++++++++++++++++++++++++++++++++----
 gom/gom-command.c         | 23 +++++++++++++++++++++++
 gom/gom-cursor.c          | 13 +++++++++++++
 gom/gom-resource-group.c  | 22 ++++++++++++++++++----
 4 files changed, 87 insertions(+), 8 deletions(-)

commit 3506261a519a7519a55aae72625b04be559c32c1
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Apr 16 01:21:00 2014 +0200

    gom: Add to/from bytes metadata properties
    
    If a property is not a number or a string, we'll need help
    serialising and deserialising it to a GBytes which we would fit
    in a BLOB column.

 gom/gom-resource.c | 31 +++++++++++++++++++++++++++++++
 gom/gom-resource.h | 23 +++++++++++++++++------
 2 files changed, 48 insertions(+), 6 deletions(-)

commit 41a65604262d82842a6c5f114955de24afa28623
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 00:33:54 2014 +0200

    gom: Fix a few memory leaks in GomMemoryGroup

 gom/gom-resource-group.c | 2 ++
 1 file changed, 2 insertions(+)

commit 69aa26b4482f53a3bc91298b66c9cf5a13003948
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Apr 17 00:29:54 2014 +0200

    gom: Fix memory leak when destroying adapter
    
    If we closed the DB properly, we were leaking the queue and thread.

 gom/gom-adapter.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

commit 1a4acf7096073556ce56633fbbae94852317215a
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Apr 16 19:37:17 2014 +0200

    gom: Fix a memory leak in gom_repository_migrate_sync()
    
    And by extension in the automatic migration sync call.

 gom/gom-repository.c | 2 ++
 1 file changed, 2 insertions(+)

commit ab563a0cd6ece7aa835e732274e4fe8ee1b2978a
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Apr 16 17:23:41 2014 +0200

    gom: Fix obvious bug in table creation function
    
    There was only ever one command in the creation commands returned.

 gom/gom-command-builder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 67e3689649dc7a6b22163ee7c53d9eb88e4bf490
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Apr 16 12:03:58 2014 +0200

    gom: Fix sql_type_for_column() return value
    
    Should return NULL not FALSE.

 gom/gom-command-builder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6ed3d22ac996e7c7176da13cd926c27967b65ee3
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Apr 15 18:29:28 2014 +0200

    tests: Use automatic migration in test

 tests/test-gom-find.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

commit f69827db7c8ece2b8dd05b6fd24b689e585ebe80
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Apr 15 18:25:53 2014 +0200

    gom: Add gom_repository_automatic_migrate_(a)sync
    
    It's an automatic migration tool, which will take care of create the
    table for each of the passed types, as well as adding any columns
    necessary to upgrade to the latest version.

 gom/gom-repository.c | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-repository.h |  14 +++++++
 2 files changed, 122 insertions(+)

commit 87d87a2a7d63506b8134e5197a805beea8a629ff
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Apr 15 15:47:11 2014 +0200

    gom: Add gom_command_builder_build_create()
    
    As documented in the API docs. This will be used for the automatic
    migration feature.

 gom/gom-command-builder.c | 116 ++++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-command-builder.h |   2 +
 2 files changed, 118 insertions(+)

commit a8094cf57213f383a48c2f76e12654c872955741
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Apr 15 18:20:51 2014 +0200

    gom: Add GomResource property metadata
    
    Add "new-in-version" and "is-mapped" metadata for GomResource
    sub-class properties. This allows application developers to
    control which properties will be mapped to column names, and
    tell the automated migration tool which columns to add.

 gom/gom-command-builder.c | 15 +++++++++++----
 gom/gom-resource.c        | 43 +++++++++++++++++++++++++++++++++++++++++++
 gom/gom-resource.h        | 11 +++++++++++
 3 files changed, 65 insertions(+), 4 deletions(-)

commit 587f3cd8fdf6ad79362be978233e9f6a90da1aab
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Apr 15 18:19:16 2014 +0200

    gom: Consider version 0 the absence of version
    
    If version 0 is the absence of DB version information in the database,
    then migrations should be done at least up to version 1.

 gom/gom-repository.c | 2 ++
 1 file changed, 2 insertions(+)

commit 0ba7e8910c6c151346c22b1d07b66dea896ed9db
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Apr 15 15:45:49 2014 +0200

    gom: Don't consider a property mapped if type is not handled
    
    If the type for a property is not one of the fundamental types that
    we know how to handle, don't map it in the command builder.

 gom/gom-command-builder.c | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

commit 72b222cd112e4ef8c7f8c16fdeebe658a2c62361
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Apr 15 18:24:11 2014 +0200

    tests: Add test for column added in DB version 2

 tests/test-gom-find.c | 25 ++++++++++++++++++++++---
 1 file changed, 22 insertions(+), 3 deletions(-)

commit 9abdec4a13c78ec65a000c7e452317566f00fa33
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Apr 15 12:26:49 2014 +0200

    gom: Remove incorrect warning in gom_resource_save_sync()
    
    The API documentation for gom_resource_save_sync() mentioned that
    this needed to be called within the SQLite thread. This is incorrect
    since b9173234ffc848083724486dd564af4a9ee89884 which made this
    sync call push the request to the SQLite in a thread-safe way.

 gom/gom-resource.c | 4 ----
 1 file changed, 4 deletions(-)

commit 0a4463e67f0e6fd87502e4be80383605f05f5e96
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Apr 15 12:25:23 2014 +0200

    gom: Remove fetching the generated SQL for a command
    
    We ultimately want to get rid of SQL in the public API, so start
    with not making the generated SQL command readable.

 gom/gom-command.c | 13 +------------
 gom/gom-command.h |  1 -
 2 files changed, 1 insertion(+), 13 deletions(-)

commit e26ed66e032a121331524de3090cc98651c4b95e
Author: Christian Hergert <christian@hergert.me>
Date:   Mon Apr 14 12:38:30 2014 -0700

    update .gitignore.

 m4/.gitignore | 1 +
 po/.gitignore | 3 +++
 2 files changed, 4 insertions(+)

commit 3440d26bc9f67dec2da925e714cb844eb50bb829
Author: Daniel Mustieles <daniel.mustieles@gmail.com>
Date:   Mon Apr 14 12:18:23 2014 +0200

    Added i18n support

 Makefile.am    |  2 +-
 configure.ac   | 17 +++++++++++++++++
 po/LINGUAS     |  0
 po/POTFILES.in |  8 ++++++++
 4 files changed, 26 insertions(+), 1 deletion(-)

commit 8b054b0cf95d6c11280964e6b0fc7b3dd486f87e
Author: Christian Hergert <christian@hergert.me>
Date:   Sat Apr 12 18:26:47 2014 -0700

    add gom.doap.

 gom.doap | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

commit cdbe2b4676fe340fd8ef22478ce1040747e1600c
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Mar 28 02:00:28 2014 +0100

    gom: Fix link in gom_adapter_open_async() docs

 gom/gom-adapter.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 0f3543fbd739a1f8f16e9b063687b07a65ca86b3
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Mar 28 01:58:30 2014 +0100

    gom: Add gom_repository_migrate_sync()

 gom/gom-repository.c | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 gom/gom-repository.h |  5 +++++
 2 files changed, 64 insertions(+), 2 deletions(-)

commit 168a72f6e97ef9d6f63c5202ed899a5c899fdf1f
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Mar 28 01:56:53 2014 +0100

    gom: Separate callback data from user_data
    
    Add a "migrator_data" argument to gom_repository_migrate_async()
    so that the user_data passed to the GIO async callback doesn't
    need to be the same as the one passed to the migration function.

 gom/gom-repository.c        | 3 ++-
 gom/gom-repository.h        | 1 +
 tests/test-gom-find.c       | 2 +-
 tests/test-gom-repository.c | 2 +-
 4 files changed, 5 insertions(+), 3 deletions(-)

commit 10bbc9e2d24d6ccdac7e7d2ba688c3e5e73f3134
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 25 14:39:05 2014 +0100

    gom: Correct gom_resource_fetch_m2m_finish() return type
    
    Fix cyclic dependency problem when making
    gom_resource_fetch_m2m_finish() actually return a GomResourceGroup
    rather than a gpointer.
    
    This is necessary to avoid problems in the future with languages
    that use the introspection data.

 gom/gom-resource-group.h | 4 ++--
 gom/gom-resource.c       | 4 ++--
 gom/gom-resource.h       | 4 +++-
 3 files changed, 7 insertions(+), 5 deletions(-)

commit 5a905863b41adfeaaf638444e5c429e9d6506626
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 25 11:32:46 2014 +0100

    gom: Fix g_async_result_get_source_object() usage
    
    g_async_result_get_source_object() returns a reference to the
    object, so don't forget to unref it.

 gom/gom-repository.c     | 2 ++
 gom/gom-resource-group.c | 1 +
 gom/gom-resource.c       | 3 +++
 3 files changed, 6 insertions(+)

commit fbd9d28c71a21a7bc6f4932750b9e023b44bd3ed
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 25 11:32:10 2014 +0100

    gom: Fix worker thread being leaked

 gom/gom-adapter.c | 1 +
 1 file changed, 1 insertion(+)

commit 0190f16cc9f27556fa02c2de8cedc00fbae8ea1a
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 25 11:23:36 2014 +0100

    tests: Fix small leak in filter creation

 tests/test-gom-find.c | 1 +
 1 file changed, 1 insertion(+)

commit 74392dfe45f110dfa455f67fab89d03f1bda5540
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 25 11:21:57 2014 +0100

    gom: Fix mem leak in find_{sync,async} functions
    
    Both were leaking the async result.

 gom/gom-repository.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit a1d03626541b1786004469182a277eeb586a3346
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 25 11:21:24 2014 +0100

    gom: Fix command leak when querying the DB version

 gom/gom-repository.c | 1 +
 1 file changed, 1 insertion(+)

commit fd177275f68ddebdf70f54c891b1fda76e93728b
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 25 11:19:50 2014 +0100

    gom: Set clear function for values arrays in filter
    
    Otherwise we'll leak the contents of the array when we use
    g_array_free() with free_segment = TRUE.

 gom/gom-filter.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 99b08b0f419c2d2479a122293fb35f865bb7220b
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 25 11:15:27 2014 +0100

    gom: Simplify array concatenation in filter
    
    The values in the source array aren't freed, so don't bother
    copying the values, we'll assume ownership.

 gom/gom-filter.c | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

commit 82d4da4429fd3cd518db1f8c7dfce43d634ba190
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 25 11:14:04 2014 +0100

    gom: Fix leak when building commands
    
    g_object_class_list_properties() transfers the container, so
    don't forget to free it.

 gom/gom-command-builder.c | 1 +
 1 file changed, 1 insertion(+)

commit b2cf20f9feadecaed7180619c695e3ad6f2c8e5c
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Mar 25 09:01:28 2014 +0100

    gom: Add sync versions of the open/close functions
    
    This makes it easier to deal with databases that are bound to
    an object's lifecycle.

 gom/gom-adapter.c | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
 gom/gom-adapter.h |   5 +++
 2 files changed, 111 insertions(+), 2 deletions(-)

commit f4278fd3df213bb81ae458264bc42349a8ca58c9
Author: Bastien Nocera <hadess@hadess.net>
Date:   Mon Mar 24 18:19:01 2014 +0100

    gom: Remove dummy_cb functions
    
    g_simple_async_result_new() handles NULL callbacks just fine.

 gom/gom-repository.c     | 9 +--------
 gom/gom-resource-group.c | 9 +--------
 2 files changed, 2 insertions(+), 16 deletions(-)

commit b9173234ffc848083724486dd564af4a9ee89884
Author: Bastien Nocera <hadess@hadess.net>
Date:   Mon Mar 24 17:59:35 2014 +0100

    gom: Make sure sync calls use the SQLite worker thread
    
    The sync calls would make SQLite calls outside the SQLite thread.
    As this can lead to very bad things happening, use a GAsyncQueue
    to wait (and block) for the asynchronous call to finish.

 gom/gom-repository.c     | 16 +++++++++++--
 gom/gom-resource-group.c | 19 +++++++++++----
 gom/gom-resource.c       | 62 +++++++++++++++++++++++++++++++++++++++++++-----
 3 files changed, 85 insertions(+), 12 deletions(-)

commit 1ef8b98efab173cea4020ea807bfcc5b7706c8a5
Author: Bastien Nocera <hadess@hadess.net>
Date:   Mon Mar 24 16:43:30 2014 +0100

    gom: Prevent SQLite accesses from the main thread
    
    This isn't foolproof, but this ensures that the db struct
    member isn't fetched (usually before it's used), or that
    SQL commands aren't run from the main thread instead of
    from the SQLite thread.

 gom/gom-adapter.c | 3 +++
 1 file changed, 3 insertions(+)

commit f143f7b20a24ad93eeac4446a6c84c9736bbc5b2
Author: Bastien Nocera <hadess@hadess.net>
Date:   Mon Mar 24 17:54:53 2014 +0100

    gom: Don't use GSimpleAsyncResult in worker thread
    
    Using GSimpleAsyncResults in the worker thread makes it
    impossible to chain calls inside the SQLite thread, making
    it hard to implement reliable synchronous calls.
    
    Instead, we'll use our own structure, so that the callbacks
    passed to the worker thread will be responsible for sending
    out results through GSimpleAsyncResult if they want to use
    such a construct.

 gom/gom-adapter.c | 158 ++++++++++++++++++++++++++++++++----------------------
 1 file changed, 95 insertions(+), 63 deletions(-)

commit fa78d9b660f16f294146e2082684f381d77230e4
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Mar 21 18:46:59 2014 +0100

    gom: Add guard for gom_resource_delete_sync()
    
    We have one like that for the async delete and for the saves already.

 gom/gom-resource.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit a80f05e9065697dd0457165b33a3420a122679e1
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Mar 21 18:11:34 2014 +0100

    tests: Use LIKE in find test
    
    Rather than a too simple equality filter.

 tests/test-gom-find.c | 25 +++++++++++++++++++++----
 1 file changed, 21 insertions(+), 4 deletions(-)

commit 6eaad6b120e262daf1fa1b1b4421ae11de788cbd
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Mar 21 18:10:24 2014 +0100

    gom: Add support for the LIKE operator
    
    To allow search through text.

 gom/gom-filter.c | 14 +++++++++++++-
 gom/gom-filter.h |  4 ++++
 2 files changed, 17 insertions(+), 1 deletion(-)

commit f9434ec1c345e47f400220c45c9db00fb5877033
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Mar 20 18:48:40 2014 +0100

    tests: Add a save test to the find test
    
    This tests whether saving to the database works.

 tests/test-gom-find.c | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit 9688d433776912a8350b456dd6619247579bfd81
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Mar 20 17:41:15 2014 +0100

    tests: Add test for the find function

 .gitignore             |   1 +
 tests/Makefile.include |   8 ++
 tests/grl-bookmarks.db | Bin 0 -> 5120 bytes
 tests/test-gom-find.c  | 307 +++++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 316 insertions(+)

commit 3787cbb7915f56ccc7ed4728d7d7a8a0856469ad
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Mar 20 17:24:27 2014 +0100

    gom: Fix copying of values
    
    Before being copied to using g_value_copy(), the destination
    GValue needs to be initialised to the correct type. 2 places in
    GomFilter were not doing that.

 gom/gom-filter.c | 2 ++
 1 file changed, 2 insertions(+)

commit 86fe0e3b6e964fb72a0112c616b526e23583d4da
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Mar 20 16:15:47 2014 +0100

    gom: Show an error when migration func is broken
    
    In addition to asserting later in the code, throw a warning
    mentioning if the external and developer-provided migration function
    is broken, and fails to send back a GError when it fails.
    
    This should stop people from pointing at a gom bug when their code
    is broken (as I did :)

 gom/gom-repository.c | 2 ++
 1 file changed, 2 insertions(+)

commit a771459d67ddbae6a3e281d317ea0b2a72db060c
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Mar 20 16:14:54 2014 +0100

    gom: Fix parameter name in header to match implementation
    
    Was called "URI" in the implementation, but "filename" in the header.
    We actually expect a URI, so change the header.

 gom/gom-adapter.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d3efcb9fb7a534a6fee7c9a4f15a961122838efd
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Mar 19 16:17:09 2014 +0100

    gom: Actually open URIs passed to open() as URIs
    
    And not filenames by setting the SQLITE_OPEN_URI open flag as
    mentioned in:
    http://www.sqlite.org/uri.html

 gom/gom-adapter.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ac9825abfd18ff77e1e92c7d96bfe46f5debc2ce
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Mar 19 16:16:39 2014 +0100

    gom: Roughly document gom_adapter_open_async()
    
    URL in the text should probably be an hyper-link, but that will do
    for now.

 gom/gom-adapter.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit dedb415e785c859356633d37c6ce91f625e7c316
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Mar 19 16:16:11 2014 +0100

    tests: Also test closing the database

 tests/test-gom-repository.c | 24 +++++++++++++++++++++---
 1 file changed, 21 insertions(+), 3 deletions(-)

commit 349b443a39e35f72f27154274da8ed8efaef487c
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Mar 19 16:02:39 2014 +0100

    tests: Test table migration in repository test

 tests/test-gom-repository.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 02b70e6edda231fb015590f0f2e5fc72a794686a
Author: Cosimo Cecchi <cosimoc@gnome.org>
Date:   Wed Jun 12 22:27:26 2013 -0700

    Add missing element-type annotation
    
    Shut up a gobject-introspection warning.

 gom/gom-filter.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2098cf6fdab12cf7ddf2659d8184d3d55e411f5e
Author: Cosimo Cecchi <cosimoc@gnome.org>
Date:   Wed Jun 12 22:25:25 2013 -0700

    Remove autogenerated file from git

 m4/gtk-doc.m4 | 71 -----------------------------------------------------------
 1 file changed, 71 deletions(-)

commit bbea3e4cd20ea1e7fceedf748f217a909fa945c9
Author: Cosimo Cecchi <cosimoc@gnome.org>
Date:   Wed Jun 12 22:24:58 2013 -0700

    Really enable silent rules

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 68921f6a9d67a857adf486fb4d7e92755d6457ba
Author: Christian Hergert <christian@hergert.me>
Date:   Wed Jun 12 22:21:25 2013 -0700

    build: bump dependencies for new development.

 configure.ac                | 10 ++++------
 m4/gtk-doc.m4               |  6 +++++-
 tests/test-gom-adapter.c    |  1 -
 tests/test-gom-repository.c |  1 -
 4 files changed, 9 insertions(+), 9 deletions(-)

commit f26eb343dea5f3bca27de2df3545bce720d0e690
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Nov 7 03:21:07 2012 -0800

    [build] Fix make distcheck.

 configure.ac         | 4 ++--
 gom/Makefile.include | 8 +++++---
 2 files changed, 7 insertions(+), 5 deletions(-)

commit 1dae0dcff28bf94e40536493fd5956ddd0f15ce0
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Nov 7 03:07:45 2012 -0800

    [build] Work on making distcheck pass.

 Makefile.am          |  8 ++------
 Makefile.include     | 11 -----------
 configure.ac         |  1 +
 doc/Makefile.am      |  2 --
 gom/Makefile.include |  3 ++-
 5 files changed, 5 insertions(+), 20 deletions(-)

commit aefa4e9e0d4b71a75a50a8830f90718b956a62f6
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Nov 6 22:28:04 2012 -0800

    [tests] Fix migration test.

 doc/Makefile.am             |  2 +-
 tests/test-gom-repository.c | 30 +++++++++++++++++-------------
 2 files changed, 18 insertions(+), 14 deletions(-)

commit 2861070c8838934c36df0928e0712f4390713a55
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Nov 6 20:32:05 2012 -0800

    build: cleanup build system a bit.
    
    use gnome-autogen.sh, cleanup gtk-doc stuff.

 Makefile.am               |  4 +-
 autogen.sh                | 16 +-------
 build/m4/.gitignore       |  6 ---
 build/m4/expansions.m4    | 50 -------------------------
 build/m4/introspection.m4 | 94 -----------------------------------------------
 build/m4/silent.m4        | 46 -----------------------
 configure.ac              | 22 ++---------
 m4/.gitignore             |  6 +++
 m4/gtk-doc.m4             | 67 +++++++++++++++++++++++++++++++++
 m4/introspection.m4       | 94 +++++++++++++++++++++++++++++++++++++++++++++++
 m4/silent.m4              | 46 +++++++++++++++++++++++
 11 files changed, 219 insertions(+), 232 deletions(-)

commit 6dc0903b770d3c21e271edf620f6fe9f4bd5c809
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Sep 7 00:31:48 2012 -0700

    build: remove gtkdocize from autogen.

 autogen.sh | 8 --------
 1 file changed, 8 deletions(-)

commit 5e7db182586014ed92191b4b3fd7d400209aaca9
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Sep 5 01:45:12 2012 -0700

    use GArray instead of GValueArray.

 gom/gom-command-builder.c |  8 +++----
 gom/gom-filter.c          | 56 +++++++++++++++++++++++++++++++----------------
 gom/gom-filter.h          |  6 ++---
 gom/gom-resource.c        | 10 ++++-----
 4 files changed, 49 insertions(+), 31 deletions(-)

commit 91830e533d28e871ef7cfb2bcd0f586e9a248a00
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Sep 5 01:44:32 2012 -0700

    adapter: use g_thread_new() on GLib >= 2.32.0.

 gom/gom-adapter.c | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 4defdb53b139be98e05cfa99f92154bf7f8df753
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Sep 5 01:44:06 2012 -0700

    build: check for HAVE_INTROSPECTION.

 gom/Makefile.include | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 968ace6295ddc67b1687b6563f6cef06efc55a87
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Sep 5 01:43:55 2012 -0700

    build: better gtk-doc check.

 configure.ac | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit 84b6c053c582ed7b189f2e2de63271cb8c1dd3b2
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Aug 22 00:49:38 2012 -0700

    command: add support for binding enum types to parameters.

 gom/gom-command.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit d8f741df4b862cba5b68385908001af188ef865c
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Mar 23 00:18:13 2012 -0700

    [build] Bump version to 0.1.10.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 523de6b95df3656c17a710331660fc36bba1415e
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Mar 18 05:22:26 2012 -0700

    [doc] Add support for generating gtk-doc.

 Makefile.am        |  2 ++
 configure.ac       |  4 ++++
 doc/.gitignore     |  7 ++++++
 doc/Makefile.am    | 60 +++++++++++++++++++++++++++++++++++++++++++++++++
 doc/gom-docs.sgml  | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 doc/version.xml.in |  1 +
 6 files changed, 139 insertions(+)

commit 4575866c400bf514405dca14caaa34f564f7dc22
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Mar 18 04:17:21 2012 -0700

    [repository] Mark migration successful if we are already current.

 gom/gom-repository.c | 1 +
 1 file changed, 1 insertion(+)

commit 91278c9676347d3559af62149141f1bf2468815a
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Mar 16 17:44:27 2012 -0700

    [group] Make sure we own a reference to the async result.

 gom/gom-resource-group.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 66eae813ac9ea7dee5d73e2c31c386180ab3fea8
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Mar 16 17:23:48 2012 -0700

    [commandbuilder] Whitespace cleanup.

 gom/gom-command-builder.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit c5072d5f4c9c0dcf1ba6e5acd20042e46bf40b4d
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Mar 16 17:23:35 2012 -0700

    [commandbuilder] Ignore build_map() called with NULL m2m_table.

 gom/gom-command-builder.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit e8340bd43cec051e6e0301030741a60777606dc6
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Mar 16 05:03:50 2012 -0700

    [command] Disable logging of all SQL commands.

 gom/gom-command.c | 2 ++
 1 file changed, 2 insertions(+)

commit aac5aee5361512742d3840dfc96eb61e02f562ab
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Mar 16 05:02:11 2012 -0700

    [adapter] Add helper for quick SQL inside of write callbacks.

 gom/gom-adapter.c | 35 +++++++++++++++++++++++++++++++++++
 gom/gom-adapter.h |  3 +++
 2 files changed, 38 insertions(+)

commit 2b79a05659927e4d6b47e9f6eb928e5cbb451f30
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Mar 16 04:33:33 2012 -0700

    [command] Handle GTypes of GTypeFlags.

 gom/gom-command.c | 4 ++++
 1 file changed, 4 insertions(+)

commit a895120c3bec3fdb8377c74e2e2b764b25b242ae
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Mar 16 04:33:13 2012 -0700

    [resource] Be a bit more resilient when changing repository.
    
    * Only notify if there is a repository being set.
    * Unset repository before removing weak pointer.

 gom/gom-resource.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

commit 215a39670abd5964c8ef4da5fc6ec482e86bbc97
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Mar 16 00:48:25 2012 -0700

    [build] Add log domain.

 Makefile.include | 1 +
 1 file changed, 1 insertion(+)

commit 669c53dea30608b9021161b2ab4f8c7a0fb593a7
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Mar 15 18:12:40 2012 -0700

    [repository] Add some docs to make GIR happy.

 gom/gom-repository.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

commit 7b4ed1550497caef286cd5d6a3cc52ce0588b597
Author: Christian Hergert <christian@chergert-desktop.(none)>
Date:   Tue Oct 25 23:18:52 2011 -0700

    Start on repository tests.

 .gitignore                  |  1 +
 tests/Makefile.include      | 15 ++++---
 tests/test-gom-repository.c | 96 +++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 104 insertions(+), 8 deletions(-)

commit 0d028a884dec25e496c596c593aaf9b6323d13b6
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Oct 19 19:08:10 2011 -0700

    Add gom_repository_find_one_sync().

 gom/gom-repository.c | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 gom/gom-repository.h |  4 +++
 2 files changed, 96 insertions(+), 3 deletions(-)

commit 3f48ab66935b8b453498ad6c80d6a36fefda127b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Oct 19 18:55:15 2011 -0700

    Add gom_resource_group_fetch_sync().

 gom/gom-resource-group.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-resource-group.h |  4 ++++
 2 files changed, 48 insertions(+)

commit 41945d5d20a702f7fc22f0bbb0137a317524f9ef
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Oct 19 18:36:55 2011 -0700

    Add gom_repository_find_one_async().

 gom/gom-repository.c | 109 +++++++++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-repository.h |  54 ++++++++++++++++---------
 2 files changed, 144 insertions(+), 19 deletions(-)

commit 13989b61c096b2d89ef67f1b938af32c6b4fa4f9
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Oct 19 18:36:42 2011 -0700

    Add synchronous delete function for use in sqlite thread.

 gom/gom-resource.c | 72 ++++++++++++++++++++++++++++++++++++++++--------------
 gom/gom-resource.h |  2 ++
 2 files changed, 56 insertions(+), 18 deletions(-)

commit 249e273b7b212bcfe3395b7e2a15111340c4866b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Oct 19 18:36:24 2011 -0700

    Add boolean helpers.

 gom/gom-cursor.c | 1 +
 gom/gom-cursor.h | 2 ++
 2 files changed, 3 insertions(+)

commit d83c8412ec237fa7e63042b3f0c91837473b4c8a
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Oct 17 15:52:30 2011 -0700

    Allow saving resource synchronously if you are in the sqlite thread.

 gom/gom-resource.c | 82 +++++++++++++++++++++++++++++++++++++++++++-----------
 gom/gom-resource.h |  2 ++
 2 files changed, 68 insertions(+), 16 deletions(-)

commit be383a6aff2a9f8e3aa7009996b052575d5834b0
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Oct 16 23:27:54 2011 -0700

    Start on tests for new Gom design.

 .gitignore                   |   3 +-
 tests/Makefile.include       |  15 +
 tests/mock/mock-gender.c     |  39 ---
 tests/mock/mock-gender.h     |  41 ---
 tests/mock/mock-occupation.c |  47 ---
 tests/mock/mock-occupation.h |  55 ----
 tests/mock/mock-person.c     |  59 ----
 tests/mock/mock-person.h     |  55 ----
 tests/test-gom-adapter.c     |  58 ++++
 tests/test-gom-gtk.c         | 108 -------
 tests/test-gom.c             | 713 -------------------------------------------
 tests/test-py-gom.py         |  44 ---
 tests/test-vala-gom.vala     |  27 --
 13 files changed, 74 insertions(+), 1190 deletions(-)

commit 23808b633846741fbbc8bd180ccaf228d90efc6b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Oct 16 23:27:41 2011 -0700

    Add gom_adapter_close_async().

 gom/gom-adapter.c | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 gom/gom-adapter.h | 38 +++++++++++++++++++++----------------
 2 files changed, 78 insertions(+), 17 deletions(-)

commit 52dca60982cec1f409ac2743162d7f233b7e9024
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Oct 16 23:27:24 2011 -0700

    Add gom_adapter_new().

 gom/gom-adapter.c | 6 ++++++
 gom/gom-adapter.h | 1 +
 2 files changed, 7 insertions(+)

commit 3a63ca2ddd480a2bd148238017b70a612b4cafcb
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Oct 14 11:50:16 2011 -0700

    Fix GObject Introspection warnings.

 gom/Makefile.include      |  2 +-
 gom/gom-adapter.c         | 29 ++++++++++++++++++++++++++++-
 gom/gom-command-builder.c | 45 +++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-filter.c          | 38 ++++++++++++++++++++++++++++++++++++++
 gom/gom-repository.c      | 32 ++++++++++++++++++++++++++++++++
 gom/gom-resource-group.c  | 11 +++++++++++
 6 files changed, 155 insertions(+), 2 deletions(-)

commit d10e3ac0e2675ae98585740b8d25f51128f4ce82
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Oct 14 11:22:28 2011 -0700

    Start on a new approach for Gom. Abstracting the data store was turning out
    to be more difficult than it was worth. Therefore, we rely on SQLite directly.
    Additionally, this makes it much easier for us to implement asynchronous
    commands, migrations, and a cleaner object model.
    
    I'll update documentation and notes over time.

 configure.ac                |    9 +-
 gom/Makefile.include        |   40 +-
 gom/gom-adapter-sqlite.c    | 1440 ---------------------------
 gom/gom-adapter-sqlite.h    |   81 --
 gom/gom-adapter.c           |  330 ++++---
 gom/gom-adapter.h           |   82 +-
 gom/gom-collection.c        |  600 -----------
 gom/gom-collection.h        |   78 --
 gom/gom-command-builder.c   |  736 ++++++++++++++
 gom/gom-command-builder.h   |   65 ++
 gom/gom-command.c           |  505 ++++++++++
 gom/gom-command.h           |   99 ++
 gom/gom-condition.c         |  282 ------
 gom/gom-condition.h         |   71 --
 gom/gom-cursor.c            |  299 ++++++
 gom/gom-cursor.h            |   76 ++
 gom/gom-enumerable-array.c  |  191 ----
 gom/gom-enumerable-array.h  |   60 --
 gom/gom-enumerable-sqlite.c |  279 ------
 gom/gom-enumerable-sqlite.h |   57 --
 gom/gom-enumerable.c        |  109 --
 gom/gom-enumerable.h        |   92 --
 gom/gom-filter.c            |  497 ++++++++++
 gom/gom-filter.h            |   98 ++
 gom/gom-list-store.c        |  548 -----------
 gom/gom-list-store.h        |   55 --
 gom/gom-private.h           |   33 -
 gom/gom-property-set.c      |  349 -------
 gom/gom-property-set.h      |   60 --
 gom/gom-property.h          |   53 -
 gom/gom-query.c             |  558 -----------
 gom/gom-query.h             |   66 --
 gom/gom-relationship.h      |   44 -
 gom/gom-repository.c        |  471 +++++++++
 gom/gom-repository.h        |   83 ++
 gom/gom-resource-group.c    |  566 +++++++++++
 gom/gom-resource-group.h    |   69 ++
 gom/gom-resource-macros.h   |   77 --
 gom/gom-resource.c          | 2294 ++++++++++---------------------------------
 gom/gom-resource.h          |  131 +--
 gom/gom-util.c              |   73 --
 gom/gom-util.h              |   32 -
 gom/gom.h                   |   19 +-
 tests/Makefile.include      |   63 --
 44 files changed, 4333 insertions(+), 7487 deletions(-)

commit 11a5467915ab827d571fae72c7e2ce6c223ecbe2
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed May 11 00:30:08 2011 -0700

    Start on threading helper.

 gom/gom-adapter.c  | 78 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
 gom/gom-adapter.h  | 39 ++++++++++++++++-----------
 gom/gom-resource.c | 67 +++++++++++++++++++++++++++++++++++++---------
 gom/gom-resource.h |  1 +
 4 files changed, 155 insertions(+), 30 deletions(-)

commit 219485b5c9824b53dce42ec97825dbf227e9d604
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Apr 24 17:28:57 2011 -0700

    Use weak pointer for GomResource::adapter.

 gom/gom-resource.c | 42 ++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 40 insertions(+), 2 deletions(-)

commit 394f722c6c60df9bc04034b4092409b5e7edb79b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Apr 24 16:15:13 2011 -0700

    Zero property data when freeing.

 gom/gom-resource.c | 1 +
 1 file changed, 1 insertion(+)

commit 931d355e51adf511913a2f6523add3b244a13884
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Apr 24 14:36:39 2011 -0700

    Hunt down some reference leaks.

 gom/gom-adapter-sqlite.c |  6 +++---
 gom/gom-property-set.c   | 21 ++++++++++++++-------
 gom/gom-query.c          |  8 +++++++-
 gom/gom-resource.c       |  6 +++---
 4 files changed, 27 insertions(+), 14 deletions(-)

commit b0399e39694dca7ee384c63bad91fe83440f3c7b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Apr 22 23:15:40 2011 -0700

    Add "saved" signal to GomResource.

 gom/gom-resource.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit dfb846984f36c109d984742a7c28ce013633e57b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Apr 22 22:23:19 2011 -0700

    Leak cleanup.

 gom/gom-resource.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 9bb224cb7515b944dfb59f0d1b55cce7838febad
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Apr 22 22:23:02 2011 -0700

    Remove dead comment.

 gom/gom-adapter.h | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

commit 6d3e05a6f04ddaaed0022b19e32822c18961c750
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Apr 22 22:22:50 2011 -0700

    [sqlite] Fix created tables leak.

 gom/gom-adapter-sqlite.c | 1 +
 1 file changed, 1 insertion(+)

commit 87f92ff2d9eba20cb0eb083e1388c36d4b4a26d4
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Apr 18 21:24:44 2011 -0700

    Add gom_resource_find_property().
    
    This is a helper function to make things easier. I'm not sure
    if it will stay long term or not. We will see how useful it is.

 gom/gom-resource.c | 22 ++++++++++++++++++++++
 gom/gom-resource.h |  2 ++
 2 files changed, 24 insertions(+)

commit df5c5079712367046a796a90f206ea14110bce19
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Apr 18 21:23:53 2011 -0700

    Whitespace cleanup.

 gom/gom-resource.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit cf32ef617af284d4c87446317f52be20f79125b8
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Apr 18 21:23:40 2011 -0700

    Fix logic error.

 gom/gom-resource.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 975758ad9d5af420acbba58c20ec3c42b3e1d0a0
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Apr 18 21:19:32 2011 -0700

    gom_condition_equal() API change.
    
    This makes it easier to create a condition without the intermediary
    GValue. For the old API, use gom_condition_equal_value().

 gom/gom-condition.c | 53 +++++++++++++++++++++++++++++++++++++++++++----------
 gom/gom-condition.h |  4 +++-
 gom/gom-resource.c  |  4 ++--
 tests/test-gom.c    |  6 +++---
 4 files changed, 51 insertions(+), 16 deletions(-)

commit d185d69eafce15f17dea347f98641f975b1dbe0e
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Apr 18 21:17:02 2011 -0700

    Add gom_collection_get_additions().

 gom/gom-collection.c | 7 +++++++
 gom/gom-collection.h | 1 +
 2 files changed, 8 insertions(+)

commit b0178146608e0f30aa9b18628aa80fa1205d2876
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Apr 18 21:16:47 2011 -0700

    [sqlite] use g_direct_hash since we store integer in pointer

 gom/gom-adapter-sqlite.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 5adac0cecc3dba5346cd97cc9d864034182dee21
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Apr 18 21:16:26 2011 -0700

    [sqlite] Add gom_adapter_sqlite_rollback().

 gom/gom-adapter-sqlite.c | 7 +++++++
 gom/gom-adapter-sqlite.h | 1 +
 2 files changed, 8 insertions(+)

commit d0009b0274107ebe83fb737e426634e7ea0cb5e0
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Apr 17 17:19:07 2011 -0700

    Only save dirty children.

 gom/gom-collection.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit d6a2f229f15f3b5b13c2337d7c9ce550922b8878
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Apr 17 17:05:44 2011 -0700

    Add gom_resource_merge() to merge their property dictionaries.
    
    This is similar to pythons dict.__update__ except it only copies the
    modified properties to the new resource.

 gom/gom-resource.c | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
 gom/gom-resource.h |  2 ++
 2 files changed, 66 insertions(+), 1 deletion(-)

commit 79a2297b2b29c577819daea026b03bea4bb02f75
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Apr 17 16:52:40 2011 -0700

    Whitespace cleanup.

 gom/gom-resource.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8f381c1e33245482a52296c2636f87e284c47d22
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Apr 15 20:38:41 2011 -0700

    [sqlite] throw an error if no properties are specified for update

 gom/gom-adapter-sqlite.c | 8 ++++++++
 gom/gom-adapter-sqlite.h | 3 ++-
 2 files changed, 10 insertions(+), 1 deletion(-)

commit 82a150962f438fa7b80b97482419e9a0d8bc72b9
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Apr 14 16:51:02 2011 -0700

    Save one-to-many mappings as children too.

 gom/gom-collection.c | 4 ++++
 gom/gom-resource.c   | 3 ++-
 2 files changed, 6 insertions(+), 1 deletion(-)

commit 3dea035d0392cd6a039c439fd2f3fa34b9a3145f
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Apr 12 18:27:15 2011 -0700

    Use property name in m2m table generation.

 gom/gom-adapter-sqlite.c | 35 +++++++++++++++++------------------
 1 file changed, 17 insertions(+), 18 deletions(-)

commit 58cf36fd762d41fafeafd2e1576ab30ee35c7884
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Apr 12 01:27:57 2011 -0700

    Error on collection save if no query.

 gom/gom-collection.c | 40 ++++++++++++++++++++++------------------
 gom/gom-collection.h |  1 +
 2 files changed, 23 insertions(+), 18 deletions(-)

commit 152015c5fd920fdc314da2fde965fd3a67ada803
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Apr 12 00:44:35 2011 -0700

    cleanup

 gom/gom-resource.c | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit de2fe2c5da25ceafd934ee3c1bdcbf531f68373c
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Apr 11 23:50:02 2011 -0700

    whitespace cleanup.

 gom/gom-resource.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 510e16244994d8249eb86a36535f05941c18abc1
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Apr 11 23:42:16 2011 -0700

    More work towards saving m2m collections.

 gom/gom-collection.c |  73 ++++++++++++++++++++-
 gom/gom-collection.h |   9 +++
 gom/gom-resource.c   | 174 +++++++++++++++++++++++++++++++++++++++------------
 3 files changed, 214 insertions(+), 42 deletions(-)

commit e918953eed441124a39f1e434a8d08e085be3c1a
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sat Apr 9 10:59:58 2011 -0700

    Try to handle many2many relationships individually.

 gom/gom-resource.c | 19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)

commit 669ba919880a5f11b94e63068b704ef43e158133
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Apr 7 22:24:15 2011 -0700

    Fix some SQL generation issues.

 gom/gom-adapter-sqlite.c | 18 +++++-------------
 1 file changed, 5 insertions(+), 13 deletions(-)

commit 2a536802c45999d1e91e483f11b14586231dccaf
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Apr 7 22:23:58 2011 -0700

    Start creating m2m tables.

 gom/gom-adapter-sqlite.c | 64 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

commit 8269f93f95929ff6bbb6f5b38db96b51dc9546ca
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Apr 7 22:23:28 2011 -0700

    Only free str if non-NULL.

 gom/gom-adapter-sqlite.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit d6b63e07629d34ebba78f5d75612bc8c246b740e
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Apr 7 19:16:47 2011 -0700

    Assert on many to many until its implemented.

 gom/gom-adapter-sqlite.c | 3 +++
 1 file changed, 3 insertions(+)

commit 7198f9b9a6e6bdcd72cc6402233c91f11b965654
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Apr 7 19:16:30 2011 -0700

    Use class name for log domain

 gom/gom-adapter-sqlite.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e8de8117c1975e5bf0e59f2b893b92e8ba8e5ac2
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Apr 3 21:48:44 2011 -0700

    start on api for save/remove from collections

 gom/gom-collection.c | 35 ++++++++++++++++++++++++++++++++++-
 gom/gom-collection.h | 24 ++++++++++++++----------
 2 files changed, 48 insertions(+), 11 deletions(-)

commit 5216cacf7c6e78a804a7a70ae81789270e7dab90
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sat Apr 2 23:51:56 2011 -0700

    [sqlite] Only do pkey index if property is not serial.

 gom/gom-adapter-sqlite.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit c529fb3780f7ea628a1f7af954223ef6c3803fab
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sat Apr 2 23:34:39 2011 -0700

    [resource] Reference the primary condition in multi-condition results.

 gom/gom-resource.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 9762f8f620dd77e48347f3a92f3e75fd5095000d
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sat Apr 2 23:33:55 2011 -0700

    [condition] Reference right and left condition nodes.

 gom/gom-condition.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 8558badd9962feb3b7d86ed910f3805596c34c42
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sat Apr 2 23:33:08 2011 -0700

    [sqlite] Implement AND and OR conditions.

 gom/gom-adapter-sqlite.c | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

commit 8e2fbd6f4bee2f8a0f1e8a48177b4a64c1a1af85
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sat Apr 2 23:32:50 2011 -0700

    [sqlite] Delimit key name.
    
    This prevents us from coming up with keys like "foo_baz-id".

 gom/gom-adapter-sqlite.c | 1 +
 1 file changed, 1 insertion(+)

commit 288edbfd4055038be98b38ee8562069dc2518291
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sat Apr 2 23:05:52 2011 -0700

    [sqlite] Create <table>_pkey index so we can support multi-key tables.

 gom/gom-adapter-sqlite.c | 22 +++++++++++++++++++---
 1 file changed, 19 insertions(+), 3 deletions(-)

commit da5a308782fe6e200ae99d35c19ee08ba8c51995
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Apr 1 14:00:59 2011 -0700

    Fix building gtk test.

 tests/Makefile.include | 11 +++++++----
 tests/test-gom-gtk.c   |  1 +
 2 files changed, 8 insertions(+), 4 deletions(-)

commit a06b1f6e69d461a6fdd8c2d6228332daac8dc115
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Apr 1 00:33:20 2011 -0700

    Add API for asynchronous saving.
    
    However, this is still performed synchronously for now until we
    move adapters to job queues.

 configure.ac         |  1 +
 gom/Makefile.include |  4 +++-
 gom/gom-resource.c   | 38 ++++++++++++++++++++++++++++++++++++--
 gom/gom-resource.h   | 10 +++++++++-
 4 files changed, 49 insertions(+), 4 deletions(-)

commit 3734508860f7ad90b828bbdb8ed8fe3864b130e7
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Apr 1 00:21:48 2011 -0700

    Use CFLAGS in configure for warnings.

 Makefile.include | 24 ------------------------
 configure.ac     | 29 +++++++++++++++++++++++++----
 2 files changed, 25 insertions(+), 28 deletions(-)

commit 7f955b5821bd3510745c20f6b73aa52c4c193a26
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Apr 1 00:06:03 2011 -0700

    Move gom_clear_pointer() and gom_clear_object() to non-inline.
    
    They may be too large on some systems to inline anyway.
    Also, use memset() to avoid strict-aliasing problems.

 gom/gom-util.c | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-util.h | 33 +++-----------------------
 2 files changed, 76 insertions(+), 30 deletions(-)

commit f934a129dd1f048c828ea7046311bebef2be460e
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Apr 1 00:05:05 2011 -0700

    Make Gtk+ support optional.

 configure.ac           | 40 +++++++++++++++++++++++-----------------
 gom/Makefile.include   |  9 ++++++---
 gom/gom.h              |  1 -
 tests/Makefile.include |  8 +++++++-
 4 files changed, 36 insertions(+), 22 deletions(-)

commit 26aea962f1e621b8ae7903f57897226f620d0987
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Feb 24 19:48:55 2011 -0800

    Ensure table before read

 gom/gom-adapter-sqlite.c | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

commit aa8767307ac3f19a9ae68170a249b047bc647103
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Feb 24 19:19:41 2011 -0800

    Require gtk+-3.0 3.0.0

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4a79131b33a2bfcdbf3a78c7dc8e02319e8da730
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 01:59:15 2011 -0800

    We have to dup the string and free it since sqlite doesn't do that for us

 gom/gom-adapter-sqlite.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6df8a24be0c20e146f1bba6de31a27e5faaeb44e
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 01:58:42 2011 -0800

    Add ; to end of sql query

 gom/gom-adapter-sqlite.c | 2 ++
 1 file changed, 2 insertions(+)

commit bc506e9d4f6198bb4509896c3e998e46d340bce7
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 01:38:35 2011 -0800

    Simplify logic for building property list

 gom/gom-resource.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 949c066426e50124660615d8142b2a281c44072f
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 01:38:17 2011 -0800

    Delimit property names in update sql

 gom/gom-adapter-sqlite.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 5b096225b6bf1f70794fae98a3bea80aa652b812
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 01:38:01 2011 -0800

    Use G_LOG_DOMAIN

 gom/gom-adapter-sqlite.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit 907858c50667b2bc6b84e9c51856dcb8f875ad74
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 01:04:18 2011 -0800

    Remove unneeded variable

 gom/gom-adapter-sqlite.c | 2 --
 1 file changed, 2 deletions(-)

commit 306ef761637b3cc5bb7831a36d766f9334f2d334
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 01:04:07 2011 -0800

    Use G_LOG_DOMAIN.

 gom/gom-adapter-sqlite.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 435249ebe36a14d052eea5d1b73a984cbb690a27
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 01:03:52 2011 -0800

    Use get functions where it makes sense

 gom/gom-adapter-sqlite.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit a99461e20f59bf2f802d51b3fd05ec83bad6f5bb
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 00:45:54 2011 -0800

    Log when no result came from DB

 gom/gom-collection.c | 2 ++
 1 file changed, 2 insertions(+)

commit cbb1c1978c8fdbae663cb3505401f59e59eeda5c
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 00:39:28 2011 -0800

    Make "is-new" settable after construction.

 gom/gom-resource.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 63c08418b7198f80c491184445233dfaf9170e4b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 00:28:21 2011 -0800

    Change log domain

 gom/gom-adapter-sqlite.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit 500b0267d186c24a3ffe76c81d62a73ebffa2b25
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 00:26:06 2011 -0800

    Make gom_resource_get_condition() public

 gom/gom-resource.c | 2 +-
 gom/gom-resource.h | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit b6ec72c495bfaf540d18f784dae3b1926f8fc0d2
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 00:25:54 2011 -0800

    add a little more debugging to sqlite adapter

 gom/gom-adapter-sqlite.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

commit b94a45c5272854b978a12472af9333ad2f42a184
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 00:12:02 2011 -0800

    Work around properties that have - in them.

 gom/gom-adapter-sqlite.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit 5a7027f279873797f5b81212e5381e13ca067762
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 23 00:11:37 2011 -0800

    Link against libgom-1.0.

 data/gom-1.0.pc.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b5bb6ed5c776d6ccbe7c33ea2f20fc02400ce4c3
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 21:37:45 2011 -0800

    wrap iter_previous in gtk3 check

 gom/gom-list-store.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 27500318954c5165fa420c96be6d25083481f535
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 21:08:36 2011 -0800

    Add support for queries with offsets in list store

 gom/gom-list-store.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 2511c1efab49511a2c9896b60724eedb1006784d
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 21:01:47 2011 -0800

    Add support for queries with limits in list store

 gom/gom-list-store.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit be60b9fc33b4c047c3e637c9a18d371fb8f4f0cf
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 20:36:40 2011 -0800

    cleanup, try using fixed height/sizing

 tests/test-gom-gtk.c | 50 +++++++++++++++++++++++++++++++++-----------------
 1 file changed, 33 insertions(+), 17 deletions(-)

commit 323b94a85684a814e5010b2fcda5d98935c06ea1
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 20:36:30 2011 -0800

    Only retrieve field we care about

 gom/gom-list-store.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 31541500616323664b8e82fac56b77625765d0d9
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 20:22:00 2011 -0800

    Start on a GtkTreeModel implementation

 .gitignore                  |   1 +
 configure.ac                |   1 +
 gom/Makefile.include        |   8 +-
 gom/gom-enumerable-sqlite.c |   6 +-
 gom/gom-list-store.c        | 521 ++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-list-store.h        |  55 +++++
 gom/gom-private.h           |   4 -
 gom/gom-property-set.h      |   4 +
 gom/gom.h                   |   1 +
 tests/Makefile.include      |  23 +-
 tests/test-gom-gtk.c        |  91 ++++++++
 11 files changed, 707 insertions(+), 8 deletions(-)

commit c263bd6760f95f7a410977162ef9af76a4dd6cfa
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 17:56:38 2011 -0800

    Remove gom-util.h from gom.h

 gom/gom.h | 1 -
 1 file changed, 1 deletion(-)

commit 40a73cf193f207f23813344620bac443748d5dd5
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 17:53:23 2011 -0800

    Add unique test case

 tests/test-gom.c | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

commit 53daea9dd81a9f95de8951311367cab73a378b6d
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 11:09:16 2011 -0800

    Fix tests on -m slow

 tests/test-gom.c | 34 +++++++++++++++++++++++++++-------
 1 file changed, 27 insertions(+), 7 deletions(-)

commit 9f757122775eedc9a84142bd49e53e3634682e7a
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 11:09:06 2011 -0800

    Fix logic error

 gom/gom-collection.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2625a8a9693bd58df02a189a8e8512ef0100f2fc
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 00:18:14 2011 -0800

    recreate object from fields
    
    todo: eager fields

 gom/gom-resource.c | 36 ++++++++++++++++++++++++++++++++++--
 1 file changed, 34 insertions(+), 2 deletions(-)

commit 7cb397870bf3504d7246727d1d0ac12105398786
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 16 00:17:54 2011 -0800

    dont care about dirty status

 gom/gom-adapter-sqlite.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7e1caeff4e39ba0c1336b3453e4b5a444c3ba01b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 15 23:38:50 2011 -0800

    cleanup

 gom/gom-enumerable-sqlite.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 1690e1f4c06edd034e7f5428e0e7676af1a4b9da
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 15 23:35:38 2011 -0800

    Print error if needed

 gom/gom-resource.c | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

commit 33b8c6197c91f232e07a595ea3059728cab13083
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 15 23:17:31 2011 -0800

    Join work

 gom/gom-adapter-sqlite.c | 23 +++++++++++++++++++++++
 gom/gom-query.c          | 22 ++++++++++------------
 gom/gom-resource.c       |  2 +-
 3 files changed, 34 insertions(+), 13 deletions(-)

commit 644f0e224ca6375ced706db7c95a1ebb243a17aa
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 15 21:47:28 2011 -0800

    Add join property for joining a single relation

 gom/gom-query.c    | 37 ++++++++++++++++++++++++++++++++++++-
 gom/gom-resource.c |  9 ++++-----
 2 files changed, 40 insertions(+), 6 deletions(-)

commit 3b00e9bc0c1151d1eeb9fa52182927378df0b86b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 15 21:04:08 2011 -0800

    More work on related properties.

 gom/gom-resource.c | 54 +++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 49 insertions(+), 5 deletions(-)

commit 4aa2cf6c2362a823be9be93f59803e2b379f2930
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 15 20:15:56 2011 -0800

    Remove old comment

 gom/gom-resource.c | 7 -------
 1 file changed, 7 deletions(-)

commit 849e9d51a787d9e293843568c57f8c7e004634bf
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 15 20:10:56 2011 -0800

    Work towards lazy related resources

 gom/gom-adapter-sqlite.c |   9 +++++
 gom/gom-resource.c       | 100 +++++++++++++++++++++++++++++++++++++----------
 gom/gom-resource.h       |   1 -
 tests/test-gom.c         |  37 ++++++++++++++++++
 4 files changed, 126 insertions(+), 21 deletions(-)

commit d0d4568cdde87b64f39014223d9c2efd5d73b720
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 13 23:56:40 2011 -0800

    Add gom_resource_find_first()

 gom/gom-resource.c | 43 +++++++++++++++++++++++++++++++++++++++++++
 gom/gom-resource.h |  5 +++++
 tests/test-gom.c   | 29 +++++++++++++++++++++++++++++
 3 files changed, 77 insertions(+)

commit a9a35d2f5fb1c27ae64d841758a2092ad7eb4461
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 13 23:44:56 2011 -0800

    Update TODO

 TODO | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 3da6977a89b0032bdd7e6a21578aa2824897ffdf
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 13 23:42:10 2011 -0800

    Add property test to get_nth test case

 tests/test-gom.c | 2 ++
 1 file changed, 2 insertions(+)

commit 6cf59f24ac288621b66831c547ac750fbe6c9825
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 13 23:32:50 2011 -0800

    Ensure we aren't retrieving any GomResource or GomCollection fields

 gom/gom-adapter-sqlite.c | 41 ++++++++++++++++++++++++++++++++++++++---
 1 file changed, 38 insertions(+), 3 deletions(-)

commit bf4afa348cc615912bf926a24a87dc1e44d9c1f7
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 13 23:24:16 2011 -0800

    Add TODO

 TODO | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit cb1e8e49aaf5748e6567b278cbd93a4a663e1385
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Feb 10 01:59:08 2011 -0800

    Remove GomResourceClassMeta and store in GomResourceClass structure

 gom/gom-adapter-sqlite.c |  48 ++++----------
 gom/gom-resource.c       | 169 +++++++++++++++++++++++------------------------
 gom/gom-resource.h       |  11 ++-
 3 files changed, 100 insertions(+), 128 deletions(-)

commit cfb3ae65ddb02132d3ef521af0e68625746819e9
Author: Christian Hergert <chris@dronelabs.com>
Date:   Thu Feb 10 01:14:15 2011 -0800

    Make property set length a public, readonly field

 gom/gom-property-set.c | 108 +++++++++++++++++++++++++++----------------------
 gom/gom-property-set.h |   5 +++
 2 files changed, 64 insertions(+), 49 deletions(-)

commit a36a58f39ebd80398cc17a8f10cda3751c5863ce
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 21:53:57 2011 -0800

    Add more properties to unit tests

 tests/test-gom.c | 3 +++
 1 file changed, 3 insertions(+)

commit a797035f3c14bdfd19fce77917967e65298cf83b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 21:32:59 2011 -0800

    Read property from adapter if it hasn't been loaded

 gom/gom-resource.c | 99 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 tests/test-gom.c   |  3 +-
 2 files changed, 101 insertions(+), 1 deletion(-)

commit ba21b79786d2c601281da2e5488672a39220d59d
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:57:55 2011 -0800

    Add gom_collection_get_nth().

 gom/gom-collection.c | 45 +++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-collection.h |  2 ++
 tests/test-gom.c     | 43 +++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 90 insertions(+)

commit 7db68dffc278a9be8eab793ecf89ecaab9eaca92
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:57:29 2011 -0800

    LIMIT belongs before OFFSET

 gom/gom-adapter-sqlite.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit a5cb9f988593a92cbf653fa62c3b4c651786054c
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:47:26 2011 -0800

    Add slice tests

 tests/test-gom.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 8820af49be81c0b275640f2f3687b9a0e5d7a103
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:47:21 2011 -0800

    Cleanup

 gom/gom-property.h | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 2fd55a9ea4f8ff8fb21986dc97d21567368db5de
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:14:20 2011 -0800

    Implement first, last, count, and slice functions for GomCollection
    
     - gom_collection_first()
     - gom_collection_last()
     - gom_collection_slice()
     - gom_collection_count()

 gom/gom-collection.c | 250 +++++++++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-collection.h |   8 +-
 tests/test-gom.c     | 172 ++++++++++++++++++++++++++++++++++-
 3 files changed, 428 insertions(+), 2 deletions(-)

commit 8995bb78039161b5e69c3b43d9bf0db0dc82d3d8
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:13:22 2011 -0800

    Implement GomAdapter::read virtual function for GomAdapterSqlite

 gom/Makefile.include        |   2 +
 gom/gom-adapter-sqlite.c    | 137 +++++++++++++++++++++-
 gom/gom-enumerable-sqlite.c | 271 ++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-enumerable-sqlite.h |  57 ++++++++++
 4 files changed, 465 insertions(+), 2 deletions(-)

commit 8ace313d9a3080f533ccde25fde114b39ca8cd34
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:12:55 2011 -0800

    Implement gom_resource_find()

 gom/gom-resource.c | 67 +++++++++++++++++++++++++++++++-----------------------
 gom/gom-resource.h |  6 ++++-
 2 files changed, 44 insertions(+), 29 deletions(-)

commit 4af16ec6e20384551899756972949751a78999e3
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:12:24 2011 -0800

    Don't ref the property set.

 gom/gom-resource.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7356e8d32f340209eea16c7e8b947aa0d45b8879
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:12:15 2011 -0800

    Add documentation

 gom/gom-resource.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 075b8338bb585a776276c5de6e31a2ec31d25948
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:11:22 2011 -0800

    Remove GomEnumerableResource

 gom/Makefile.include          |   2 -
 gom/gom-enumerable-resource.c | 188 ------------------------------------------
 gom/gom-enumerable-resource.h |  57 -------------
 3 files changed, 247 deletions(-)

commit a98cafc62af1bdd9198f3a6f45ea45c7951672e5
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:11:02 2011 -0800

    Add GomCollection::adapter property

 gom/gom-collection.c | 24 +++++++++++++++++++++++-
 1 file changed, 23 insertions(+), 1 deletion(-)

commit e8ac65d57fa93d7d4d1ca1fc9722dd79d013e9e8
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:09:34 2011 -0800

    Use 'table'.'field' format for sqlite

 gom/gom-adapter-sqlite.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e356c4170672c980ccf01c5778a320aeecc79732
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:09:07 2011 -0800

    Set iter->enumerable for the subclasses

 gom/gom-enumerable.c | 5 +++++
 1 file changed, 5 insertions(+)

commit fd112671946aece587bd87c1b261f4b59f2820e2
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:08:35 2011 -0800

    Add translation functions for GDateTime

 gom/gom-resource.c | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 95 insertions(+)

commit d608f31b55ff5836436370eb4346387ba937cdbf
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:08:04 2011 -0800

    Add GomQuery::count-only and GomQuery::reverse properties

 gom/gom-query.c | 85 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 78 insertions(+), 7 deletions(-)

commit 35d7c2df0c1d27a414f64eb69f4047870459e126
Author: Christian Hergert <chris@dronelabs.com>
Date:   Wed Feb 9 20:07:41 2011 -0800

    Add gom_query_dup()

 gom/gom-query.c | 23 +++++++++++++++++++++++
 gom/gom-query.h |  5 +++--
 2 files changed, 26 insertions(+), 2 deletions(-)

commit b463b46817d671b897010d4b51b2efea46ea5b6e
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 8 21:51:26 2011 -0800

    Stub out required infrastructure for retrieving resources

 gom/Makefile.include          |   2 +
 gom/gom-adapter.h             |   4 +
 gom/gom-condition.c           |   2 +-
 gom/gom-condition.h           |   2 +-
 gom/gom-enumerable-resource.c | 188 ++++++++++++++++++++++++++++++++++++++++++
 gom/gom-enumerable-resource.h |  57 +++++++++++++
 gom/gom-resource.c            |  99 +++++++++++++++++++---
 gom/gom-resource.h            |   2 +-
 8 files changed, 343 insertions(+), 13 deletions(-)

commit c67ceb768ccabfc18f3df2378cd7822c29daffcf
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 8 21:16:16 2011 -0800

    stub out gom_adapter_read()

 gom/gom-adapter-sqlite.c | 41 +++++++++++++++++++++++++++++-----
 gom/gom-adapter.c        | 57 ++++++++++++++++++++++++++++++++++++++++++++----
 2 files changed, 89 insertions(+), 9 deletions(-)

commit d1dc6be33d8b932fde3bb3dfdfc17d0159710c96
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 8 21:15:58 2011 -0800

    header cleanup.

 gom/gom-resource.h | 105 +++++++++++++++++++++++++++--------------------------
 1 file changed, 53 insertions(+), 52 deletions(-)

commit 479040a1d564f8374a4ac5ebf186f08a84d30717
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 8 21:15:45 2011 -0800

    Move some code around

 gom/gom-resource.c | 66 +++++++++++++++++++++++++++---------------------------
 1 file changed, 33 insertions(+), 33 deletions(-)

commit b1f5f5757ef485e256aa823d60db31210e9a188d
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 8 03:09:26 2011 -0800

    Add gtk-docs for GomCondition.

 gom/gom-condition.c | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 67 insertions(+)

commit 67e2f06209063dc13cc2eb65ae7b35b3e250ec89
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 8 03:02:56 2011 -0800

    Add gtk-doc for GomEnumerableArray.

 gom/gom-enumerable-array.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit e896bdbe93f366856a4c739e1792fba644eec3dc
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 8 03:01:14 2011 -0800

    Make get_n_columns static.

 gom/gom-enumerable-array.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0b958d745de3c398ba17ba2c37092ced3ce80eb8
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 8 03:00:26 2011 -0800

    Add gtk-doc for GomPropertySet.

 gom/gom-property-set.c | 41 ++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 40 insertions(+), 1 deletion(-)

commit 113794f1c7d99f509b8d484b104c8c017d754ed5
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 8 02:56:22 2011 -0800

    Add GomAdapter gtk-docs

 gom/gom-adapter.c | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

commit 2cae3640d62f0c918653cd9182761af4e84eb9e0
Author: Christian Hergert <chris@dronelabs.com>
Date:   Tue Feb 8 02:44:07 2011 -0800

    Start implementing GomAdapter::update()

 gom/gom-adapter-sqlite.c | 141 ++++++++++++++++++++++++++++++++++++++++++++++-
 gom/gom-resource.c       | 104 +++++++++++++++++++++++++++++++++-
 2 files changed, 240 insertions(+), 5 deletions(-)

commit 0b7ee6c483338a059810ed4b81b9c7164dceb12a
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 22:10:58 2011 -0800

    Add gom_adapter_update() virtual function

 gom/gom-adapter.c | 11 +++++++++++
 gom/gom-adapter.h |  5 +++++
 2 files changed, 16 insertions(+)

commit 4056a1a4fdc28decef45b304531bd9a1e82dc94b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 22:10:36 2011 -0800

    Add gom_property_set_dup() to copy a property set
    
    This also adds gom_property_set_remove() as an
    internal function.

 gom/gom-private.h      |  6 ++++--
 gom/gom-property-set.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-property-set.h |  1 +
 3 files changed, 49 insertions(+), 2 deletions(-)

commit 6466e95fd1bafa722c731a09506276485dbb60b7
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 22:09:39 2011 -0800

    Add GOM_QUERY_DEFAULT default sort order
    
    We might want to consider renaming these to have "Sort" in the
    name. Such as:
    
      GOM_QUERY_SORT_DEFAULT
      GOM_QUERY_SORT_ASCENDING
      GOM_QUERY_SORT_DESCENDING

 gom/gom-query.c | 5 +++--
 gom/gom-query.h | 1 +
 2 files changed, 4 insertions(+), 2 deletions(-)

commit 3387c2f3b69c7854082b0bee7d92d162d8c2beb1
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 22:08:30 2011 -0800

    Cleanup

 gom/gom-resource.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 215df7f3d4c9009a463480590e96bcb3dca0e757
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 22:08:25 2011 -0800

    Add test case for updating a resource

 tests/test-gom.c | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

commit 453b4f9025344bc9c61409f39dad1a7a9c6e9768
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 22:07:58 2011 -0800

    Mark properties as clean after creating resource in sqlite

 gom/gom-adapter-sqlite.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

commit 71dcddf977cc751153d3934e4aa07ff3d6058345
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 18:52:53 2011 -0800

    Add test code to see how well GObject Introspection is working

 tests/test-py-gom.py     | 44 ++++++++++++++++++++++++++++++++++++++++++++
 tests/test-vala-gom.vala | 27 +++++++++++++++++++++++++++
 2 files changed, 71 insertions(+)

commit 8a14ce0dc397c8c30c6a535890dfb14d339b7466
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 18:52:20 2011 -0800

    Add GomResource::is-new.

 gom/gom-resource.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

commit c1fae53bde4000995a7b09bb4db7c87ee8a5a806
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 12:09:03 2011 -0800

    Add introspection.m4 for systems without gobject-introspection.

 build/m4/.gitignore       |  6 +++
 build/m4/introspection.m4 | 94 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 100 insertions(+)

commit 11b27d758d966e1bdfa95eea77e88b6352e48f62
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 11:13:35 2011 -0800

    Add missing m4 macros.

 .gitignore             |  1 -
 build/m4/expansions.m4 | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 build/m4/silent.m4     | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 96 insertions(+), 1 deletion(-)

commit 71acf1869490cd42cbf06716c04992352f40f97b
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 01:17:59 2011 -0800

    Build introspection files.

 .gitignore             |   2 +
 Makefile.introspection | 155 +++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac           |   2 +-
 gom/Makefile.include   |  21 +++++++
 4 files changed, 179 insertions(+), 1 deletion(-)

commit f8b23c6db6b8ecadb18def08e3e9d03ebd040d43
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 00:53:04 2011 -0800

    Only log sql if environment variable is set

 gom/gom-adapter-sqlite.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit fd0183a6ecb8a49d0f455cbf58e93611b986dd59
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 00:51:49 2011 -0800

    Re-enable assertions

 gom/gom-adapter-sqlite.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 1e74fa85437871bbc08199492275ba056940cd23
Author: Christian Hergert <chris@dronelabs.com>
Date:   Mon Feb 7 00:35:00 2011 -0800

    Make gom_resource_delete() work for the basic test case.

 gom/gom-adapter-sqlite.c | 83 ++++++++++++++++++++++++++++++++++++++++++++++--
 gom/gom-condition.c      |  4 +++
 tests/test-gom.c         | 11 +++----
 3 files changed, 90 insertions(+), 8 deletions(-)

commit df28c4d7e8fccd5a7de3cfe4352f72b0631a0c87
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 6 16:19:37 2011 -0800

    Incremental progress towards gom_resource_delete().

 gom/gom-adapter-sqlite.c | 74 +++++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-condition.c      | 48 +++++++++++++++++++++++++++++--
 gom/gom-condition.h      | 28 +++++++++++-------
 gom/gom-resource.c       | 75 ++++++++++++++++++++++++++++++++++++++++++++++++
 tests/test-gom.c         | 38 ++++++++++++++++++++++++
 5 files changed, 250 insertions(+), 13 deletions(-)

commit 8d400913e038820c51115c6fc033c7f874d591da
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 6 13:24:34 2011 -0800

    Check for sqlite3 using pkg-config

 configure.ac         | 1 +
 gom/Makefile.include | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

commit fc5383a541c9f85918de85e8920f9c9c635aeaa8
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 6 13:21:55 2011 -0800

    Set dependency libraries for test-gom

 tests/Makefile.include | 4 ++++
 1 file changed, 4 insertions(+)

commit 2ae7fe4ff31ff533e39ee877246e712521eaa2ae
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 6 13:19:45 2011 -0800

    Use non-recursive automake

 .gitignore                   |  27 ++++++-
 AUTHORS                      |   1 +
 COPYING                      | 165 +++++++++++++++++++++++++++++++++++++++++++
 ChangeLog                    |   5 ++
 Makefile                     |  83 ----------------------
 Makefile.am                  |  33 +++++++++
 Makefile.include             |  34 +++++++++
 Makefile.tests               |  57 +++++++++++++++
 NEWS                         |   0
 autogen.sh                   |  25 +++++++
 configure.ac                 | 126 +++++++++++++++++++++++++++++++++
 data/Makefile.include        |   3 +
 data/gom-1.0.pc.in           |  11 +++
 gom/Makefile.include         |  46 ++++++++++++
 gom/gom-resource.c           |   2 +-
 mock/mock-gender.c           |  39 ----------
 mock/mock-gender.h           |  41 -----------
 mock/mock-occupation.c       |  47 ------------
 mock/mock-occupation.h       |  55 ---------------
 mock/mock-person.c           |  59 ----------------
 mock/mock-person.h           |  55 ---------------
 tests/Makefile.include       |  29 ++++++++
 tests/mock/mock-gender.c     |  39 ++++++++++
 tests/mock/mock-gender.h     |  41 +++++++++++
 tests/mock/mock-occupation.c |  47 ++++++++++++
 tests/mock/mock-occupation.h |  55 +++++++++++++++
 tests/mock/mock-person.c     |  59 ++++++++++++++++
 tests/mock/mock-person.h     |  55 +++++++++++++++
 28 files changed, 856 insertions(+), 383 deletions(-)

commit bb207aba30b18d364b9dd220a17dc90d632c3f8e
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 6 12:31:20 2011 -0800

    Add GomCondition, to define the query conditions

 Makefile            |   3 +
 gom/gom-condition.c | 136 +++++++++++++++++++++++++++++++++++++++++++
 gom/gom-condition.h |  61 ++++++++++++++++++++
 gom/gom-query.c     | 163 ++++++++++++++++++++++++++++++++++++----------------
 gom/gom.h           |   1 +
 tests/test-gom.c    |  10 ++++
 6 files changed, 323 insertions(+), 51 deletions(-)

commit 35be3d1858ad397df3e65451d944c51f561241c2
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sun Feb 6 12:30:44 2011 -0800

    Add gom_property_set_findq().

 gom/gom-property-set.c | 9 ++++++++-
 gom/gom-property-set.h | 2 ++
 2 files changed, 10 insertions(+), 1 deletion(-)

commit 4305b44618b580b085ded2a550c049f7bcc59386
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sat Feb 5 19:59:23 2011 -0800

    Get started on implementing GomQuery

 gom/gom-property-set.c |  17 +++
 gom/gom-query.c        | 295 ++++++++++++++++++++++++++++++++++++++++---------
 tests/test-gom.c       |  35 ++++++
 3 files changed, 293 insertions(+), 54 deletions(-)

commit 3f356b4f434951322323dca3fe7405500426049c
Author: Christian Hergert <chris@dronelabs.com>
Date:   Sat Feb 5 01:43:01 2011 -0800

    Incremental work towards queries.

 Makefile                   |   1 +
 gom/gom-adapter.c          |   8 +++
 gom/gom-adapter.h          |  11 +--
 gom/gom-collection.c       |  76 ++++++++++++++++++++
 gom/gom-collection.h       |   2 -
 gom/gom-enumerable-array.c |   2 +-
 gom/gom-enumerable-array.h |   2 +-
 gom/gom-query.c            | 176 +++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-query.h            |  17 +++--
 9 files changed, 283 insertions(+), 12 deletions(-)

commit 407f06318bb2224a518c33a104e6b8d7931a0406
Author: Christian Hergert <chris@dronelabs.com>
Date:   Fri Feb 4 23:12:29 2011 -0800

    Initial commit.

 .gitignore                 |   5 +
 Makefile                   |  79 ++++
 README                     |  11 +
 gom/gom-adapter-sqlite.c   | 771 +++++++++++++++++++++++++++++++++++
 gom/gom-adapter-sqlite.h   |  79 ++++
 gom/gom-adapter.c          |  40 ++
 gom/gom-adapter.h          |  92 +++++
 gom/gom-collection.c       |  84 ++++
 gom/gom-collection.h       |  57 +++
 gom/gom-enumerable-array.c | 181 +++++++++
 gom/gom-enumerable-array.h |  60 +++
 gom/gom-enumerable.c       | 104 +++++
 gom/gom-enumerable.h       |  92 +++++
 gom/gom-private.h          |  35 ++
 gom/gom-property-set.c     | 225 +++++++++++
 gom/gom-property-set.h     |  48 +++
 gom/gom-property.h         |  53 +++
 gom/gom-query.h            |  55 +++
 gom/gom-relationship.h     |  44 ++
 gom/gom-resource-macros.h  |  77 ++++
 gom/gom-resource.c         | 985 +++++++++++++++++++++++++++++++++++++++++++++
 gom/gom-resource.h         | 124 ++++++
 gom/gom-util.h             |  59 +++
 gom/gom.h                  |  44 ++
 mock/mock-gender.c         |  39 ++
 mock/mock-gender.h         |  41 ++
 mock/mock-occupation.c     |  47 +++
 mock/mock-occupation.h     |  55 +++
 mock/mock-person.c         |  59 +++
 mock/mock-person.h         |  55 +++
 tests/test-gom.c           | 238 +++++++++++
 31 files changed, 3938 insertions(+)
