<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix.git/tests/monads.scm, branch merge-deploy</title>
<subtitle>Personal branch of https://git.savannah.gnu.org/cgit/guix.git/ for implementing 'guix deploy'.
</subtitle>
<id>https://git.jakob.space/guix.git/atom?h=merge-deploy</id>
<link rel='self' href='https://git.jakob.space/guix.git/atom?h=merge-deploy'/>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/'/>
<updated>2016-04-03T12:19:09Z</updated>
<entry>
<title>build: Add a Guile custom test driver using SRFI-64.</title>
<updated>2016-04-03T12:19:09Z</updated>
<author>
<name>Mathieu Lirzin</name>
<email>mthl@gnu.org</email>
</author>
<published>2015-10-26T22:47:24Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=a9edb211e733b8b34e67ec3b4450567e9376986f'/>
<id>urn:sha1:a9edb211e733b8b34e67ec3b4450567e9376986f</id>
<content type='text'>
Before that '.log' files for scheme tests were fragmented and not
included in test-suite.log.  This unifies the semantics of SRFI-64 API
with Automake test suite.

* build-aux/test-driver.scm: New file.
* Makefile.am (SCM_LOG_DRIVER, AM_SCM_LOG_DRIVER_FLAGS): New variables.
(SCM_LOG_COMPILER, AM_SCM_LOG_FLAGS): Delete variables.
(AM_TESTS_ENVIRONMENT): Set GUILE_AUTO_COMPILE to 0.
* test-env.in: Silence guix-daemon.
* doc/guix.texi (Running the Test Suite): Describe how to display the
detailed results.  Bug reports require only 'test-suite.log' file.
* tests/base32.scm, tests/build-utils.scm, tests/builders.scm,
tests/challenge.scm, tests/cpan.scm, tests/cpio.scm, tests/cran.scm,
tests/cve.scm, tests/derivations.scm, tests/elpa.scm,
tests/file-systems.scm, tests/gem.scm, tests/gexp.scm,
tests/gnu-maintenance.scm, tests/grafts.scm, tests/graph.scm,
tests/gremlin.scm, tests/hackage.scm, tests/hash.scm,
tests/import-utils.scm, tests/lint.scm, tests/monads.scm, tests/nar.scm,
tests/packages.scm, tests/pk-crypto.scm, tests/pki.scm,
tests/profiles.scm, tests/publish.scm, tests/pypi.scm,
tests/records.scm, tests/scripts-build.scm, tests/scripts.scm,
tests/services.scm, tests/sets.scm, tests/size.scm, tests/snix.scm,
tests/store.scm, tests/substitute.scm, tests/syscalls.scm,
tests/system.scm, tests/ui.scm, tests/union.scm, tests/upstream.scm,
tests/utils.scm: Don't exit at the end of test groups.
* tests/containers.scm: Likewise.  Use 'test-skip' instead of exiting
with error code 77.
</content>
</entry>
<entry>
<title>tests: Disable grafting by default for most tests.</title>
<updated>2016-03-06T22:16:35Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2016-03-06T20:53:28Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=ef8de9852eeb9f9ce8e01a2a4f60a057b890b94a'/>
<id>urn:sha1:ef8de9852eeb9f9ce8e01a2a4f60a057b890b94a</id>
<content type='text'>
This allows tests to run as expected even in the presence of
replacements among the bootstrap packages, such as Perl (commit
d8173f21f7b4e3cb83541b8fa70621d2b6d4ce1c).

* tests/cpan.scm: Add (%graft? #f).
* tests/derivations.scm: Likewise.
* tests/graph.scm: Likewise.
* tests/monads.scm: Likewise.
* tests/profiles.scm: Likewise.
* tests/gexp.scm: Likewise.
("gexp-&gt;derivation vs. grafts"): Explicitly reenable grafting before,
and disable it after, using 'set-grafting'.
</content>
</entry>
<entry>
<title>monads: Fix 'liftN' fallback case.</title>
<updated>2015-09-04T16:31:06Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2015-09-04T16:31:06Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=dbbc248aeef1bc3b5d76268782acff43e9d71d57'/>
<id>urn:sha1:dbbc248aeef1bc3b5d76268782acff43e9d71d57</id>
<content type='text'>
Reported by Andy Wingo &lt;wingo@igalia.com&gt;.

* guix/monads.scm (define-lift) &lt;fallback case&gt;: Add missing #'.  Remove
  extra formal parameter.
* tests/monads.scm ("lift"): Add test with 'lift1' as a procedure.
</content>
</entry>
<entry>
<title>monads: Allow n-ary '&gt;&gt;=' expressions.</title>
<updated>2015-06-08T21:00:49Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2015-06-08T20:49:50Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=751630c9c3f7f3e87dfccc5f5ba8cf61cdd6f8fd'/>
<id>urn:sha1:751630c9c3f7f3e87dfccc5f5ba8cf61cdd6f8fd</id>
<content type='text'>
Suggested by Federico Beffa &lt;beffa@fbengineering.ch&gt;.

* guix/monads.scm (bind-syntax): New macro.
  (with-monad): Use it instead of 'identifier-syntax'.
* tests/monads.scm ("&gt;&gt;= with more than two arguments"): New test.
* doc/guix.texi (The Store Monad): Explain that there can be several MPROC.
  Add an example.
</content>
</entry>
<entry>
<title>monads: 'foldm', 'mapm', and 'anym' now take a list of regular values.</title>
<updated>2015-05-27T07:44:43Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2015-05-27T07:40:19Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=b734996f9cf395705860703422d5e92565dd3a13'/>
<id>urn:sha1:b734996f9cf395705860703422d5e92565dd3a13</id>
<content type='text'>
* guix/monads.scm (foldm, mapm, anym): Change to take a list of regular
  values as is customary.
* tests/monads.scm ("mapm", "anym"): Adjust accordingly.
</content>
</entry>
<entry>
<title>monads: Add the state monad.</title>
<updated>2015-01-17T22:45:48Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2015-01-17T17:46:41Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=81a97734e04fa40412b2d44ccfae1b4796257648'/>
<id>urn:sha1:81a97734e04fa40412b2d44ccfae1b4796257648</id>
<content type='text'>
* guix/monads.scm (state-return, state-bind, run-with-state,
  current-state, set-current-state, state-push, state-pop): New
  procedures.
  (%state-monad): New variable.
* tests/monads.scm (%monads): Add %STATE-MONAD.
  (%monad-run): Add 'run-with-state'.
  (values-&gt;list): New macro.
  ("set-current-state", "state-push etc."): New tests.
</content>
</entry>
<entry>
<title>monads: Move '%store-monad' and related procedures where they belong.</title>
<updated>2015-01-14T12:34:52Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2015-01-14T12:34:52Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=e87f0591f3117ed61285f33c7cc3548f72e551ad'/>
<id>urn:sha1:e87f0591f3117ed61285f33c7cc3548f72e551ad</id>
<content type='text'>
This turns (guix monads) into a generic module for monads, and moves the
store monad and related monadic procedures in their corresponding
module.

* guix/monads.scm (store-return, store-bind, %store-monad, store-lift,
  text-file, interned-file, package-file, package-&gt;derivation,
  package-&gt;cross-derivation, origin-&gt;derivation, imported-modules,
  compiled, modules, built-derivations, run-with-store): Move to...
* guix/store.scm (store-return, store-bind, %store-monad, store-lift,
  text-file, interned-file): ... here.
  (%guile-for-build): New variable.
  (run-with-store): Moved from monads.scm.  Remove default value for
  #:guile-for-build.
* guix/packages.scm (default-guile): Export.
  (set-guile-for-build): New procedure.
  (package-file, package-&gt;derivation, package-&gt;cross-derivation,
  origin-&gt;derivation): Moved from monads.scm.
* guix/derivations.scm (%guile-for-build): Remove.
  (imported-modules): Rename to...
  (%imported-modules): ... this.
  (compiled-modules): Rename to...
  (%compiled-modules): ... this.
  (built-derivations, imported-modules, compiled-modules): New
  procedures.
* gnu/services/avahi.scm, gnu/services/base.scm, gnu/services/dbus.scm,
  gnu/services/dmd.scm, gnu/services/networking.scm,
  gnu/services/ssh.scm, gnu/services/xorg.scm, gnu/system/install.scm,
  gnu/system/linux-initrd.scm, gnu/system/shadow.scm, guix/download.scm,
  guix/gexp.scm, guix/git-download.scm, guix/profiles.scm,
  guix/svn-download.scm, tests/monads.scm: Adjust imports accordingly.
* guix/monad-repl.scm (default-guile-derivation): New procedure.
  (store-monad-language, run-in-store): Use it.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Add explicit
  'set-guile-for-build' call.
* guix/scripts/archive.scm (derivation-from-expression): Likewise.
* guix/scripts/build.scm (options/resolve-packages): Likewise.
* guix/scripts/environment.scm (guix-environment): Likewise.
* guix/scripts/system.scm (guix-system): Likewise.
* doc/guix.texi (The Store Monad): Adjust module names accordingly.
</content>
</entry>
<entry>
<title>monads: Remove 'derivation-expression'.</title>
<updated>2015-01-12T22:33:08Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2015-01-12T22:32:34Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=abebac46017f626f25b5c84bdcc1013c3d17632f'/>
<id>urn:sha1:abebac46017f626f25b5c84bdcc1013c3d17632f</id>
<content type='text'>
* guix/monads.scm (lower-inputs, derivation-expression): Remove.
* tests/monads.scm (derivation-expression, "mlet* +
  derivation-expression"): Remove.
</content>
</entry>
<entry>
<title>monads: Rewrite 'text-file*' using gexps.</title>
<updated>2015-01-12T22:33:08Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2015-01-12T22:26:52Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=462a3fa36cddeb683df765b2982f76712f6c40f0'/>
<id>urn:sha1:462a3fa36cddeb683df765b2982f76712f6c40f0</id>
<content type='text'>
* 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.
</content>
</entry>
<entry>
<title>monads: Add 'mbegin'.</title>
<updated>2014-10-08T21:35:20Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2014-10-08T21:35:08Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=405a9d4ec9806993a6453f0dfba78fc65d5e7993'/>
<id>urn:sha1:405a9d4ec9806993a6453f0dfba78fc65d5e7993</id>
<content type='text'>
* guix/monads.scm (mbegin): New macro.
* tests/monads.scm ("mbegin"): New test.
* doc/guix.texi (The Store Monad): Document it.
</content>
</entry>
</feed>
