~ruther/guix-local

ref: e4bed284ae0fa5aebba8be71757a1e44903ffe13 guix-local/tests d---------
834ea02a — Ludovic Courtès 11 years ago
tests: When a store item is to be deleted, make it statistically unique.

Fixes <http://bugs.gnu.org/18935>.
Reported by Mark H Weaver <mhw@netris.org>.

Previously, if tests/nar.scm ran concurrently with tests/gexp.scm, the
store item "foo" containing the string "Hello, world!" could be
deleted (via 'delete-paths') from the tests/nar.scm daemon while the
tests/gexp.scm daemon would still consider it live.

* tests/nar.scm ("restore-file-set (missing signature)"):
  Use (random-text) rather than "Hello, world!", to avoid concurrent
  deletion of store item "foo" used in tests/gexp.scm.
000c59b6 — Ludovic Courtès 11 years ago
store: Invalidate caches once GC has run.

* guix/store.scm (run-gc): Add calls to 'hash-clear!'.
* tests/store.scm ("add-text-to-store vs. delete-paths",
  "add-to-store vs. delete-paths"): New tests.
c37a74bd — Ludovic Courtès 11 years ago
packages: 'package-transitive-supported-systems' accounts for indirect deps.

Reported by Andreas Enge <andreas@enge.fr>.

* guix/packages.scm (first-value): New macro.
  (package-transitive-supported-systems): Rewrite to traverse all the
  DAG rooted at PACKAGE.
* tests/packages.scm ("package-transitive-supported-systems"): Add 'd'
  and 'e', and test them.
05962f29 — Ludovic Courtès 11 years ago
packages: Implement grafts.

Thanks to Mark H. Weaver <mhw@netris.org> for insightful discussions
and suggestions.

* guix/packages.scm (<package>)[graft]: New field.
  (patch-and-repack): Invoke 'package-derivation' with #:graft? #f.
  (package-source-derivation): Likewise.  Do not use (%guile-for-build)
  in call to 'patch-and-repack', and we could end up using a grafted
  Guile.
  (expand-input): Likewise, also for 'package-cross-derivation' call.
  (package->bag): Add #:graft? parameter.  Honor it.  Use 'strip-append'
  instead of 'package-full-name'.
  (input-graft, input-cross-graft, bag-grafts, package-grafts): New
  procedures.
  (package-derivation, package-cross-derivation): Add #:graft? parameter
  and honor it.
* gnu/packages/bootstrap.scm (package-with-bootstrap-guile): Add
  recursive call on 'graft'.
* guix/build-system/gnu.scm (package-with-explicit-inputs,
  package-with-extra-configure-variable, static-package): Likewise.
  (gnu-build): Use the ungrafted Guile to avoid full rebuilds.
  (gnu-cross-build): Likewise.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Likewise.
* guix/build-system/perl.scm (perl-build): Likewise.
* guix/build-system/python.scm (python-build): Likewise.
* guix/build-system/ruby.scm (ruby-build): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Likewise.
* tests/packages.scm ("package-derivation, direct graft",
  "package-cross-derivation, direct graft", "package-grafts,
  indirect grafts", "package-grafts, indirect grafts, cross",
  "package-grafts, indirect grafts, propagated inputs",
  "package-derivation, indirect grafts"): New tests.
  ("bag->derivation", "bag->derivation, cross-compilation"): Wrap in
  'parameterize'.
* doc/guix.texi (Security Updates): New node.
  (Invoking guix build): Document --no-graft.
50373bab — Ludovic Courtès 11 years ago
packages: Add 'package->bag' test for propagated inputs.

* tests/packages.scm ("package->bag, propagated inputs"): New test.
e786293e — Ludovic Courtès 11 years ago
derivations: Add 'derivation-name'.

* guix/derivations.scm (derivation-name): New procedure.
* tests/derivations.scm ("derivation-name"): New test.
d2d0514b — Ludovic Courtès 11 years ago
derivations: Fix 'derivation-prerequisites-to-build' when #:local-build?.

* guix/derivations.scm (derivation-prerequisites-to-build)[derivation-substitutable?]:
  Call 'substitutable-derivation?'.
  <body>: When 'substitutable-derivation?' returns #f, add DRV to BUILD.
e6740741 — Ludovic Courtès 11 years ago
tests: Move some of the narinfo test tools to (guix tests).

* guix/tests.scm (derivation-narinfo, call-with-derivation-narinfo): New
  procedures.
  (with-derivation-narinfo): New macro.
* tests/derivations.scm ("derivation-prerequisites-to-build and
  substitutes"): Use them.
fc93e309 — Ludovic Courtès 11 years ago
derivations: Add 'offloadable-derivation?' and 'substitutable-derivation?'.

* guix/derivations.scm (offloadable-derivation?,
  substitutable-derivation?): New procedures.
* tests/derivations.scm ("offloadable-derivation?"): New test.
791e0126 — Eric Bavier 11 years ago
build: Adjust lint tests for latest rules.

* tests/guix-lint.sh (dummy)[description]: Add failing case.
  [doc]: Adjust.
3c42965b — Eric Bavier 11 years ago
guix: lint: Make exception for package name starting description.

* guix/scripts/lint.scm (check-description-style): Exception for
  upper-case rule if the description starts with the package name.
* tests/lint.scm: Test it.
903581f9 — Eric Bavier 11 years ago
guix: lint: Allow digits at start of synopsis or description.

* guix/scripts/lint.scm (start-with-capital-letter?): Rename too...
  (properly-starts-sentence?): Rewrite with regex and add digits.
  (check-description-style, check-synopsis-style): Use it.
* tests/lint.scm: Add tests.
334c43e3 — Eric Bavier 11 years ago
guix: lint: Check for empty synopses and descriptions.

* guix/scripts/lint.scm (check-description-style,
  check-synopsis-style): New emptiness checks.
* tests/lint.scm: Test them.
574e847b — Eric Bavier 11 years ago
guix: lint: Check for proper end-of-sentence space.

* guix/scripts/lint.scm (start-with-capital-letter?): Handle empty
  strings.
  (check-description-style): New check for end-of-sentence space.
* tests/lint.scm: Test it.
7c3c0374 — Ludovic Courtès 11 years ago
packages: Add 'package-transitive-supported-systems'.

* guix/packages.scm (package-transitive-supported-systems): New procedure.
* tests/packages.scm ("package-transitive-supported-systems"): New test.
* build-aux/hydra/gnu-system.scm (package->job): Use it.
969df974 — Ludovic Courtès 11 years ago
derivations: Introduce 'graft' record type.

* guix/derivations.scm (<graft>): New record type.
  (graft-derivation): Rename 'replacements' to 'grafts', and expect it
  to be a list of <graft> records.  Adjust accordingly.
* tests/derivations.scm ("graft-derivation"): Use 'graft' instead of
  pairs in argument to 'graft-derivation'.
dd7c013d — Cyril Roelandt 11 years ago
guix lint: add the --checkers option.

* guix/scripts/lint.scm: add the "--checkers" option.
* doc/guix.texi (Invoking guix lint): Document it.
* tests/guix-lint.sh: New file
* Makefile.am (SCM_TESTS): Add it.
b3bb82f1 — Alex Kost 11 years ago
guix package: Add '--switch-generation' option.

* guix/scripts/package.scm (switch-to-generation): New procedure.
  (switch-to-previous-generation): Use it.
  (guix-package): Adjust for '--switch-generation' option.
* tests/guix-package.sh: Test it.
* doc/guix.texi (Invoking guix package): Document it.
2793c0fb — Ludovic Courtès 11 years ago
syscalls: Accept ENOENT in the 'swapoff' test.

Fixes <http://bugs.gnu.org/18690>.
Reported by Philip Woods <elzairthesorcerer@gmail.com>.

* tests/syscalls.scm ("swapoff, EINVAL/EPERM"): Rename to...
  ("swapoff, ENOENT/EINVAL/EPERM"): ... this.  Add ENOENT to the list of
  possible return values.
e25234e3 — Ludovic Courtès 11 years ago
build: Make sure tests/guix-package.sh doesn't leave anything behind it.

Fixes a regression introduced in commit 300868ba.

* tests/guix-package.sh: Move 'module_dir' definition to the top, and
  "rm -rf" it from the top-most 'trap'.  Remove second use of 'trap'.
Next