<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix.git/guix/scripts/challenge.scm, branch master</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=master</id>
<link rel='self' href='https://www.git.jakob.space/guix.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/'/>
<updated>2019-06-02T20:01:57Z</updated>
<entry>
<title>substitute: Select the best compression methods.</title>
<updated>2019-06-02T20:01:57Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-05-31T14:26:08Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=b90ae065b5a5fab4ed475bf2faa3a84476389a02'/>
<id>urn:sha1:b90ae065b5a5fab4ed475bf2faa3a84476389a02</id>
<content type='text'>
When a server publishes several URLs with different compression methods,
'guix substitute' can now choose the best one among the compression
methods that it supports.

* guix/scripts/substitute.scm (&lt;narinfo&gt;)[uri]: Replace with...
[uris]: ... this.
[compression]: Replace with...
[compressions]: ... this.
[file-size]: Replace with...
[file-sizes]: ... this.
[file-hash]: Replace with...
[file-hashes]: ... this.
(narinfo-maker): Adjust accordingly.  Ensure 'file-sizes' and
'file-hashes' have the right length.
(assert-valid-signature, valid-narinfo?): Use the first element of
'narinfo-uris' in error messages.
(read-narinfo): Expect "URL", "Compression", "FileSize", and "FileHash"
to occur multiple times.
(display-narinfo-data): Call 'select-uri' to determine the file size.
(%compression-methods): New variable.
(supported-compression?, compresses-better?, select-uri): New
procedures.
(process-substitution): Call 'select-uri' to select the URI and
compression.
* guix/scripts/weather.scm (report-server-coverage): Account for all the
values returned by 'narinfo-file-sizes'.
* tests/substitute.scm ("substitute, narinfo with several URLs"): New
test.
</content>
</entry>
<entry>
<title>store: Rename '&amp;nix-error' to '&amp;store-error'.</title>
<updated>2019-01-21T22:09:55Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-01-21T16:41:11Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=f9e8a12379c6fefc9e5c3c7fc3926599bbefc013'/>
<id>urn:sha1:f9e8a12379c6fefc9e5c3c7fc3926599bbefc013</id>
<content type='text'>
* guix/store.scm (&amp;nix-error): Rename to...
(&amp;store-error): ... this, and adjust users.
(&amp;nix-connection-error): Rename to...
(&amp;store-connection-error): ... this, and adjust users.
(&amp;nix-protocol-error): Rename to...
(&amp;store-protocol-error): ... this, adjust users.
(&amp;nix-error, &amp;nix-connection-error, &amp;nix-protocol-error): Define these
condition types and their getters as deprecrated aliases.
* build-aux/run-system-tests.scm, guix/derivations.scm,
guix/grafts.scm, guix/scripts/challenge.scm,
guix/scripts/graph.scm, guix/scripts/lint.scm,
guix/scripts/offload.scm, guix/serialization.scm,
guix/ssh.scm, guix/tests.scm, guix/ui.scm,
tests/derivations.scm, tests/gexp.scm, tests/guix-daemon.sh,
tests/packages.scm, tests/store.scm, doc/guix.texi: Adjust to use the
new names.
</content>
</entry>
<entry>
<title>scripts: Factorize option parsing sans 'GUIX_BUILD_OPTIONS'.</title>
<updated>2017-10-28T07:45:53Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-10-27T20:28:00Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=a1ff7e1d8dfb86ae1817d4e0db4ddeebd2083e83'/>
<id>urn:sha1:a1ff7e1d8dfb86ae1817d4e0db4ddeebd2083e83</id>
<content type='text'>
* guix/scripts.scm (parse-command-line): Add #:build-options? parameter
and honor it.
* guix/scripts/challenge.scm (guix-challenge): Use 'parse-command-line'
with #:build-options? #f instead of 'args-fold*'.
* guix/scripts/gc.scm (guix-gc): Likewise.
* guix/scripts/graph.scm (guix-graph): Likewise.
* guix/scripts/hash.scm (guix-hash): Likewise.
* guix/scripts/lint.scm (guix-lint): Likewise.
* guix/scripts/refresh.scm (guix-refresh): Likewise.
* guix/scripts/size.scm (guix-size): Likewise.
* guix/scripts/weather.scm (guix-weather): Likewise.
</content>
</entry>
<entry>
<title>scripts: Use 'args-fold*' for command that do not honor build flags.</title>
<updated>2017-10-27T20:11:26Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-10-27T20:11:26Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=efff3dd4c984f0c2e6f8cb63cf109a6c7b89dea0'/>
<id>urn:sha1:efff3dd4c984f0c2e6f8cb63cf109a6c7b89dea0</id>
<content type='text'>
Fixes &lt;https://bugs.gnu.org/28984&gt;.
Reported by Eric Bavier.

* guix/scripts/challenge.scm (guix-challenge): Use 'args-fold*' instead
of 'parse-command-line'.
* guix/scripts/size.scm (guix-size): Likewise.
* guix/scripts/weather.scm (guix-weather): Likewise.
</content>
</entry>
<entry>
<title>challenge: Display an overall summary.</title>
<updated>2017-10-26T05:25:19Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-10-26T04:00:17Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=bf7dfb1f0722f48b137f85ade6b075ad342ecb38'/>
<id>urn:sha1:bf7dfb1f0722f48b137f85ade6b075ad342ecb38</id>
<content type='text'>
* guix/scripts/challenge.scm (summarize-report-list): New procedure.
(guix-challenge): Use it.
* doc/guix.texi (Invoking guix challenge): Adjust command output in
example.
</content>
</entry>
<entry>
<title>ui: Rename '_' to 'G_'.</title>
<updated>2017-05-03T14:16:17Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-05-03T13:57:02Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=69daee23af49aeafcb1d250c90860f9253da719e'/>
<id>urn:sha1:69daee23af49aeafcb1d250c90860f9253da719e</id>
<content type='text'>
This avoids collisions with '_' when the latter is used as a 'match'
pattern for instance.  See
&lt;https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00464.html&gt;.

* guix/ui.scm: Rename '_' to 'G_'.
* po/guix/Makevars (XGETTEXT_OPTIONS): Adjust accordingly.
* build-aux/compile-all.scm (warnings): Remove 'format'.
* gnu/packages.scm,
gnu/services.scm,
gnu/services/shepherd.scm,
gnu/system.scm,
gnu/system/shadow.scm,
guix/gnupg.scm,
guix/http-client.scm,
guix/import/cpan.scm,
guix/import/elpa.scm,
guix/import/pypi.scm,
guix/nar.scm,
guix/scripts.scm,
guix/scripts/archive.scm,
guix/scripts/authenticate.scm,
guix/scripts/build.scm,
guix/scripts/challenge.scm,
guix/scripts/container.scm,
guix/scripts/container/exec.scm,
guix/scripts/copy.scm,
guix/scripts/download.scm,
guix/scripts/edit.scm,
guix/scripts/environment.scm,
guix/scripts/gc.scm,
guix/scripts/graph.scm,
guix/scripts/hash.scm,
guix/scripts/import.scm,
guix/scripts/import/cpan.scm,
guix/scripts/import/cran.scm,
guix/scripts/import/crate.scm,
guix/scripts/import/elpa.scm,
guix/scripts/import/gem.scm,
guix/scripts/import/gnu.scm,
guix/scripts/import/hackage.scm,
guix/scripts/import/nix.scm,
guix/scripts/import/pypi.scm,
guix/scripts/import/stackage.scm,
guix/scripts/lint.scm,
guix/scripts/offload.scm,
guix/scripts/pack.scm,
guix/scripts/package.scm,
guix/scripts/perform-download.scm,
guix/scripts/publish.scm,
guix/scripts/pull.scm,
guix/scripts/refresh.scm,
guix/scripts/size.scm,
guix/scripts/substitute.scm,
guix/scripts/system.scm,
guix/ssh.scm,
guix/upstream.scm: Use 'G_' instead of '_'.  Most of this change was
obtained by running: "sed -i -e's/(_ "/(G_ "/g' `find -name \*.scm`".
</content>
</entry>
<entry>
<title>challenge: Add '--verbose'.</title>
<updated>2017-01-13T23:57:51Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-01-13T23:03:32Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=153b62957cd5b08ccc2440854c90b5693ba52eea'/>
<id>urn:sha1:153b62957cd5b08ccc2440854c90b5693ba52eea</id>
<content type='text'>
* guix/scripts/challenge.scm (summarize-report): Add #:verbose?
parameter.
[report-hashes]: New procedure.  Use it.
Honor VERBOSE? in the 'match case.
(show-help, %options): Add '--verbose'.
(guix-challenge): Honor it.
</content>
</entry>
<entry>
<title>challenge: Return comparison reports instead of just discrepancies.</title>
<updated>2017-01-13T23:57:51Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-01-13T22:30:43Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=4d8e95097e5c40da9dd57d358bd189dcf82ff9bf'/>
<id>urn:sha1:4d8e95097e5c40da9dd57d358bd189dcf82ff9bf</id>
<content type='text'>
This makes it easier to distinguish between matches, mismatches, and the
various cases of inconclusive reports.

* guix/scripts/challenge.scm (&lt;discrepancy&gt;): Rename to...
(&lt;comparison-report&gt;): ... this.  Add 'result' field.
(comparison-report): New macro.
(comparison-report-predicate, comparison-report-mismatch?)
(comparison-report-match?)
(comparison-report-inconclusive?): New procedures.
(discrepancies): Rename to...
(compare-contents): ... this.  Change to return a list of
&lt;comparison-report&gt;.  Remove calls to 'warning'.
(summarize-discrepancy): Rename to...
(summarize-report): ... this.  Adjust to &lt;comparison-report&gt;.
(guix-challenge): Likewise.
* tests/challenge.scm ("no discrepancies")
("one discrepancy"): Adjust to new API.
("inconclusive: no substitutes")
("inconclusive: no local build"): New tests.
</content>
</entry>
<entry>
<title>challenge: Use a warning when substitutes are lacking.</title>
<updated>2017-01-12T22:28:45Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-01-12T22:14:58Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=4cdff6ae37878588a550e5969381d531c728e2fd'/>
<id>urn:sha1:4cdff6ae37878588a550e5969381d531c728e2fd</id>
<content type='text'>
* guix/scripts/challenge.scm (discrepancies): Use 'warning' instead of
'leave'.
</content>
</entry>
<entry>
<title>challenge: Disable grafting.</title>
<updated>2016-07-14T17:07:07Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2016-07-14T13:25:00Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=db8f6b34121b392df12b551b3f7ca16349dc7018'/>
<id>urn:sha1:db8f6b34121b392df12b551b3f7ca16349dc7018</id>
<content type='text'>
* guix/scripts/challenge.scm (guix-challenge): Set %GRAFT? to #f.
</content>
</entry>
</feed>
