I don't think this is the right fix. Now you define packages with the incorrect url-fetch, so the test passes, but package->code would still not work as intended on actual packages that are properly defined.
It seems that the issue is package->code uses the internal name url-fetch* whereas it should be the exported name url-fetch. I think this is a legitimate bug in package->code and your patch incorrectly hides it. Le 24 mars 2021 21:44:37 GMT-04:00, "Léo Le Bouter via Bug reports for GNU Guix" <bug-guix@gnu.org> a écrit : >FAIL: tests/print >================= > >test-name: simple package >location: /tmp/guix-build-guix-1.2.0-18.86dd54f.drv- >0/source/tests/print.scm:70 >source: >+ (test-equal >+ "simple package" >+ `(define-public test ,pkg-source) >+ (package->code pkg)) >expected-value: (define-public test (package (name "test") (version >"1.2.3") (source (origin (method url-fetch) (uri (string-append >"file:///tmp/test-" version ".tar.gz")) (sha256 (base32 >"070pwb7brdcn1mfvplkd56vjc7lbz4iznzkqvfsakvgbv68k71ah")))) (build- >system (@ (guix build-system gnu) gnu-build-system)) (home-page " >http://gnu.org") (synopsis "Dummy") (description "This is a dummy >package.") (license license:gpl3+))) >actual-value: (define-public test (package (name "test") (version >"1.2.3") (source (origin (method url-fetch*) (uri (string-append >"file:///tmp/test-" version ".tar.gz")) (sha256 (base32 >"070pwb7brdcn1mfvplkd56vjc7lbz4iznzkqvfsakvgbv68k71ah")))) (build- >system (@ (guix build-system gnu) gnu-build-system)) (home-page " >http://gnu.org") (synopsis "Dummy") (description "This is a dummy >package.") (license license:gpl3+))) >result: FAIL > >test-name: package with inputs >location: /tmp/guix-build-guix-1.2.0-18.86dd54f.drv- >0/source/tests/print.scm:74 >source: >+ (test-equal >+ "package with inputs" >+ `(define-public test ,pkg-with-inputs-source) >+ (package->code pkg-with-inputs)) >expected-value: (define-public test (package (name "test") (version >"1.2.3") (source (origin (method url-fetch) (uri (string-append >"file:///tmp/test-" version ".tar.gz")) (sha256 (base32 >"070pwb7brdcn1mfvplkd56vjc7lbz4iznzkqvfsakvgbv68k71ah")))) (build- >system (@ (guix build-system gnu) gnu-build-system)) (inputs >(quasiquote (("coreutils" (unquote (@ (gnu packages base) coreutils))) >("glibc" (unquote (@ (gnu packages base) glibc)) "debug")))) (home-page > >"http://gnu.org") (synopsis "Dummy") (description "This is a dummy >package.") (license license:gpl3+))) >actual-value: (define-public test (package (name "test") (version >"1.2.3") (source (origin (method url-fetch*) (uri (string-append >"file:///tmp/test-" version ".tar.gz")) (sha256 (base32 >"070pwb7brdcn1mfvplkd56vjc7lbz4iznzkqvfsakvgbv68k71ah")))) (build- >system (@ (guix build-system gnu) gnu-build-system)) (inputs >(quasiquote (("coreutils" (unquote (@ (gnu packages base) coreutils))) >("glibc" (unquote (@ (gnu packages base) glibc)) "debug")))) (home-page > >"http://gnu.org") (synopsis "Dummy") (description "This is a dummy >package.") (license license:gpl3+))) >result: FAIL > >Full log: https://ci.guix.gnu.org/build/117996/log/raw > >Seems related to f7008ca71351e5368a7c1c5bc3fe88fb80b01298 > >This patch fixes the issue but I am not sure it retains the test's >original intent: > >diff --git a/tests/print.scm b/tests/print.scm >index 3386590d3a..85735cf9ae 100644 >--- a/tests/print.scm >+++ b/tests/print.scm >@@ -19,7 +19,7 @@ > (define-module (test-print) > #:use-module (guix import print) > #:use-module (guix build-system gnu) >- #:use-module (guix download) >+ #:use-module (guix build download) > #:use-module (guix packages) > #:use-module ((guix licenses) #:prefix license:) > #:use-module (srfi srfi-64)) > >Let me know! > >Thank you