~ruther/guix-local

abebac46017f626f25b5c84bdcc1013c3d17632f — Ludovic Courtès 11 years ago 462a3fa
monads: Remove 'derivation-expression'.

* guix/monads.scm (lower-inputs, derivation-expression): Remove.
* tests/monads.scm (derivation-expression, "mlet* +
  derivation-expression"): Remove.
2 files changed, 0 insertions(+), 41 deletions(-)

M guix/monads.scm
M tests/monads.scm
M guix/monads.scm => guix/monads.scm +0 -20
@@ 389,26 389,6 @@ cross-compilation target triplet."
          (string-append out "/" file)
          out))))

(define (lower-inputs inputs)
  "Turn any package from INPUTS into a derivation; return the corresponding
input list as a monadic value."
  ;; XXX: This procedure is bound to disappear with 'derivation-expression'.
  (with-monad %store-monad
    (sequence %store-monad
              (map (match-lambda
                    ((name (? package? package) sub-drv ...)
                     (mlet %store-monad ((drv (package->derivation package)))
                       (return `(,name ,drv ,@sub-drv))))
                    ((name (? string? file))
                     (return `(,name ,file)))
                    (tuple
                     (return tuple)))
                   inputs))))

(define derivation-expression
  ;; XXX: This procedure is superseded by 'gexp->derivation'.
  (store-lift build-expression->derivation))

(define package->derivation
  (store-lift package-derivation))


M tests/monads.scm => tests/monads.scm +0 -21
@@ 156,27 156,6 @@
                      (call-with-input-file b get-string-all))))
    #:guile-for-build (package-derivation %store %bootstrap-guile)))

(define derivation-expression
  (@@ (guix monads) derivation-expression))

(test-assert "mlet* + derivation-expression"
  (run-with-store %store
    (mlet* %store-monad ((guile  (package-file %bootstrap-guile "bin/guile"))
                         (gdrv   (package->derivation %bootstrap-guile))
                         (exp -> `(let ((out (assoc-ref %outputs "out")))
                                    (mkdir out)
                                    (symlink ,guile
                                             (string-append out "/guile-rocks"))))
                         (drv    (derivation-expression "rocks" exp
                                                        #:inputs
                                                        `(("g" ,gdrv))))
                         (out -> (derivation->output-path drv))
                         (built? (built-derivations (list drv))))
      (return (and built?
                   (equal? guile
                           (readlink (string-append out "/guile-rocks"))))))
    #:guile-for-build (package-derivation %store %bootstrap-guile)))

(test-assert "mapm"
  (every (lambda (monad run)
           (with-monad monad