GNU bug report logs - #35861
[wishlist] Improve packaging error handling and tooling

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix; Severity: wishlist; Reported by: "pelzflorian (Florian Pelz)" <pelzflorian@HIDDEN>; dated Wed, 22 May 2019 21:56:01 UTC; Maintainer for guix is bug-guix@HIDDEN.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 22 May 2019 21:55:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 22 17:55:04 2019
Received: from localhost ([127.0.0.1]:43221 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1hTZCQ-0008NF-2A
	for submit <at> debbugs.gnu.org; Wed, 22 May 2019 17:55:02 -0400
Received: from eggs.gnu.org ([209.51.188.92]:57228)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <pelzflorian@HIDDEN>) id 1hTZCO-0008Mx-AG
 for submit <at> debbugs.gnu.org; Wed, 22 May 2019 17:55:01 -0400
Received: from lists.gnu.org ([209.51.188.17]:37114)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <pelzflorian@HIDDEN>)
 id 1hTZCJ-0000gW-3G
 for submit <at> debbugs.gnu.org; Wed, 22 May 2019 17:54:55 -0400
Received: from eggs.gnu.org ([209.51.188.92]:43369)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <pelzflorian@HIDDEN>) id 1hTZCH-0001l8-Pd
 for bug-guix@HIDDEN; Wed, 22 May 2019 17:54:54 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,URIBL_BLOCKED
 autolearn=disabled version=3.3.2
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <pelzflorian@HIDDEN>) id 1hTZCG-0000dG-Jv
 for bug-guix@HIDDEN; Wed, 22 May 2019 17:54:53 -0400
Received: from pelzflorian.de ([5.45.111.108]:60012 helo=mail.pelzflorian.de)
 by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <pelzflorian@HIDDEN>)
 id 1hTZCF-0000c1-Ot
 for bug-guix@HIDDEN; Wed, 22 May 2019 17:54:52 -0400
Received: from pelzflorian.localdomain (unknown [5.45.111.108])
 by mail.pelzflorian.de (Postfix) with ESMTPSA id 5D42E36003D
 for <bug-guix@HIDDEN>; Wed, 22 May 2019 23:54:49 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=pelzflorian.de;
 s=mail; t=1558562089;
 bh=IwMvhW6wvMsg34+BNrrK9q2/pXzCjS1XqvbES1+pqrA=;
 h=Date:From:To:Subject;
 b=HQh1NccSgjL4JQEURCXOqX+lEpf5G9VzWs0bohEilZ71BW9ImhwL47DxAxBS2hjoW
 fSOOPoVtSY35ILAKYzfGxpDbu7hMP9hWQ7YibwHX6nLJCp69+rj9KcKyvDMcxIhox3
 Qhln9zfDqextn33Gn3UdSieNq7UDY0GtxDR9v4F8=
Date: Wed, 22 May 2019 23:54:49 +0200
From: "pelzflorian (Florian Pelz)" <pelzflorian@HIDDEN>
To: bug-guix@HIDDEN
Subject: [wishlist] Improve packaging error handling and tooling
Message-ID: <20190522215449.3nuif65jogi537c7@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
User-Agent: NeoMutt/20180716
Content-Transfer-Encoding: quoted-printable
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 5.45.111.108
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Spam-Score: -1.4 (-)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.4 (--)

I believe for package definitions

* known triggers for unhelpful error messages should get more graceful
  error messages,

* there should be no fixed truncation of error messages and

* there could perhaps be more tooling like single-stepping through the
  build process.

For example in <https://issues.guix.info/issue/35640> I got an
unhelpful error message:

[ 11%] LOAD     guix/scripts/search.scm
[ 11%] LOAD     guix/scripts/gc.scm
[ 11%] LOAD     guix/scripts/hash.scm
[ 11%] LOAD     guix/scripts/pack.scm
Backtrace:
In ice-9/boot-9.scm:
   222:29 19 (map1 (((guix utils)) ((guix store)) ((guix #) # (#)) =E2=80=
=A6))
   222:29 18 (map1 (((guix store)) ((guix status) #:select (#)) (#) =E2=80=
=A6))
   222:29 17 (map1 (((guix status) #:select (#)) ((guix grafts)) # =E2=80=
=A6))
   222:29 16 (map1 (((guix grafts)) ((guix monads)) ((guix #)) (#) =E2=80=
=A6))
   222:29 15 (map1 (((guix monads)) ((guix modules)) ((guix #)) (#) =E2=80=
=A6))
   222:29 14 (map1 (((guix modules)) ((guix packages)) ((guix #)) # =E2=80=
=A6))
   222:29 13 (map1 (((guix packages)) ((guix profiles)) ((guix #)) =E2=80=
=A6))
   222:29 12 (map1 (((guix profiles)) ((guix describe)) ((guix #)) =E2=80=
=A6))
   222:29 11 (map1 (((guix describe)) ((guix derivations)) ((# #)) =E2=80=
=A6))
   222:29 10 (map1 (((guix derivations)) ((guix search-paths)) (#) =E2=80=
=A6))
   222:29  9 (map1 (((guix search-paths)) ((guix build-system #)) # =E2=80=
=A6))
   222:29  8 (map1 (((guix build-system gnu)) ((guix scripts #)) # =E2=80=
=A6))
   222:29  7 (map1 (((guix scripts build)) ((guix self) #:select =E2=80=A6=
) =E2=80=A6))
   222:29  6 (map1 (((guix self) #:select (make-config.scm)) ((=E2=80=A6)=
) =E2=80=A6))
   222:29  5 (map1 (((gnu packages)) ((gnu packages bootstrap)) (=E2=80=A6=
) =E2=80=A6))
   222:29  4 (map1 (((gnu packages bootstrap)) ((gnu packages =E2=80=A6) =
=E2=80=A6) =E2=80=A6))
   222:17  3 (map1 (((gnu packages compression) #:hide (zip)) ((=E2=80=A6=
)) =E2=80=A6))
  2830:10  2 (resolve-interface (gnu packages compression) #:select _ =E2=
=80=A6)
   260:13  1 (for-each #<procedure 52470e0 at ice-9/boot-9.scm:2830=E2=80=
=A6> =E2=80=A6)
In unknown file:
           0 (scm-error misc-error #f "~A" ("no binding `zip' to h=E2=80=A6=
") =E2=80=A6)

ERROR: In procedure scm-error:
no binding `zip' to hide in module (gnu packages compression)


I wished it had been possible to step (or reverse-step) through the
build process like in gdb for C programs, but I presume this might be
too difficult to realize for now (?).

Then the following was a non-obvious error I got when building an
earlier revision of usb-modeswitch-data because I used #:modules (=E2=80=A6
(guix packages)) in the arguments to the trivial-build-system of
usb-modeswitch-data.

florian@florianmacbook ~/git/guix [env]$ bzcat /var/log/guix/drvs/pz/z8vj=
c5ba6slfry3jipczlvv84ww5j3-module-import-compiled.drv.bz2
Backtrace:
In system/base/compile.scm:
    152:6 19 (compile-file "/gnu/store/6mww1gn4l70m4j4psj5966w0jdsi?" ?)
     43:4 18 (call-once _)
In ice-9/boot-9.scm:
    841:4 17 (with-throw-handler _ _ _)
In system/base/compile.scm:
    59:11 16 (_)
   155:11 15 (_ #<closed: file 8dc5b0>)
   235:18 14 (read-and-compile #<input: /gnu/store/6mww1gn4l70m4j4p?> ?)
   183:32 13 (compile-fold (#<procedure compile-tree-il (x e opts)>) ?)
In ice-9/boot-9.scm:
   2312:4 12 (save-module-excursion #<procedure a16c00 at language/s?>)
In language/scheme/compile-tree-il.scm:
    31:15 11 (_)
In ice-9/psyntax.scm:
  1235:36 10 (expand-top-sequence ((define-module (guix #) # (?) ?)) ?)
  1182:24  9 (parse _ (("placeholder" placeholder)) ((top) #(# # ?)) ?)
   285:10  8 (parse _ (("placeholder" placeholder)) (()) _ c&e (# #) #)
In ice-9/eval.scm:
   293:34  7 (_ #<module (#{ g3136}#) 8f78c0>)
In ice-9/boot-9.scm:
   2874:4  6 (define-module* _ #:filename _ #:pure _ #:version _ # _ ?)
  2071:24  5 (call-with-deferred-observers #<procedure 12a0aa0 at ic?>)
  2887:24  4 (_)
   222:17  3 (map1 (((guix utils)) ((guix records)) ((guix store)) ?))
   2803:6  2 (resolve-interface _ #:select _ #:hide _ #:prefix _ # _ ?)
In unknown file:
           1 (scm-error misc-error #f "~A ~S" ("no code for modu?" ?) ?)
In ice-9/boot-9.scm:
   752:25  0 (dispatch-exception _ _ _)

ice-9/boot-9.scm:752:25: In procedure dispatch-exception:
no code for module (guix utils)

When I did `./pre-inst-env guix lint usb-modeswitch-data`, it did not
find the error either.

Regards,
Florian




Acknowledgement sent to "pelzflorian (Florian Pelz)" <pelzflorian@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-guix@HIDDEN. Full text available.
Report forwarded to bug-guix@HIDDEN:
bug#35861; Package guix. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 25 Nov 2019 12:00:02 UTC

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