From debbugs-submit-bounces@debbugs.gnu.org Sat Nov 20 15:08:49 2021 Received: (at 51838) by debbugs.gnu.org; 20 Nov 2021 20:08:49 +0000 Received: from localhost ([127.0.0.1]:43719 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moWfJ-0005KH-GR for submit@debbugs.gnu.org; Sat, 20 Nov 2021 15:08:49 -0500 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:60829) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moWfH-0005Jn-OL for 51838@debbugs.gnu.org; Sat, 20 Nov 2021 15:08:48 -0500 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id B400C5C00CD; Sat, 20 Nov 2021 15:08:42 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Sat, 20 Nov 2021 15:08:42 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:message-id:mime-version:references:subject:to :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=swpPuVGvY/xlFAj3O5KVz6DKvUWtSER2V2nbE1xvCrQ=; b=Zi168FYe WAH1yYXAIXM7C9QW31Y/l91IRgonG/rXHXJqVII+aPF2hiaHCqzLFipQjao3/+tm ESu9EVp2N2zmDmtWXxf4GA8EjeCPR7bXWX0e4nHfy0zfn+eAwMskBctxX0DrMW6B lWegEgfC3IrEupeg7jZK5PhXhI+Zt8lXxxh7w4x7t9V8Zc9UXn2fjBRY6QES+cbN wWmRfzwgexDGMmry32bryDY02Pq5vGHTctrV22goACFIYOehZSVvCQKtuP1v8XNx G00MvCETFDtKoC3rXokFDTCeEB+WsoKptA0mFuWi4Cox0hYnGRWzBkq04Sofoq3d h/BM4lxAPrlo0g== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvuddrgedtgddufeefucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvuffffhfkfgggtgfgsehtqhertddtreejnecuhfhrohhmpefvihhmohht hhihucfurghmphhlvgcuoehsrghmphhlvghtsehnghihrhhordgtohhmqeenucggtffrrg htthgvrhhnpeefieeufffhuedujedttdekvdetffevudeigeefvdekkefhkeetgfehtdeu gfffkeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe hsrghmphhlvghtsehnghihrhhordgtohhm X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 20 Nov 2021 15:08:42 -0500 (EST) From: Timothy Sample To: Philip McGrath Subject: Re: bug#51838: [PATCH 00/11] guix: node-build-system: Support compiling add-ons with node-gyp. Date: Sat, 20 Nov 2021 15:04:51 -0500 References: <5a04aa92-e80d-e11b-235c-b7f5e3a92d00@philipmcgrath.com> <20211120043406.952350-1-philip@philipmcgrath.com> <20211120043406.952350-5-philip@philipmcgrath.com> <8c07272b588fc059f3c445fe1f33c63cce8f31f1.camel@gmail.com> <37768a63-5a4a-b604-2542-e8890fd68a16@philipmcgrath.com> Message-ID: <87o86ebnee.fsf@ngyro.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 51838 Cc: 51838@debbugs.gnu.org, Liliana Marie Prikler X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hello, Philip McGrath writes: > On 11/20/21 02:41, Liliana Marie Prikler wrote: > >> In the resolve-dependencies subprocedure, we could check whether we >> have a matching input somewhere and only include the dependency if we >> do. WDYT? > > [...] > > The other issue is that deleting packages with no matching input by > default would replicate some of the drawbacks of the current `(delete=20 > 'configure)` approach. I think it's better to have an explicit list of > dependencies that Guix is deleting. If eventually we package all of > the missing dependencies for Guix, it would be much easier to find the=20 > packages that ought to use it. And, in the highly dynamic JavaScript > world, I'm reluctant to give up one of the few static checks we > have. If a missing package that really was required were automatically > deleted from "package.json", it seems the failure mode would by a > mysterious runtime error, potentially many steps down a dependency > chain. This is well put. I actually experimented with a similar approach when we updated the Node.js build system. This is a big improvement over deleting the configure phase, which would never scale to more than a handful of packages. Having a build-time check that ensures all the developer-declared dependencies are available (save the =E2=80=9Cabsent=E2= =80=9D ones) will be very helpful when we are maintaining hundreds of JavaScript packages. :) For the patch itself, it would be better to move a lot of your commit message into a comment somewhere in the build system code. If we had a section in the manual for Node packages, it would go there, but alas.... I think most people would be happy to see a comment in the build system code and be saved from having to poke around with =E2=80=98git blame=E2=80= =99. -- Tim