<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix.git/tests/store-database.scm, branch master</title>
<subtitle>Personal branch of https://git.savannah.gnu.org/cgit/guix.git/ for implementing 'guix deploy'.
</subtitle>
<id>https://www.git.jakob.space/guix.git/atom?h=master</id>
<link rel='self' href='https://www.git.jakob.space/guix.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/'/>
<updated>2018-07-20T13:01:33Z</updated>
<entry>
<title>database: Reset timestamps to one second after the Epoch.</title>
<updated>2018-07-20T13:01:33Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-07-20T12:49:34Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=e4752118691e41ae8307649d1abfd4739b3e4bfa'/>
<id>urn:sha1:e4752118691e41ae8307649d1abfd4739b3e4bfa</id>
<content type='text'>
Previously, store items registered in the database by this code (for
instance, store items retrieved by 'guix offload' and passed to
'restore-file-set') would have an mtime of 0 instead of 1.

This would cause problems for things like .go files: Guile would
consider them to be older than the corresponding .scm file, and
consequently it would ignore them and possibly use another (incorrect)
.go file.

Reported by Ricardo Wurmus.

* guix/store/database.scm (reset-timestamps): Pass 1, not 0, to
'utime'.
* tests/store-database.scm ("register-path"): Check the mtime of FILE
and REF.
</content>
</entry>
<entry>
<title>store: Remove 'register-path'.</title>
<updated>2018-06-14T09:17:00Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-06-08T08:56:19Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=df2f6400b1fbc282ef4d6dd7124ea1c17adc23c2'/>
<id>urn:sha1:df2f6400b1fbc282ef4d6dd7124ea1c17adc23c2</id>
<content type='text'>
* guix/store.scm (register-path): Remove.
* guix/nar.scm: Use (guix store database).
* guix/scripts/system.scm: Likewise.
* tests/store-database.scm: Remove #:hide (register-path).
* tests/store.scm ("register-path"): Remove.
</content>
</entry>
<entry>
<title>database: 'sqlite-register' takes a database, not a file name.</title>
<updated>2018-06-14T09:17:00Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-06-07T19:55:15Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=ef1297e8c74a0358d2538a5dd43d50cde7bf14a3'/>
<id>urn:sha1:ef1297e8c74a0358d2538a5dd43d50cde7bf14a3</id>
<content type='text'>
* guix/store/database.scm (sqlite-register): Remove #:db-file and add
'db' parameter.  Remove #:schema and 'parameterize'.
(register-path): Wrap 'sqlite-register' call in 'with-database' and in
'parameterize'.
* tests/store-database.scm ("new database")
("register-path with unregistered references"): Adjust accordingly.
</content>
</entry>
<entry>
<title>database: Fail registration when encountering unregistered references.</title>
<updated>2018-06-14T09:16:58Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-06-04T16:33:19Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=f8f9f7cabca3f0ea1f8b8cb4fecfc45889bdfb94'/>
<id>urn:sha1:f8f9f7cabca3f0ea1f8b8cb4fecfc45889bdfb94</id>
<content type='text'>
* guix/store/database.scm (add-reference-sql): Remove nested SELECT.
(add-references): Expect REFERENCES to be a list of ids.
(sqlite-register): Call 'path-id' for each of REFERENCES and pass it to
'add-references'.
* tests/store-database.scm ("register-path with unregistered references"):
New test.
</content>
</entry>
<entry>
<title>database: 'with-database' can now initialize new databases.</title>
<updated>2018-06-14T09:16:58Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-06-04T13:40:09Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=3931c76154d4f418d5ea9acc5e47bf911d371c24'/>
<id>urn:sha1:3931c76154d4f418d5ea9acc5e47bf911d371c24</id>
<content type='text'>
* nix/libstore/schema.sql: Rename to...
* guix/store/schema.sql: ... this.
* Makefile.am (nobase_dist_guilemodule_DATA): Add it.
* nix/local.mk (%D%/libstore/schema.sql.hh): Adjust accordingly.
* guix/store/database.scm (sql-schema): New variable.
(sqlite-exec, initialize-database, call-with-database): New procedures.
(with-database): Rewrite in terms of 'call-with-database'.
* tests/store-database.scm ("new database"): New test.
* guix/self.scm (compiled-guix)[*core-modules*]: Add 'schema.sql' to
 #:extra-files.
</content>
</entry>
<entry>
<title>Add (gnu store database).</title>
<updated>2018-06-01T13:35:32Z</updated>
<author>
<name>Caleb Ristvedt</name>
<email>caleb.ristvedt@cune.org</email>
</author>
<published>2018-05-27T17:19:30Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=7f9d184d9b688d13ce76eefabaddcfa76bdde2b5'/>
<id>urn:sha1:7f9d184d9b688d13ce76eefabaddcfa76bdde2b5</id>
<content type='text'>
* guix/config.scm.in (%store-database-directory): New variable.
* guix/store/database.scm: New file.
* tests/store-database.scm: New file.
* Makefile.am (STORE_MODULES): New variable.
(MODULES, MODULES_NOT_COMPILED): Adjust accordingly.
(SCM_TESTS) [HAVE_GUILE_SQLITE3]: Add tests/store-database.scm.

Co-authored-by: Ludovic Courtès &lt;ludo@gnu.org&gt;
</content>
</entry>
</feed>
