<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix.git/guix/import, 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-14T02:18:52Z</updated>
<entry>
<title>import: hackage: Handle Hackage revisions.</title>
<updated>2019-06-14T02:18:52Z</updated>
<author>
<name>Robert Vollmert</name>
<email>rob@vllmrt.net</email>
</author>
<published>2019-06-13T19:39:14Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=ca45da9fc9b1eee399ce4344b18cbb129daeca4c'/>
<id>urn:sha1:ca45da9fc9b1eee399ce4344b18cbb129daeca4c</id>
<content type='text'>
Hackage packages can have metadata revisions (Cabal file only) that are
not reflected in the source archive.  The Haskell build system has
support for this, but until now the Hackage importer would create a
package based on the revised Cabal file which would then build using the
old Cabal file.

Fixes &lt;https://bugs.gnu.org/35750&gt;.

* guix/import/cabal.scm (&lt;cabal-package&gt;): Add 'revision' field.
(eval-cabal): Parse 'x-revision:' property.
* guix/import/hackage.scm (read-cabal-and-hash): New procedure.
(hackage-fetch-and-hash): New procedure.
(hackage-fetch): Rewrite using 'hackage-fetch-and-hash'.
(hackage-module-&gt;sexp): Add 'cabal-hash' argument and use it to populate
the '#:cabal-revision' argument.
(hackage-&gt;guix-package): Use the new '-and-hash' functions to get the
hash of the Cabal file and pass it to 'hackage-module-&gt;sexp'.
* guix/tests/hackage.scm: Test import of Cabal file revision.

Signed-off-by: Timothy Sample &lt;samplet@ngyro.com&gt;
</content>
</entry>
<entry>
<title>import: crate: Define dependencies as arguments.</title>
<updated>2019-06-12T01:05:44Z</updated>
<author>
<name>Ivan Petkov</name>
<email>ivanppetkov@gmail.com</email>
</author>
<published>2019-05-17T07:26:07Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=5a9ef8a960706a55764f5bbc67ac83dd48516016'/>
<id>urn:sha1:5a9ef8a960706a55764f5bbc67ac83dd48516016</id>
<content type='text'>
* guix/import/crate.scm:
(crate-fetch)[input-crates]: Rename to dev-crates.
[native-input-crates]: Rename to dev-dep-crates.
[inputs]: Rename to cargo-inputs.
[native-inputs]: Rename to cargo-development-inputs.
(maybe-cargo-inputs, maybe-cargo-development-inputs, maybe-arguments): Add
them.
(make-crate-sexp)[inputs]: Rename to cargo-inputs.
[native-inputs]: Rename to cargo-development-inputs.
[maybe-native-inputs, maybe-inputs]: Replace with maybe-arguments.
* guix/import/utils.scm: (package-names-&gt;package-inputs): Make public.  Add
docstring.
* tests/crate.scm (crate-&gt;guix-package): Update the match pattern.

Signed-off-by: Chris Marusich &lt;cmmarusich@gmail.com&gt;
</content>
</entry>
<entry>
<title>import: utils: 'specs-&gt;package-lists' correctly matches "out".</title>
<updated>2019-06-07T20:55:50Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-06-07T20:55:50Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=f54cab2784493f4e9c51d3d7bcd38f155dc0fe7d'/>
<id>urn:sha1:f54cab2784493f4e9c51d3d7bcd38f155dc0fe7d</id>
<content type='text'>
* guix/import/utils.scm (specs-&gt;package-lists): Match "out", not ("out").
</content>
</entry>
<entry>
<title>import: print: Honor the outputs of inputs (!).</title>
<updated>2019-06-07T20:49:47Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-06-07T20:49:47Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=c0a4db66976dc63decbd612aafb934f44629e321'/>
<id>urn:sha1:c0a4db66976dc63decbd612aafb934f44629e321</id>
<content type='text'>
Fixes &lt;http://bugs.gnu.org/35893&gt;.
Reported by Jesse Gibbons &lt;jgibbons2357@gmail.com&gt;.

* guix/import/print.scm (package-&gt;code)[package-lists-&gt;code]: Preserve
OUT in the result.
* tests/print.scm (define-with-source): New macro.
(pkg): Use it.
(pkg-source): New variable.
(pkg-with-inputs, pkg-with-inputs-source): New variables.
("simple package"): Refer to 'pkg-source'.
("package with inputs"): New test.
</content>
</entry>
<entry>
<title>guix: import: simplify recursive import</title>
<updated>2019-06-03T19:52:10Z</updated>
<author>
<name>Robert Vollmert</name>
<email>rob@vllmrt.net</email>
</author>
<published>2019-05-27T20:07:31Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=5b315f3ea93020df52bc11105064a1398687e572'/>
<id>urn:sha1:5b315f3ea93020df52bc11105064a1398687e572</id>
<content type='text'>
This simplifies the logic of recursive-import, intending no
major functional changes. The package import function is no
longer called twice per package. Failed imports now make it
to the package stream as '() instead of #f.

* guix/import/utils.scm (recursive-import): Simplify.

Signed-off-by: Oleg Pykhalov &lt;go.wigust@gmail.com&gt;
</content>
</entry>
<entry>
<title>import: hackage: Parse braced properties.</title>
<updated>2019-06-02T20:16:05Z</updated>
<author>
<name>Robert Vollmert</name>
<email>rob@vllmrt.net</email>
</author>
<published>2019-06-01T22:27:50Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=959c9d159da2c53b87ae0af1421aecac98b20f46'/>
<id>urn:sha1:959c9d159da2c53b87ae0af1421aecac98b20f46</id>
<content type='text'>
This adds partial support for Cabal properties that use curly
braces instead of the layout rule.  See for example
https://hackage.haskell.org/package/cassava/

* guix/import/cabal.scm (read-braced-value): New procedure.
(is-property): Remove.
(is-layout-property, is-braced-property): New variables.
(lex-property): Rename to...
(lex-layout-property): ... this.
(lex-braced-property, lex-property): New procedures.
(lex-token): Add call to 'lex-property'.
* guix/tests/hackage.scm: Test braced description import.
* tests/hackage.scm (test-cabal-multiline-desc): Rename to...
(test-cabal-multiline-layout): ... this.
("hackage-&gt;guix-package test multiline desc"): Rename to...
("hackage-&gt;guix-package test multiline desc (layout)"): ... this.
(test-cabal-multiline-braced): New variable.
("hackage-&gt;guix-package test multiline desc (braced)"): New test.

Signed-off-by: Ludovic Courtès &lt;ludo@gnu.org&gt;
</content>
</entry>
<entry>
<title>import: hackage: Update list of ghc-included packages.</title>
<updated>2019-06-01T04:22:57Z</updated>
<author>
<name>Robert Vollmert</name>
<email>rob@vllmrt.net</email>
</author>
<published>2019-05-25T20:11:02Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=1cc12357a65e4479c2f4735e915941382ef82d94'/>
<id>urn:sha1:1cc12357a65e4479c2f4735e915941382ef82d94</id>
<content type='text'>
Update the list of excepted dependencies for current ghc-8.4, based on the
release notes at
https://downloads.haskell.org/~ghc/8.4.3/docs/html/users_guide/8.4.3-notes.html

Particularly, this adds `text` to the list, which is a dependency of `parsec`
which was already on the list before, causing build failures with updated
versions of the `text` package.

* guix/import/hackage.scm (ghc-standard-libraries): Update list.

Signed-off-by: Ricardo Wurmus &lt;rekado@elephly.net&gt;
</content>
</entry>
<entry>
<title>import: cran: Ignore invalid packages from the system requirements.</title>
<updated>2019-05-28T21:56:59Z</updated>
<author>
<name>Ricardo Wurmus</name>
<email>rekado@elephly.net</email>
</author>
<published>2019-05-28T21:56:59Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=531940d388b08318edbf243e3e5008288b1eb60e'/>
<id>urn:sha1:531940d388b08318edbf243e3e5008288b1eb60e</id>
<content type='text'>
* guix/import/cran.scm (description-&gt;package): Filter invalid packages from
the list of system requirements.
</content>
</entry>
<entry>
<title>import: hackage: Fix Cabal test.</title>
<updated>2019-05-26T21:20:30Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-05-26T21:18:21Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=ad7466aafd7f166d0b6be5eb32dda1d3ee8a6445'/>
<id>urn:sha1:ad7466aafd7f166d0b6be5eb32dda1d3ee8a6445</id>
<content type='text'>
* guix/import/hackage.scm (hackage-&gt;guix-package): Remove call to 'memoize'.
(hackage-&gt;guix-package/m): New procedure.
(hackage-recursive-import): Use it.
* tests/hackage.scm ("hackage-&gt;guix-package test 6"): Adjust.

Co-authored-by: Robert Vollmert &lt;rob@vllmrt.net&gt;
</content>
</entry>
<entry>
<title>import: hackage: Recognize "BSD-3-Clause" and "PublicDomain".</title>
<updated>2019-05-26T08:22:05Z</updated>
<author>
<name>Robert Vollmert</name>
<email>rob@vllmrt.net</email>
</author>
<published>2019-05-25T20:09:51Z</published>
<link rel='alternate' type='text/html' href='https://www.git.jakob.space/guix.git/commit/?id=0607f890888d1212ed1005c067bab3e4b9759812'/>
<id>urn:sha1:0607f890888d1212ed1005c067bab3e4b9759812</id>
<content type='text'>
* guix/import/hackage.scm (string-&gt;license): Add two licenses.

Signed-off-by: Marius Bakke &lt;mbakke@fastmail.com&gt;
</content>
</entry>
</feed>
