GNU bug report logs - #29570
(web uri) ABI incompatibility in 2.2.3 leads to 'guix pull' breakage

Previous Next

Package: guix;

Reported by: Vagrant Cascadian <vagrant <at> debian.org>

Date: Mon, 4 Dec 2017 23:17:02 UTC

Severity: important

Done: ludo <at> gnu.org (Ludovic Courtès)

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 29570 in the body.
You can then email your comments to 29570 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#29570; Package guix. (Mon, 04 Dec 2017 23:17:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Vagrant Cascadian <vagrant <at> debian.org>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Mon, 04 Dec 2017 23:17:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Vagrant Cascadian <vagrant <at> debian.org>
To: bug-guix <at> gnu.org
Subject: challenge Backtraces
Date: Mon, 04 Dec 2017 15:16:35 -0800
[Message part 1 (text/plain, inline)]
After a recent guix pull, I'm getting tracebacks when attempting to run
guix challenge.

I tried switching subsititues to a local caching proxy, not sure if that
could possibly break anything. But after switching back to using the
substitutes directly, the problem still persists.

$ guix --version
guix (GNU guix) 1fa37d1b55b1d25a9d20c7b50a531b763e7a1398

$ guix challenge --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org" linux-libre
Backtrace:
          12 (primitive-load "/gnu/store/sy84f3kbjj2f2nl1ljbdcmsqrz8…")
In guix/ui.scm:
  1452:12 11 (run-guix-command _ . _)
In ice-9/boot-9.scm:
    837:9 10 (catch _ _ #<procedure 7f185b219070 at guix/ui.scm:513…> …)
    837:9  9 (catch _ _ #<procedure 7f185b219088 at guix/ui.scm:611…> …)
    837:9  8 (catch _ _ #<procedure 7f1857f1bd70 at guix/scripts/ch…> …)
In guix/scripts/challenge.scm:
   304:13  7 (_)
In guix/store.scm:
  1444:24  6 (run-with-store _ _ #:guile-for-build _ #:system _ # _)
In guix/scripts/challenge.scm:
   305:15  5 (_ _)
   149:34  4 (_ _)
In srfi/srfi-1.scm:
   679:15  3 (append-map _ _ . _)
   592:17  2 (map1 ("https://berlin.guixsd.org"; "https://mirror.hy…"))
In guix/scripts/substitute.scm:
   725:23  1 (lookup-narinfos "https://berlin.guixsd.org"; _)
   697:16  0 (fetch-narinfos "https://berlin.guixsd.org"; ("/gnu/sto…"))

guix/scripts/substitute.scm:697:16: In procedure fetch-narinfos:
guix/scripts/substitute.scm:697:16: Wrong type to apply: #<syntax-transformer uri?>


live well,
  vagrant
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#29570; Package guix. (Tue, 05 Dec 2017 20:57:01 GMT) Full text and rfc822 format available.

Message #8 received at 29570 <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: Vagrant Cascadian <vagrant <at> debian.org>
Cc: 29570 <at> debbugs.gnu.org
Subject: Re: bug#29570: challenge Backtraces
Date: Tue, 05 Dec 2017 21:56:41 +0100
Hi Vagrant,

Vagrant Cascadian <vagrant <at> debian.org> skribis:

> $ guix --version
> guix (GNU guix) 1fa37d1b55b1d25a9d20c7b50a531b763e7a1398

It looks like my repo lacks this commit.

> $ guix challenge --substitute-urls="https://berlin.guixsd.org https://mirror.hydra.gnu.org" linux-libre

[...]

> In guix/scripts/challenge.scm:
>    305:15  5 (_ _)
>    149:34  4 (_ _)
> In srfi/srfi-1.scm:
>    679:15  3 (append-map _ _ . _)
>    592:17  2 (map1 ("https://berlin.guixsd.org"; "https://mirror.hy…"))
> In guix/scripts/substitute.scm:
>    725:23  1 (lookup-narinfos "https://berlin.guixsd.org"; _)
>    697:16  0 (fetch-narinfos "https://berlin.guixsd.org"; ("/gnu/sto…"))
>
> guix/scripts/substitute.scm:697:16: In procedure fetch-narinfos:
> guix/scripts/substitute.scm:697:16: Wrong type to apply: #<syntax-transformer uri?>

This is due to an ABI breakage in the (web uri) module that Guile
provides: in 2.2.3 ‘uri?’ is a procedure, but in 2.2.2 it’s a macro.

As it turns out, build-aux/build-self.scm (which is what ‘guix pull’
evaluates) selects the latest Guile 2.2.x, so it builds with 2.2.3, but
then you run that code with 2.2.2, hence the error.

Let’s see how we can work around it…

Ludo’.





Changed bug title to '(web uri) ABI incompatibility in 2.2.3 leads to 'guix pull' breakage' from 'challenge Backtraces' Request was from ludo <at> gnu.org (Ludovic Courtès) to control <at> debbugs.gnu.org. (Tue, 05 Dec 2017 20:59:02 GMT) Full text and rfc822 format available.

Severity set to 'important' from 'normal' Request was from ludo <at> gnu.org (Ludovic Courtès) to control <at> debbugs.gnu.org. (Tue, 05 Dec 2017 20:59:03 GMT) Full text and rfc822 format available.

Reply sent to ludo <at> gnu.org (Ludovic Courtès):
You have taken responsibility. (Thu, 07 Dec 2017 16:19:01 GMT) Full text and rfc822 format available.

Notification sent to Vagrant Cascadian <vagrant <at> debian.org>:
bug acknowledged by developer. (Thu, 07 Dec 2017 16:19:02 GMT) Full text and rfc822 format available.

Message #17 received at 29570-done <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: Vagrant Cascadian <vagrant <at> debian.org>
Cc: 29570-done <at> debbugs.gnu.org
Subject: Re: bug#29570: challenge Backtraces
Date: Thu, 07 Dec 2017 17:18:06 +0100
Hi,

ludo <at> gnu.org (Ludovic Courtès) skribis:

> This is due to an ABI breakage in the (web uri) module that Guile
> provides: in 2.2.3 ‘uri?’ is a procedure, but in 2.2.2 it’s a macro.
>
> As it turns out, build-aux/build-self.scm (which is what ‘guix pull’
> evaluates) selects the latest Guile 2.2.x, so it builds with 2.2.3, but
> then you run that code with 2.2.2, hence the error.

I’ve pushed a workaround as commit
66f217b43aca603326dab17d4dda1a398bf4fb8c.

Thanks,
Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 05 Jan 2018 12:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 6 years and 106 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.