guix-kreyren/tests
Robert Vollmert ca45da9fc9
import: hackage: Handle Hackage revisions.
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 <https://bugs.gnu.org/35750>.

* guix/import/cabal.scm (<cabal-package>): 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->sexp): Add 'cabal-hash' argument and use it to populate
the '#:cabal-revision' argument.
(hackage->guix-package): Use the new '-and-hash' functions to get the
hash of the Cabal file and pass it to 'hackage-module->sexp'.
* guix/tests/hackage.scm: Test import of Cabal file revision.

Signed-off-by: Timothy Sample <samplet@ngyro.com>
2019-06-13 22:18:52 -04:00
..
accounts.scm
base16.scm
base32.scm
base64.scm
bournish.scm
build-utils.scm
builders.scm
cache.scm
challenge.scm
channels.scm
combinators.scm
containers.scm
cpan.scm
cpio.scm
cran.scm
crate.scm
cve-sample.xml
cve.scm
debug-link.scm
derivations.scm
discovery.scm
elpa.scm
file-systems.scm
gem.scm
gexp.scm
glob.scm
gnu-maintenance.scm
grafts.scm
graph.scm
gremlin.scm
guix-archive.sh
guix-authenticate.sh
guix-build-branch.sh
guix-build.sh
guix-daemon.sh
guix-describe.sh
guix-download.sh
guix-environment-container.sh
guix-environment.sh
guix-gc.sh
guix-graph.sh
guix-hash.sh
guix-lint.sh
guix-pack-localstatedir.sh
guix-pack-relocatable.sh
guix-pack.sh
guix-package-aliases.sh
guix-package-net.sh
guix-package.sh
guix-system.sh
hackage.scm
import-utils.scm
inferior.scm
lint.scm
lzlib.scm
modules.scm
monads.scm
nar.scm
opam.scm
pack.scm
packages.scm
pki.scm
print.scm
processes.scm
profiles.scm
publish.scm
pypi.scm
records.scm
scripts-build.scm
scripts.scm
search-paths.scm
services.scm
sets.scm
signing-key.pub
signing-key.sec
size.scm
snix.scm
status.scm
store-database.scm
store-deduplication.scm
store-roots.scm
store.scm
substitute.scm
syscalls.scm
system.scm
test.drv
texlive.scm
ui.scm
union.scm
upstream.scm
utils.scm
uuid.scm
workers.scm
zlib.scm