~ruther/guix-local

ref: 21e583def33ecf9e9bae3a18df875cd3380e14ec guix-local/tests/gexp.scm -rw-r--r-- 29.3 KiB
023dd28a — Ludovic Courtès 11 years ago
Merge branch 'master' into core-updates
d9ae938f — Ludovic Courtès 11 years ago
gexp: Add 'local-file'.

* guix/gexp.scm (<local-file>): New record type.
  (local-file): New procedure.
  (local-file-compiler): New compiler.
  (gexp->sexp) <struct? thing>: Handle the case where 'lower' returns a
  file name.
  (text-file*): Update docstring.local-file doc
* tests/gexp.scm ("one local file", "gexp->derivation, local-file"): New
  tests.
* doc/guix.texi (G-Expressions): Mention local files early.  Document
  'local-file'.  Update 'text-file*' documentation.
25d5b708 — Ludovic Courtès 11 years ago
Merge branch 'master' into core-updates
1123759b — Ludovic Courtès 11 years ago
gexp: Fix handling of nativeness in nested gexps.

* guix/gexp.scm (gexp-inputs): Remove 'references' parameter; add
  #:native? and honor it.
  [add-reference-inputs]: Distinguish between native gexp inputs, and
  non-native gexp inputs.  Honor 'native?' field of list inputs.
* tests/gexp.scm ("ungexp + ungexp-native, nested"): New test.
accb682c — Ludovic Courtès 11 years ago
gexp: Allow <gexp-input> objects in #:allowed-references.

* guix/gexp.scm (lower-references): Add <gexp-input> case.
* tests/gexp.scm ("gexp->derivation #:allowed-references, specific
  output"): New test.
381c540b — Ludovic Courtès 11 years ago
Merge branch 'master' into core-updates
a482cfdc — Ludovic Courtès 11 years ago
gexp: Remove special meaning of forms (PACKAGE OUTPUT) in ungexp.

* guix/gexp.scm (gexp-inputs)[add-reference-inputs]: Remove clause for
  inputs of the form (PACKAGE OUTPUT).
  (gexp->sexp)[reference->sexp]: Likewise.
* tests/gexp.scm ("input list splicing"): Change 'list' to 'gexp-input'
  for glibc:debug.
  ("text-file*"): Likewise for %bootstrap-guile:out.
  ("input list splicing + gexp-input + ungexp-native-splicing"): Remove,
  now redundant.
0dbea56b — Ludovic Courtès 11 years ago
gexp: Export 'gexp-input' constructor.

* guix/gexp.scm (<gexp-input>)[gexp-input]: Rename to...
  [%gexp-input]: ... this.  Adjust callers accordingly.
  (gexp-input): New procedure.
  (gexp-inputs)[add-reference-inputs]: When the input is a list, check
  whether each item is already 'gexp-input?' and to not rewrap those.
  (gexp-outputs)[add-reference-output]: Likewise.
  (gexp->sexp): Likewise.
* tests/gexp.scm ("input list splicing + gexp-input +
  ungexp-native-splicing"): New test.
1f976033 — Ludovic Courtès 11 years ago
tests: Add an indirection for white-box testing.

* tests/gexp.scm (gexp-inputs, gexp-native-inputs, gexp-outputs,
  gexp->sexp): Make an indirection, to facilitate live testing with
  Geiser.
12890625 — Ludovic Courtès 11 years ago
Merge branch 'core-updates'.
7e75a673 — Ludovic Courtès 11 years ago
gexp: Make sure 'gexp-outputs' removes duplicate outputs.

Fixes a regression introduced in f9efe56.

* guix/gexp.scm (gexp-outputs): Add call to 'delete-duplicates'.
* tests/gexp.scm ("output list, combined gexps, duplicate output"): New
  test.
f9efe568 — Ludovic Courtès 11 years ago
gexp: Aggregate outputs of compound gexps.

* guix/gexp.scm (gexp-outputs)[add-reference-output]: Recurse into
  lists.
* tests/gexp.scm ("output list + ungexp-splicing list, combined gexps"):
  New test.
4b23c466 — Ludovic Courtès 11 years ago
gexp: Add tests for 'gexp-outputs'.

* tests/gexp.scm (gexp-outputs): New procedure.
  ("output list", "output list, combined gexps"): New tests.
93be4e8e — Ludovic Courtès 11 years ago
Merge branch 'master' into core-updates
ce45eb4c — Ludovic Courtès 11 years ago
gexp: Add #:graft? parameter to 'gexp->derivation'.

* guix/gexp.scm (gexp->derivation): Add #:graft? parameter and honor it.
* tests/gexp.scm ("gexp->derivation vs. grafts"): New test.
* doc/guix.texi (G-Expressions): Update 'gexp->derivation'
  documentation.
aa72d9af — Ludovic Courtès 11 years ago
gexp: Implement 'imported-modules' & co. using 'gexp->derivation'.

* guix/derivations.scm (imported-files): Keep private.
  (%imported-modules, %compiled-modules, build-expression->derivation):
  Mark as deprecated.
  (imported-modules, compiled-modules): Remove.
* guix/gexp.scm (%mkdir-p-definition): New variable.
  (imported-files, search-path*, imported-modules, compiled-modules):
  New procedures.
* tests/derivations.scm ("imported-files"): Remove.
* tests/gexp.scm ("imported-files", "gexp->derivation #:modules"): New
  tests.
605217be — Ludovic Courtès 11 years ago
Merge branch 'master' into core-updates
c8351d9a — Ludovic Courtès 11 years ago
gexp: Add #:allowed-references parameter to 'gexp->derivation'.

* guix/gexp.scm (lower-references): New procedure.
  (gexp->derivation): Add #:allowed-references and honor it.
* tests/gexp.scm ("gexp->derivation #:allowed-references",
  "gexp->derivation #:allowed-references, disallowed"): New tests.
* doc/guix.texi (G-Expressions): Update 'gexp->derivation' doc.
a813710a — Mark H Weaver 11 years ago
Merge branch 'master' into core-updates
462a3fa3 — Ludovic Courtès 11 years ago
monads: Rewrite 'text-file*' using gexps.

* guix/monads.scm (text-file*): Move to...
* guix/gexp.scm (text-file*): ... here.  Rewrite using gexps.
* tests/monads.scm ("text-file*"): Move to...
* tests/gexp.scm ("text-file*"): ... here.
Next