bug#52694: time-machine error when leaping from version-1.2.0 to version-1.4.0

2021-12-22 Thread Ludovic Courtès
Hello,

zimoun  skribis:

> In guix/modules.scm:
>157:28  5 (module-closure _ #:select? _ #:dependencies _)
> In guix/memoization.scm:
> 100:0  4 (_ # "/gnu/store/dljzmm…" …)
> In ice-9/ports.scm:
>445:17  3 (call-with-input-file _ _ #:binary _ #:encoding _ # _)
> In guix/modules.scm:
>  69:4  2 (_ _)
> In ice-9/boot-9.scm:
>   1669:16  1 (raise-exception _ #:continuable? _)
>   1669:16  0 (raise-exception _ #:continuable? _)
>
> ice-9/boot-9.scm:1669:16: In procedure raise-exception:
> Throw to key `match-error' with args `("match" "no matching pattern" 
> (#:re-export-and-replace (delete) #:rep

This is because build-self.scm uses ‘source-module-closure’, the one
from 1.2.0 in this case, and that one did not recognize the
#:re-export-and-replace keyword now used by (guix packages).

Fixed in e89f767ce8990f4959616031e3c98fbfe92a008b, thanks!

Ludo’.





bug#52694: time-machine error when leaping from version-1.2.0 to version-1.4.0

2021-12-21 Thread Thiago Jung Bauermann via Bug reports for GNU Guix


Hello,

zimoun  writes:

> Hi Carl,
>
> On Mon, 20 Dec 2021 at 17:28, Carl Dong  wrote:
>
>> $ guix time-machine --branch=version-1.2.0 -- time-machine 
>> --commit=6dffced09ecda024e0884e352778c221ad066fd6 -- describe
>
> This works for me:
>
> $ guix time-machine --branch=version-1.2.0 -- time-machine 
> --commit=6dffced09ecda024e0884e352778c221ad066fd6 -- describe
> Mise à jour du canal « guix » depuis le dépôt Git « 
> https://git.savannah.gnu.org/git/guix.git »...
>   guix 6dffced
> URL du dépôt : https://git.savannah.gnu.org/git/guix.git
> commit : 6dffced09ecda024e0884e352778c221ad066fd6
>
>
> But another commit does not work:
>
> $ guix time-machine --branch=version-1.2.0 -- time-machine --commit=6786336 
> -- describe
> Mise à jour du canal « guix » depuis le dépôt Git « 
> https://git.savannah.gnu.org/git/guix.git »...
> Backtrace:

I don’t think this is a problem specific to time-machine. I ran into what
I belive to be the same issue a couple of days ago on Ubuntu, when I was
using its Guix 1.2.0 package to pull to the current version in master:

--8<---cut here---start->8---
popigai: /usr/bin/guix --version
guix (GNU Guix) 1.2.0
Copyright (C) 2020 os autores do Guix
Licença GPLv3+: GNU GPLv3 ou posterior 
Esse é um software livre: você é livre para modificar ou redistribuí-lo.
NÃO HÁ GARANTIA, na máxima extensão permitida pela lei.
popigai: guix pull
Atualizando canal "guix" a partir do repositório Git 
"https://git.savannah.gnu.org/git/guix.git";...
Authenticating channel 'guix', commits 9edb3f6 to d627fba (28.728 new 
commits)...
Compilando a partir deste canal:
  guix  https://git.savannah.gnu.org/git/guix.git   d627fba
Backtrace:
   6 (apply-smob/1 #)
In ice-9/boot-9.scm:
705:2  5 (call-with-prompt _ _ #)
In ice-9/eval.scm:
619:8  4 (_ #(#(#)))
In guix/ui.scm:
  2117:12  3 (run-guix-command _ . _)
In ice-9/boot-9.scm:
829:9  2 (catch _ _ # …)
829:9  1 (catch _ _ # …)
829:9  0 (catch _ _ # …)

ice-9/boot-9.scm:829:9: In procedure catch:
Throw to key `match-error' with args `("match" "no matching pattern" 
(#:re-export-and-replace (delete) #:replace ((define-public* . define-public)) 
#:export (content-hash content-hash? content-hash-algorithm content-hash-value 
origin origin? this-origin origin-uri origin-method origin-hash origin-sha256 
origin-file-name origin-actual-file-name origin-patches origin-patch-flags 
origin-patch-inputs origin-patch-guile origin-snippet origin-modules base32 
base64 package package? this-package package-name package-upstream-name 
package-version package-full-name package-source package-build-system 
package-arguments package-inputs package-native-inputs 
package-propagated-inputs package-outputs package-native-search-paths 
package-search-paths package-replacement package-synopsis package-description 
package-license package-home-page package-supported-systems package-properties 
package-location package-definition-location hidden-package hidden-package? 
package-superseded deprecated-package package-field-location this-package-input 
this-package-native-input lookup-package-input lookup-package-native-input 
lookup-package-propagated-input lookup-package-direct-input prepend replace 
modify-inputs package-direct-sources package-transitive-sources 
package-direct-inputs package-transitive-inputs 
package-transitive-target-inputs package-transitive-native-inputs 
package-transitive-propagated-inputs package-transitive-native-search-paths 
package-transitive-supported-systems package-mapping package-input-rewriting 
package-input-rewriting/spec package-source-derivation package-derivation 
package-cross-derivation package-output package-grafts 
package-patched-vulnerabilities package-with-patches package-with-extra-patches 
package-with-c-toolchain package/inherit transitive-input-references 
%supported-systems %hurd-systems %cuirass-supported-systems supported-package? 
&package-error package-error? package-error-package &package-input-error 
package-input-error? package-error-invalid-input 
&package-cross-build-system-error package-cross-build-system-error? 
package->bag bag->derivation bag-direct-inputs bag-transitive-inputs 
bag-transitive-host-inputs bag-transitive-build-inputs 
bag-transitive-target-inputs package-development-inputs package-closure 
default-guile default-guile-derivation set-guile-for-build package-file 
package->derivation package->cross-derivation origin->derivation)))'.
popigai: (1) 
--8<---cut here---end--->8---

My workaround was to first pull to the commit corresponding to v1.3.0 and
then using that version to pull to current master, which worked.

-- 
Thanks,
Thiago





bug#52694: time-machine error when leaping from version-1.2.0 to version-1.4.0

2021-12-20 Thread zimoun
Hi Carl,

On Mon, 20 Dec 2021 at 17:28, Carl Dong  wrote:

> $ guix time-machine --branch=version-1.2.0 -- time-machine 
> --commit=6dffced09ecda024e0884e352778c221ad066fd6 -- describe

This works for me:

--8<---cut here---start->8---
$ guix time-machine --branch=version-1.2.0 -- time-machine 
--commit=6dffced09ecda024e0884e352778c221ad066fd6 -- describe
Mise à jour du canal « guix » depuis le dépôt Git « 
https://git.savannah.gnu.org/git/guix.git »...
  guix 6dffced
URL du dépôt : https://git.savannah.gnu.org/git/guix.git
commit : 6dffced09ecda024e0884e352778c221ad066fd6
--8<---cut here---end--->8---

But another commit does not work:

--8<---cut here---start->8---
$ guix time-machine --branch=version-1.2.0 -- time-machine --commit=6786336 -- 
describe
Mise à jour du canal « guix » depuis le dépôt Git « 
https://git.savannah.gnu.org/git/guix.git »...
Backtrace:
In guix/store.scm:
  2042:24 19 (run-with-store # …)
In guix/inferior.scm:
734:8 18 (_ _)
In guix/channels.scm:
876:2 17 (_ _)
836:2 16 (_ _)
In ./guix/monads.scm:
482:9 15 (_ _)
In guix/store.scm:
   1876:8 14 (_ _)
In guix/channels.scm:
   604:36 13 (_ #)
   657:11 12 (_)
In ice-9/eval.scm:
   196:35 11 (_ #(#(#) "/gnu…" …))
   173:47 10 (_ #(#(#(#) # …) …))
   213:37  9 (_ #(#(#(#) # …) …))
159:9  8 (_ #(#(#(#) # …) …))
159:9  7 (_ #(#(#(#) # …) …))
159:9  6 (_ #(#(#(#) # …) …))
In guix/modules.scm:
   157:28  5 (module-closure _ #:select? _ #:dependencies _)
In guix/memoization.scm:
100:0  4 (_ # "/gnu/store/dljzmm…" …)
In ice-9/ports.scm:
   445:17  3 (call-with-input-file _ _ #:binary _ #:encoding _ # _)
In guix/modules.scm:
 69:4  2 (_ _)
In ice-9/boot-9.scm:
  1669:16  1 (raise-exception _ #:continuable? _)
  1669:16  0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1669:16: In procedure raise-exception:
Throw to key `match-error' with args `("match" "no matching pattern" 
(#:re-export-and-replace (delete) #:replace ((define-public* . define-public)) 
#:export (content-hash content-hash? content-hash-algorithm content-hash-value 
origin origin? this-origin origin-uri origin-method origin-hash origin-sha256 
origin-file-name origin-actual-file-name origin-patches origin-patch-flags 
origin-patch-inputs origin-patch-guile origin-snippet origin-modules base32 
base64 package package? this-package package-name package-upstream-name 
package-version package-full-name package-source package-build-system 
package-arguments package-inputs package-native-inputs 
package-propagated-inputs package-outputs package-native-search-paths 
package-search-paths package-replacement package-synopsis package-description 
package-license package-home-page package-supported-systems package-properties 
package-location package-definition-location hidden-package hidden-package? 
package-superseded deprecated-package package-field-location this-package-input 
this-package-native-input lookup-package-input lookup-package-native-input 
lookup-package-propagated-input lookup-package-direct-input prepend replace 
modify-inputs package-direct-sources package-transitive-sources 
package-direct-inputs package-transitive-inputs 
package-transitive-target-inputs package-transitive-native-inputs 
package-transitive-propagated-inputs package-transitive-native-search-paths 
package-transitive-supported-systems package-mapping package-input-rewriting 
package-input-rewriting/spec package-source-derivation package-derivation 
package-cross-derivation package-output package-grafts 
package-patched-vulnerabilities package-with-patches package-with-extra-patches 
package-with-c-toolchain package/inherit transitive-input-references 
%supported-systems %hurd-systems %cuirass-supported-systems supported-package? 
&package-error package-error? package-error-package &package-input-error 
package-input-error? package-error-invalid-input 
&package-cross-build-system-error package-cross-build-system-error? 
package->bag bag->derivation bag-direct-inputs bag-transitive-inputs 
bag-transitive-host-inputs bag-transitive-build-inputs 
bag-transitive-target-inputs package-development-inputs package-closure 
default-guile default-guile-derivation set-guile-for-build package-file 
package->derivation package->cross-derivation origin->derivation)))'.
--8<---cut here---end--->8---

Hum!

(Well I am surprised to not get twice “Updating channel 'guix'”.)


Cheers,
simon





bug#52694: time-machine error when leaping from version-1.2.0 to version-1.4.0

2021-12-20 Thread Carl Dong
Hi all,

A fellow Bitcoin developer has submitted a patch bumping our time-machine to a 
commit on the version-1.4.0 branch for testing. While testing that change, a 
few developers encountered a bug in the time-machine script.

I’ve been able to distill it down to a reproducible form:

$ guix time-machine --branch=version-1.2.0 -- time-machine 
--commit=6dffced09ecda024e0884e352778c221ad066fd6 -- describe

The specific error that you get:
--8<---cut here---start->8---
Updating channel 'guix' from Git repository at 
'https://git.savannah.gnu.org/git/guix.git'...
Updating channel 'guix' from Git repository at 
'https://git.savannah.gnu.org/git/guix.git'...
Backtrace:
In guix/store.scm:
  2042:24 19 (run-with-store # ?)
In guix/inferior.scm:
734:8 18 (_ _)
In guix/channels.scm:
876:2 17 (_ _)
836:2 16 (_ _)
In ./guix/monads.scm:
482:9 15 (_ _)
In guix/store.scm:
   1876:8 14 (_ _)
In guix/channels.scm:
   604:36 13 (_ #)
   657:11 12 (_)
In ice-9/eval.scm:
   196:35 11 (_ #(#(#) "/gnu?" ?))
   173:47 10 (_ #(#(#(#) # ?) ?))
   213:37  9 (_ #(#(#(#) # ?) ?))
159:9  8 (_ #(#(#(#) # ?) ?))
159:9  7 (_ #(#(#(#) # ?) ?))
159:9  6 (_ #(#(#(#) # ?) ?))
In guix/modules.scm:
   157:28  5 (module-closure _ #:select? _ #:dependencies _)
In guix/memoization.scm:
100:0  4 (_ # "/gnu/store/i88h59?" ?)
In ice-9/ports.scm:
   445:17  3 (call-with-input-file _ _ #:binary _ #:encoding _ # _)
In guix/modules.scm:
 69:4  2 (_ _)
In ice-9/boot-9.scm:
  1669:16  1 (raise-exception _ #:continuable? _)
  1669:16  0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1669:16: In procedure raise-exception:
Throw to key `match-error' with args `("match" "no matching pattern" 
(#:re-export-and-replace (delete) #:replace ((define-public* . define-public)) 
#:export (content-hash content-hash? content-hash-algorithm content-hash-value 
origin origin? this-origin origin-uri origin-method origin-hash origin-sha256 
origin-file-name origin-actual-file-name origin-patches origin-patch-flags 
origin-patch-inputs origin-patch-guile origin-snippet origin-modules base32 
base64 package package? this-package package-name package-upstream-name 
package-version package-full-name package-source package-build-system 
package-arguments package-inputs package-native-inputs 
package-propagated-inputs package-outputs package-native-search-paths 
package-search-paths package-replacement package-synopsis package-description 
package-license package-home-page package-supported-systems package-properties 
package-location package-definition-location hidden-package hidden-package? 
package-superseded deprecated-package package-field-location this-package-input 
this-package-native-input lookup-package-input lookup-package-native-input 
lookup-package-propagated-input lookup-package-direct-input prepend replace 
modify-inputs package-direct-sources package-transitive-sources 
package-direct-inputs package-transitive-inputs 
package-transitive-target-inputs package-transitive-native-inputs 
package-transitive-propagated-inputs package-transitive-native-search-paths 
package-transitive-supported-systems package-mapping package-input-rewriting 
package-input-rewriting/spec package-source-derivation package-derivation 
package-cross-derivation package-output package-grafts 
package-patched-vulnerabilities package-with-patches package-with-extra-patches 
package-with-c-toolchain package/inherit transitive-input-references 
%supported-systems %hurd-systems %cuirass-supported-systems supported-package? 
&package-error package-error? package-error-package &package-input-error 
package-input-error? package-error-invalid-input 
&package-cross-build-system-error package-cross-build-system-error? 
package->bag bag->derivation bag-direct-inputs bag-transitive-inputs 
bag-transitive-host-inputs bag-transitive-build-inputs 
bag-transitive-target-inputs package-development-inputs package-closure 
default-guile default-guile-derivation set-guile-for-build package-file 
package->derivation package->cross-derivation origin->derivation)))'.
--8<---cut here---end--->8---

Let me know if there’s any other information I can provide or if this is a dupe!

Cheers,
Carl Dong