import: cpan: Update CPAN importer to use MetaCPAN v1 API.
* guix/import/cpan.scm (module->dist-name, cpan-fetch): Use metacpan.org URLs. * tests/cpan.scm ("cpan->guix-package"): Adjust accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
fe4e0b0ae7
commit
4679dd6967
|
@ -88,7 +88,7 @@
|
|||
"Return the base distribution module for a given module. E.g. the 'ok'
|
||||
module is distributed with 'Test::Simple', so (module->dist-name \"ok\") would
|
||||
return \"Test-Simple\""
|
||||
(assoc-ref (json-fetch (string-append "https://api.metacpan.org/module/"
|
||||
(assoc-ref (json-fetch (string-append "https://fastapi.metacpan.org/v1/module/"
|
||||
module
|
||||
"?fields=distribution"))
|
||||
"distribution"))
|
||||
|
@ -113,7 +113,7 @@ return \"Test-Simple\""
|
|||
"Return an alist representation of the CPAN metadata for the perl module MODULE,
|
||||
or #f on failure. MODULE should be e.g. \"Test::Script\""
|
||||
;; This API always returns the latest release of the module.
|
||||
(json-fetch (string-append "https://api.metacpan.org/release/" name)))
|
||||
(json-fetch (string-append "https://fastapi.metacpan.org/v1/release/" name)))
|
||||
|
||||
(define (cpan-home name)
|
||||
(string-append "http://search.cpan.org/dist/" name))
|
||||
|
|
|
@ -74,10 +74,10 @@
|
|||
(mock ((guix http-client) http-fetch
|
||||
(lambda (url . rest)
|
||||
(match url
|
||||
("https://api.metacpan.org/release/Foo-Bar"
|
||||
("https://fastapi.metacpan.org/v1/release/Foo-Bar"
|
||||
(values (open-input-string test-json)
|
||||
(string-length test-json)))
|
||||
("https://api.metacpan.org/module/Test::Script?fields=distribution"
|
||||
("https://fastapi.metacpan.org/v1/module/Test::Script?fields=distribution"
|
||||
(let ((result "{ \"distribution\" : \"Test-Script\" }"))
|
||||
(values (open-input-string result)
|
||||
(string-length result))))
|
||||
|
|
Loading…
Reference in New Issue