[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
14/16: database: Remove 'register-path'.
From: |
guix-commits |
Subject: |
14/16: database: Remove 'register-path'. |
Date: |
Tue, 15 Dec 2020 11:33:01 -0500 (EST) |
civodul pushed a commit to branch master
in repository guix.
commit 3169c93903c20cea000335d59560eac7f28e8f92
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Fri Dec 11 14:46:20 2020 +0100
database: Remove 'register-path'.
* guix/store/database.scm (register-path): Remove.
* tests/store-database.scm ("register-path"): Rename to...
("register-items"): ... this, and use 'register-items' instead of
'register-path'.
("register-path, directory"): Rename to...
("register-items, directory"): ... this, and use 'register-items'
instead of 'register-path'.
("register-path with unregistered references"): Rename to...
("sqlite-register with unregistered references"): ... this.
---
guix/store/database.scm | 27 ---------------------------
tests/store-database.scm | 15 ++++++++-------
2 files changed, 8 insertions(+), 34 deletions(-)
diff --git a/guix/store/database.scm b/guix/store/database.scm
index 9d5bc53..4579b05 100644
--- a/guix/store/database.scm
+++ b/guix/store/database.scm
@@ -43,7 +43,6 @@
with-database
path-id
sqlite-register
- register-path
register-items
%epoch
reset-timestamps))
@@ -383,32 +382,6 @@ is true."
(chmod file (if (executable-file? file) #o555 #o444)))
(utime file 1 1 0 0)))))
-(define* (register-path path
- #:key (references '()) deriver prefix
- state-directory
- (schema (sql-schema)))
- "Register PATH as a valid store file, with REFERENCES as its list of
-references, and DERIVER as its deriver (.drv that led to it.) If PREFIX is
-given, it must be the name of the directory containing the new store to
-initialize; if STATE-DIRECTORY is given, it must be a string containing the
-absolute file name to the state directory of the store being initialized.
-Return #t on success.
-
-Use with care as it directly modifies the store! This is primarily meant to
-be used internally by the daemon's build hook.
-
-PATH must be protected from GC and locked during execution of this, typically
-by adding it as a temp-root."
- (define db-file
- (store-database-file #:prefix prefix
- #:state-directory state-directory))
-
- (parameterize ((sql-schema schema))
- (with-database db-file db
- (register-items db (list (store-info path deriver references))
- #:prefix prefix
- #:log-port (%make-void-port "w")))))
-
(define %epoch
;; When it all began.
(make-time time-utc 0 1))
diff --git a/tests/store-database.scm b/tests/store-database.scm
index 33fd6cf..17eea38 100644
--- a/tests/store-database.scm
+++ b/tests/store-database.scm
@@ -20,6 +20,7 @@
#:use-module (guix tests)
#:use-module (guix store)
#:use-module (guix store database)
+ #:use-module (guix build store-copy)
#:use-module ((guix utils) #:select (call-with-temporary-output-file))
#:use-module ((guix build utils)
#:select (mkdir-p delete-file-recursively))
@@ -34,7 +35,7 @@
(test-begin "store-database")
-(test-assert "register-path"
+(test-assert "register-items"
(let ((file (string-append (%store-prefix) "/" (make-string 32 #\f)
"-fake")))
(when (valid-path? %store file)
@@ -46,9 +47,8 @@
(call-with-output-file file
(cut display "This is a fake store item.\n" <>))
(reset-timestamps file)
- (register-path file
- #:references (list ref)
- #:deriver drv)
+ (with-database (store-database-file) db
+ (register-items db (list (store-info file drv (list ref)))))
(and (valid-path? %store file)
(equal? (references %store file) (list ref))
@@ -57,7 +57,7 @@
(list (stat:mtime (lstat file))
(stat:mtime (lstat ref)))))))
-(test-equal "register-path, directory"
+(test-equal "register-items, directory"
'(1 1 1)
(let ((file (string-append (%store-prefix) "/" (make-string 32 #\f)
"-fake-directory")))
@@ -70,7 +70,8 @@
(call-with-output-file (string-append file "/a/b")
(const #t))
(reset-timestamps file)
- (register-path file #:deriver drv)
+ (with-database (store-database-file) db
+ (register-items db (list (store-info file drv '()))))
(and (valid-path? %store file)
(null? (references %store file))
@@ -102,7 +103,7 @@
(list (path-id db "/gnu/foo")
(path-id db "/gnu/bar")))))))
-(test-assert "register-path with unregistered references"
+(test-assert "sqlite-register with unregistered references"
;; Make sure we get a "NOT NULL constraint failed: Refs.reference" error
;; when we try to add references that are not registered yet. Better safe
;; than sorry.
- 10/16: database: Remove #:deduplicate? from 'register-items'., (continued)
- 10/16: database: Remove #:deduplicate? from 'register-items'., guix-commits, 2020/12/15
- 06/16: image: 'register-closure' assumes already-reset timestamps., guix-commits, 2020/12/15
- 12/16: database: Remove #:deduplicate? and #:reset-timestamps? from 'register-path'., guix-commits, 2020/12/15
- 08/16: store-copy: 'populate-store' can optionally deduplicate files., guix-commits, 2020/12/15
- 04/16: nar: Deduplicate files right as they are restored., guix-commits, 2020/12/15
- 16/16: deduplicate: Create the '.links' directory lazily., guix-commits, 2020/12/15
- 05/16: store-copy: 'populate-store' resets timestamps., guix-commits, 2020/12/15
- 09/16: image: 'register-closure' leaves it up to the caller to deduplicate., guix-commits, 2020/12/15
- 15/16: database: Honor 'SOURCE_DATE_EPOCH'., guix-commits, 2020/12/15
- 13/16: system: 'init' does not recompute the hash of each store item., guix-commits, 2020/12/15
- 14/16: database: Remove 'register-path'.,
guix-commits <=
- 11/16: guix system: 'init' copies, resets timestamps, and deduplicates at once., guix-commits, 2020/12/15