mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
import: utils: 'recursive-import' returns packages in topological order.
* guix/import/utils.scm (topological-sort): New procedure. (recursive-import): Rewrite to use it. * tests/import-utils.scm ("recursive-import"): New test. * guix/import/cran.scm (cran->guix-package): Always return two values. * guix/scripts/import/cran.scm (guix-import-cran): Remove 'reverse' call on 'cran-recursive-import' result. * guix/scripts/import/crate.scm (guix-import-crate): Likewise. * guix/scripts/import/elpa.scm (guix-import-elpa): Likewise. * guix/scripts/import/gem.scm (guix-import-gem): Likewise. * guix/scripts/import/hackage.scm (guix-import-hackage): Likewise. * guix/scripts/import/opam.scm (guix-import-opam): Likewise. * guix/scripts/import/pypi.scm (guix-import-pypi): Likewise. * guix/scripts/import/stackage.scm (guix-import-stackage): Likewise. * tests/gem.scm ("gem-recursive-import"): Change the order of package expressions accordingly.
This commit is contained in:
parent
6c3021a840
commit
ddd5915900
12 changed files with 104 additions and 73 deletions
|
@ -123,22 +123,21 @@
|
|||
(_ (error "Unexpected URL: " url)))))
|
||||
(match (stream->list (gem-recursive-import "foo"))
|
||||
((('package
|
||||
('name "ruby-foo")
|
||||
('name "ruby-bar")
|
||||
('version "1.0.0")
|
||||
('source
|
||||
('origin
|
||||
('method 'url-fetch)
|
||||
('uri ('rubygems-uri "foo" 'version))
|
||||
('uri ('rubygems-uri "bar" 'version))
|
||||
('sha256
|
||||
('base32
|
||||
"1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"))))
|
||||
('build-system 'ruby-build-system)
|
||||
('propagated-inputs
|
||||
('quasiquote
|
||||
(("bundler" ('unquote 'bundler))
|
||||
("ruby-bar" ('unquote 'ruby-bar)))))
|
||||
('synopsis "A cool gem")
|
||||
('description "This package provides a cool gem")
|
||||
(('"bundler" ('unquote 'bundler)))))
|
||||
('synopsis "Another cool gem")
|
||||
('description "Another cool gem")
|
||||
('home-page "https://example.com")
|
||||
('license ('list 'license:expat 'license:asl2.0)))
|
||||
('package
|
||||
|
@ -157,21 +156,22 @@
|
|||
('home-page "https://bundler.io/")
|
||||
('license 'license:expat))
|
||||
('package
|
||||
('name "ruby-bar")
|
||||
('name "ruby-foo")
|
||||
('version "1.0.0")
|
||||
('source
|
||||
('origin
|
||||
('method 'url-fetch)
|
||||
('uri ('rubygems-uri "bar" 'version))
|
||||
('uri ('rubygems-uri "foo" 'version))
|
||||
('sha256
|
||||
('base32
|
||||
"1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"))))
|
||||
('build-system 'ruby-build-system)
|
||||
('propagated-inputs
|
||||
('quasiquote
|
||||
(('"bundler" ('unquote 'bundler)))))
|
||||
('synopsis "Another cool gem")
|
||||
('description "Another cool gem")
|
||||
(("bundler" ('unquote 'bundler))
|
||||
("ruby-bar" ('unquote 'ruby-bar)))))
|
||||
('synopsis "A cool gem")
|
||||
('description "This package provides a cool gem")
|
||||
('home-page "https://example.com")
|
||||
('license ('list 'license:expat 'license:asl2.0))))
|
||||
#t)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue