GNU bug report logs - #55273
guile-git is not reproducible

Previous Next

Package: guix;

Reported by: Luke Dashjr <luke <at> dashjr.org>

Date: Thu, 5 May 2022 15:00:02 UTC

Severity: normal

Full log


View this message in rfc822 format

From: Maxime Devos <maximedevos <at> telenet.be>
To: Luke Dashjr <luke <at> dashjr.org>, 55273 <at> debbugs.gnu.org
Subject: bug#55273: guile-git <at> 0.5.2 (irreproducibly?) fails to build and output is non-deterministic
Date: Fri, 06 May 2022 20:23:09 +0200
[Message part 1 (text/plain, inline)]
Maxime Devos schreef op vr 06-05-2022 om 20:09 [+0200]:
> Some interesting things:
> 
> (git/diff.go)
> │ │ │ │ │ │ ├── strings --all --bytes=8 {}
> │ │ │ │ │ │ │ @@ -89,14 +89,15 @@
> │ │ │ │ │ │ │   ( 0(8 @ D8\
> │ │ │ │ │ │ │  B((4B <at> JP
> │ │ │ │ │ │ │  Guile 3.0.7
> │ │ │ │ │ │ │  libgit2->procedure@@git/bindings
> │ │ │ │ │ │ │  raise-git-error@@git/bindings
> │ │ │ │ │ │ │  diff-fold
> │ │ │ │ │ │ │  git/diff.scm
> │ │ │ │ │ │ │ +git/bindings.scm
> │ │ │ │ │ │ │  ice-9/boot-9.scm
> │ │ │ │ │ │ │  libgit2->procedure@@git/bindings
> │ │ │ │ │ │ │  raise-git-error@@git/bindings
> │ │ │ │ │ │ │  diff-fold
> │ │ │ │ │ │ │  DIFF-OPTIONS-VERSION
> │ │ │ │ │ │ │  GIT-SUBMODULE-IGNORE-UNSPECIFIED
> │ │ │ │ │ │ │  GIT-SUBMODULE-IGNORE-NONE
> 
> 
> A similar +git/bindings.scm exists for git/fetch.go, git/tree.go and
> other go files.
> 


Maybe the following is relevant
(https://wingolog.org/archives/2021/05/13/cross-module-inlining-in-guile)
:

> There are a few caveats about this facility, and they are
sufficiently sharp that I should probably fix them some day. The first
one is that for an imported module to expose inlinable definitions, the
imported module needs to have been compiled already, not loaded from
source. When you load a module from source using the interpreter
instead of compiling it first, the pipeline is optimized for minimizing
the latency between when you ask for the module and when it is
available. There's no time to analyze the module to determine which
exports are inlinable and so the module exposes no inlinable exports.

Currently, GUILE_AUTO_COMPILE=0 is set, so dependencies are not
compiled before compiling dependent modules -- except when if one of
the modules was compiled already!  Maybe removing
'GUILE_AUTO_COMPILE=0' will fix things?

Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 2 years and 346 days ago.

Previous Next


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