|
From: | Philip McGrath |
Subject: | bug#48682: recursive import between (gnu packages chez) and (gnu packages racket) |
Date: | Sat, 29 May 2021 17:42:47 -0400 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 |
Hi, thanks!
That said… what problem is this fixing raingloom? Usually, circular top-level references lead things like ‘guix show chez-scheme’ (this amounts to loading (gnu packages chez)), but it worked fine for me.
It seems like some other commit may have broken the cycle in the mean time. Here's what I had been seeing:
```philip@avalon:~$ guix time-machine --commit=ae88e30a0f8403e781f8b01262766cdc46b1018a -- show chez-scheme
Backtrace: 19 (primitive-load-path "gnu/packages/racket" #<procedure …>) In gnu/packages/racket.scm: 22:0 18 (_) In ice-9/boot-9.scm: 3409:4 17 (define-module* _ #:filename _ #:pure _ #:version _ # _ …) 3422:24 16 (_) 222:29 15 (map1 (((guix licenses) #:select (asl2.0 expat #)) (#) …)) 222:29 14 (map1 (((guix packages)) ((guix download)) ((guix #)) …)) 222:29 13 (map1 (((guix download)) ((guix git-download)) ((# …)) …)) 222:29 12 (map1 (((guix git-download)) ((guix utils)) ((guix …)) …)) 222:29 11 (map1 (((guix utils)) ((guix gexp)) ((guix # gnu)) (#) …)) 222:29 10 (map1 (((guix gexp)) ((guix build-system gnu)) ((# …)) …)) 222:29 9 (map1 (((guix build-system gnu)) ((srfi srfi-1)) ((…)) …)) 222:29 8 (map1 (((srfi srfi-1)) ((ice-9 match)) ((gnu #)) ((…)) …)) 222:29 7 (map1 (((ice-9 match)) ((gnu packages)) ((gnu # #)) # …)) 222:29 6 (map1 (((gnu packages)) ((gnu packages bash)) ((…) …) …)) 222:29 5 (map1 (((gnu packages bash)) ((gnu packages chez) # …) …)) 222:17 4 (map1 (((gnu packages chez) #:select (chez-scheme)) # …)) 3353:12 3 (resolve-interface (gnu packages chez) #:select _ #:hide …) 260:13 2 (for-each #<procedure 7fe3d526c500 at ice-9/boot-9.scm…> …) 3360:19 1 (_ _) 1685:16 0 (raise-exception _ #:continuable? _) ice-9/boot-9.scm:1685:16: In procedure raise-exception:Throw to key `unbound-variable' with args `("resolve-interface" "no binding `~A' in module ~A" (chez-scheme (gnu packages chez)) #f)'.
```I don't think anyone ever figured out where the cycle was. The tl;dr of my long comment is that there wasn't a logical cycle yet, and I was intending to have (gnu packages racket) import (gnu packages chez), but not vice versa, for now.
raingloom had discussed more on IRC---I only happened to see a little of it, but I could reproduce.
-Philip
[Prev in Thread] | Current Thread | [Next in Thread] |