<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix.git/guix/swh.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>2019-07-24T22:16:41Z</updated>
<entry>
<title>maint: Switch to Guile-JSON 3.x.</title>
<updated>2019-07-24T22:16:41Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-07-21T21:05:54Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=81c3dc32244a17241d74eea9fa265edfcb326f6d'/>
<id>urn:sha1:81c3dc32244a17241d74eea9fa265edfcb326f6d</id>
<content type='text'>
Guile-JSON 3.x is incompatible with Guile-JSON 1.x, which we relied on
until now: it maps JSON dictionaries to alists (instead of hash tables),
and JSON arrays to vectors (instead of lists).  This commit is about
adjusting all the existing code to this new mapping.

* m4/guix.m4 (GUIX_CHECK_GUILE_JSON): New macro.
* configure.ac: Use it.
* doc/guix.texi (Requirements): Mention the Guile-JSON version.
* guix/git-download.scm (git-fetch)[guile-json]: Use GUILE-JSON-3.
* guix/import/cpan.scm (string-&gt;license): Expect vectors instead of
lists.
(module-&gt;dist-name): Use 'json-fetch' instead of 'json-fetch-alist'.
(cpan-fetch): Likewise.
* guix/import/crate.scm (crate-fetch): Likewise, and call 'vector-&gt;list'
for DEPS.
* guix/import/gem.scm (rubygems-fetch): Likewise.
* guix/import/json.scm (json-fetch-alist): Remove.
* guix/import/pypi.scm (pypi-fetch): Use 'json-fetch' instead of
'json-fetch-alist'.
(latest-source-release, latest-wheel-release): Call 'vector-&gt;list' on
RELEASES.
* guix/import/stackage.scm (stackage-lts-info-fetch): Use 'json-fetch'
instead of 'json-fetch-alist'.
(lts-package-version): Use 'vector-&gt;list'.
* guix/import/utils.scm (hash-table-&gt;alist): Remove.
(alist-&gt;package): Pass 'vector-&gt;list' on the inputs fields, and default
to the empty vector.
* guix/scripts/import/json.scm (guix-import-json): Remove call to
'hash-table-&gt;alist'.
* guix/swh.scm (define-json-reader): Expect pair? or null? instead of
hash-table?.
[extract-field]: Use 'assoc-ref' instead of 'hash-ref'.
(json-&gt;branches): Use 'map' instead of 'hash-map-&gt;list'.
(json-&gt;checksums): Likewise.
(json-&gt;directory-entries, origin-visits): Call 'vector-&gt;list' on the
result of 'json-&gt;scm'.
* tests/import-utils.scm ("alist-&gt;package with dependencies"): New test.
* gnu/installer.scm (build-compiled-file)[builder]: Use GUILE-JSON-3.
* gnu/installer.scm (installer-program)[installer-builder]: Likewise.
* gnu/installer/locale.scm (iso639-&gt;iso639-languages): Use 'assoc-ref'
instead of 'hash-ref', and pass vectors through 'vector-&gt;list'.
(iso3166-&gt;iso3166-territories): Likewise.
* gnu/system/vm.scm (system-docker-image)[build]: Use GUILE-JSON-3.
* guix/docker.scm (manifest, config): Adjust for Guile-JSON 3.
* guix/scripts/pack.scm (docker-image)[build]: Use GUILE-JSON-3.
* guix/import/github.scm (fetch-releases-or-tags): Update docstring.
(latest-released-version): Use 'assoc-ref' instead of 'hash-ref'.  Pass
the result of 'fetch-releases-or-tags' to 'vector-&gt;list'.
* guix/import/launchpad.scm (latest-released-version): Likewise.
</content>
</entry>
<entry>
<title>swh: Add basic tests.</title>
<updated>2019-07-22T09:53:39Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-07-20T18:13:39Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=96f1cbeff84819f9886d15763b4c477cdecd7784'/>
<id>urn:sha1:96f1cbeff84819f9886d15763b4c477cdecd7784</id>
<content type='text'>
* guix/swh.scm (%swh-base-url): Turn into a parameter and export it.
* tests/swh.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
</content>
</entry>
<entry>
<title>swh: Export 'save-origin' and related bindings.</title>
<updated>2018-11-27T11:12:33Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-11-27T09:11:52Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=ee6b3bb60d145690a35a8069cf8168d072f04730'/>
<id>urn:sha1:ee6b3bb60d145690a35a8069cf8168d072f04730</id>
<content type='text'>
* guix/swh.scm: Export bindings related to 'save-origin'.
</content>
</entry>
<entry>
<title>Add (guix swh).</title>
<updated>2018-11-26T10:10:20Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludovic.courtes@inria.fr</email>
</author>
<published>2018-11-19T14:40:21Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=de2bfe902936e3f7abfd4b55ad1149f75c5818b3'/>
<id>urn:sha1:de2bfe902936e3f7abfd4b55ad1149f75c5818b3</id>
<content type='text'>
* guix/swh.scm: New file.
* Makefile.am (MODULES): Add it.
</content>
</entry>
</feed>
