<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix.git/tests/channels.scm, branch wip-deploy</title>
<subtitle>Personal branch of https://git.savannah.gnu.org/cgit/guix.git/ for implementing 'guix deploy'.
</subtitle>
<id>https://www.git.jakob.space/guix.git/atom?h=wip-deploy</id>
<link rel='self' href='https://www.git.jakob.space/guix.git/atom?h=wip-deploy'/>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/'/>
<updated>2019-07-19T09:53:47Z</updated>
<entry>
<title>channels: Always provide a &lt;channel-metadata&gt; record.</title>
<updated>2019-07-19T09:53:47Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-07-16T22:41:10Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=ce5d9ec875156f3de7479e861731edf48c984c16'/>
<id>urn:sha1:ce5d9ec875156f3de7479e861731edf48c984c16</id>
<content type='text'>
This simplifies the code since one no longer needs to think about
whether '.guix-channel' was present.

* guix/channels.scm (read-channel-metadata): Always pass a string as the
first argument to 'channel-metadata'.
(read-channel-metadata-from-source): Always return a &lt;channel-metadata&gt;
record.
(channel-instance-dependencies): Remove now unneeded 'match'.
(standard-module-derivation): Assume DIRECTORY is never #f and contains
a leading slash.
* tests/channels.scm (channel-metadata-directory)
(channel-metadata-dependencies): New procedures.
("channel-instance-metadata returns #f if .guix-channel does not
exist"): Remove.
("channel-instance-metadata returns default if .guix-channel does not
exist"): New test.
(make-instance): Use 'write' instead of 'display' when creating
'.guix-channel'.
(instance--no-deps): Remove dependencies.
(instance--sub-directory): New variable.
("channel-instance-metadata and default dependencies")
("channel-instance-metadata and directory"): New tests.
("latest-channel-instances excludes duplicate channel dependencies"):
Expect 'channel-commit' to return a string and adjust accordingly.
</content>
</entry>
<entry>
<title>channels: Strictly check the version of '.guix-channel'.</title>
<updated>2019-07-19T09:53:47Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-07-16T22:04:41Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=45b903323e0fecb7947926d2c14103d47fea624a'/>
<id>urn:sha1:45b903323e0fecb7947926d2c14103d47fea624a</id>
<content type='text'>
Until now the 'version' field in '.guix-channel' could be omitted, or it
could be any value.

* guix/channels.scm (read-channel-metadata): Rename to...
(channel-instance-metadata): ... this.
(channel-instance-dependencies): Adjust accordingly.
(read-channel-metadata): New procedure.  Use 'match'
to require a 'version' field.  Provide proper error handling when the
channel sexp is malformed or when given an unsupported version number.
(read-channel-metadata-from-source): Use 'catch' and
'system-error-errno' instead of 'file-exists?'.
* tests/channels.scm (instance--unsupported-version): New variable.
(read-channel-metadata): Rename to...
(channel-instance-metadata): ... this.  Rename tests accordingly.
("channel-instance-metadata rejects unsupported version"): New test.
</content>
</entry>
<entry>
<title>inferior: 'gexp-&gt;derivation-in-inferior' honors EXP's load path.</title>
<updated>2019-01-20T16:57:14Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-01-18T09:01:37Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=1fafc383b1f04fcdaa49941f5bb64ac3008cfad8'/>
<id>urn:sha1:1fafc383b1f04fcdaa49941f5bb64ac3008cfad8</id>
<content type='text'>
Previously the imported modules and extensions of EXP would be missing
from the load path of 'guix repl'.

* guix/inferior.scm (gexp-&gt;derivation-in-inferior)[script]: New
variable.
[trampoline]: Write (primitive-load #$script) to PIPE.  Add #$output.
* tests/channels.scm ("channel-instances-&gt;manifest")[depends?]: Check
for requisites rather than direct references.
Adjust callers accordingly.
</content>
</entry>
<entry>
<title>channels: Don't pull from the same channel more than once.</title>
<updated>2019-01-20T16:57:14Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-01-17T15:57:53Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=ed75bdf35ca494496cdbc7a06b414e1f08e70cac'/>
<id>urn:sha1:ed75bdf35ca494496cdbc7a06b414e1f08e70cac</id>
<content type='text'>
Previous 'channel-instance-&gt;manifest' would call
'latest-channel-derivation', which could trigger another round of
'latest-repository-commit' for no good reason.

* guix/channels.scm (resolve-dependencies): New procedure.
(channel-instance-derivations)[edges]: New variable.
[instance-&gt;derivation]: New procedure.
* tests/channels.scm (make-instance): Use 'checkout-&gt;channel-instance'
instead of 'channel-instance'.
("channel-instances-&gt;manifest"): New test.
</content>
</entry>
<entry>
<title>guix: Add support for channel dependencies.</title>
<updated>2018-12-09T12:55:22Z</updated>
<author>
<name>Ricardo Wurmus</name>
<email>rekado@elephly.net</email>
</author>
<published>2018-10-13T06:39:23Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=af12790bdd3805bbd7bca2b7c1d9045666f377eb'/>
<id>urn:sha1:af12790bdd3805bbd7bca2b7c1d9045666f377eb</id>
<content type='text'>
* guix/channels.scm (&lt;channel-metadata&gt;): New record.
(read-channel-metadata, channel-instance-dependencies): New procedures.
(latest-channel-instances): Include channel dependencies; add optional
argument PREVIOUS-CHANNELS.
(channel-instance-derivations): Build derivation for additional channels and
add it as dependency to the channel instance derivation.
* doc/guix.texi (Channels): Add subsection "Declaring Channel Dependencies".
* tests/channels.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
</content>
</entry>
</feed>
