From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id OBImF/j1AmAQSQAA0tVLHw (envelope-from ) for ; Sat, 16 Jan 2021 14:19:36 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id KKH2Evj1AmDvTAAA1q6Kng (envelope-from ) for ; Sat, 16 Jan 2021 14:19:36 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 947579402B3 for ; Sat, 16 Jan 2021 14:19:35 +0000 (UTC) Received: from localhost ([::1]:44798 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1l0mQQ-0005FG-Hp for larch@yhetil.org; Sat, 16 Jan 2021 09:19:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:35442) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l0mPu-0005Eu-Q8 for guix-patches@gnu.org; Sat, 16 Jan 2021 09:19:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:59364) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1l0mPu-0005Se-Ik for guix-patches@gnu.org; Sat, 16 Jan 2021 09:19:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1l0mPu-0002CJ-FO for guix-patches@gnu.org; Sat, 16 Jan 2021 09:19:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#45409] [PATCH v3 3/3] guix: Split (guix substitutes) from (guix scripts substitute). Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 16 Jan 2021 14:19:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45409 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Received: via spool by 45409-submit@debbugs.gnu.org id=B45409.16108067308428 (code B ref 45409); Sat, 16 Jan 2021 14:19:02 +0000 Received: (at 45409) by debbugs.gnu.org; 16 Jan 2021 14:18:50 +0000 Received: from localhost ([127.0.0.1]:42677 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l0mPi-0002Bs-E4 for submit@debbugs.gnu.org; Sat, 16 Jan 2021 09:18:50 -0500 Received: from mira.cbaines.net ([212.71.252.8]:49882) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l0mPf-0002Bj-Ik for 45409@debbugs.gnu.org; Sat, 16 Jan 2021 09:18:49 -0500 Received: from localhost (188.29.101.63.threembb.co.uk [188.29.101.63]) by mira.cbaines.net (Postfix) with ESMTPSA id B150227BC13; Sat, 16 Jan 2021 14:18:46 +0000 (GMT) Received: from capella (localhost [127.0.0.1]) by localhost (OpenSMTPD) with ESMTP id 43de36ae; Sat, 16 Jan 2021 14:18:44 +0000 (UTC) References: <20210104211927.14959-1-mail@cbaines.net> <20210104211927.14959-3-mail@cbaines.net> <87r1mzrqgk.fsf@gnu.org> <87zh1kidoc.fsf@cbaines.net> <87im83eha5.fsf@gnu.org> User-agent: mu4e 1.4.14; emacs 27.1 From: Christopher Baines In-reply-to: <87im83eha5.fsf@gnu.org> Date: Sat, 16 Jan 2021 14:18:41 +0000 Message-ID: <87sg717yny.fsf@cbaines.net> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: 45409@debbugs.gnu.org Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -4.45 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: 947579402B3 X-Spam-Score: -4.45 X-Migadu-Scanner: scn0.migadu.com X-TUID: AWyFm1PZNiSv --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Ludovic Court=C3=A8s writes: >> I think it's possible to separate it out if some of the error handling >> is pushed down in to the http procedures, and if when they get an error >> indicating the connection is unusable, they close the port. > > Ideally the (web =E2=80=A6) modules would do that (that=E2=80=99s what yo= u mean, right?) > but then we=E2=80=99d have to wait for Guile proper to implement these th= ings. Well, I'm unsure, all I'm trying to do at the moment is push the connection handling down in to http-multiple-get [1]. 1: https://issues.guix.info/45409#22 While thinking about this just now, I think there's the possibility of connection caching causing issues in process-substitution. I'm guessing the exceptions could occur anywhere from in http-fetch where it calls http-get, to back in process-substitution where it finishes reading from the port (I'm unsure where, I loose track of where the port is used). There was a little bit more error handling previously, as the use of fetch was wrapped in with-cached-connection, but given that the response body hasn't been read by this point, I don't think the previous state was very safe either. >> I've pushed some rough commits for this to this branch: >> >> https://git.cbaines.net/guix/log/?h=3Dprepare-to-move-guix-scripts-sub= stitute-code >> >> I'm still struggling with the tests, currently make check hangs, I think >> on the challenge tests, and I don't currently have a plan to work out >> why the test is hanging. > > Overall the approach LGTM. > > How about first getting (guix narinfo) in =E2=80=98master=E2=80=99 (the b= its we agreed > on), and then tackling the rest so that it=E2=80=99s less daunting? I've pushed the (guix narinfo) addition now, with the patch that changed the unauthorized substitute handling. > Also, I=E2=80=99d like to get the zstd patches in. :-) I've rebased on master, tweaked the commit messages, and send a set of v4 patches and while they don't create the (guix substitutes) module, I think they unpick the bits I'd like to move out from the code doing the connection caching. Thanks, Chris --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAmAC9cFfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh aW5lcy5uZXQACgkQXiijOwuE9XeKxhAAmRPi9iXgECK2YxEsgNNDOpshCJmL2wsv np37G3S1c0odAic2Pou95legV6D7zQqSgcknLLdb5Xu2EmRYlixcob3SVMoqIShX kHObumUOBRKsInPX0TU11HDJq1DCeO27IJDYNA0Fs1ZBTWBjR1JIr6VJ8B7qoKLH YnlYACJQvVZo7LA29vuCjrgXM+QEMgykD7TtUBc4940GwHHFtg1KTr92IRulkgPi lZsM/dwziNkvJqfZzJzMxVgJrfJOd60F3MG9BPdfkZEe8MlivToOD1uohYbYYnaV 27q1rO2+0WUv/5jwkiPA/N1SKiIpobRbtYSwtvzKVgAV7P0gfhrWTvvjGLP9/ynk 22XzIPn44/EzCl5DiL2hN11aWLNznDvhVbu1/ixZEnhWz3+5OJMcu4SEjvLo1gGu HXkB6vCNVV/pJPayWup0cG4+zmL6auyUwUolesYSRzdAkMoayClk1Nm3EPlWwgep p9x0f4OJznLUsIrcdvjxFP0tIjAHMQLIqmPpFK3Zb6Jf4iXYkm6S1MEMmtRvwKyt iAXyi5w/bhDvTii9gwlA/EPmjCIctPOI6cpv761Z+agFiW3JHc3Cq7tC9wuy4gTC YX5WTvVRh3KZI14pHddETWUP5WzRfdjpKUTf16At0ZSsSaZK6qmnkesRgkb2Ze/I 5+4JjbesYps= =2OeU -----END PGP SIGNATURE----- --=-=-=--