From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1.migadu.com ([2001:41d0:1008:1e59::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id mHwjIiTJgGWFBwEAkFu2QA (envelope-from ) for ; Mon, 18 Dec 2023 23:35:16 +0100 Received: from aspmx1.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1.migadu.com with LMTPS id sOb5HiTJgGUgjAAA62LTzQ (envelope-from ) for ; Mon, 18 Dec 2023 23:35:16 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gnu.org header.s=fencepost-gnu-org header.b=bgaGVCzH; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gnu.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1702938916; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=nZgnvjRRTvgkiLZ1yI3L5LC6oNESn3EwdcYX5ZA49aY=; b=gW0wZk7R7haBFkLXNFMEJGyJvthj4ENCHy1tDNbvAfq5eztcnKTb8EV+kMeIH/c7kPxagc mdisKZ9Z7Jya1vKp3V6UJq7KwzdJAGuRJalsogSHbdXwVDeQkuzNnA/7MUx1JsP+USK7sT HyjPR6p+hOSHegGCpHRDtB313Vy9rkTLzSOKxAlPyTrp7q9WuEb3KS6hp4DJ9Ua6yEdf/6 GyrbIhYkbt6Il/2teFkeHBjBV2QW13vnAnKPwdK8vVUhK95jmfeyceFMOFsBRp6YCPO5Yu Ipu2lU7bnoGvOCkKUBrN9knHJTjWXada/JqUKylNpxIr8oVK/NBCKnFWuHXHlw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gnu.org header.s=fencepost-gnu-org header.b=bgaGVCzH; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gnu.org ARC-Seal: i=1; s=key1; d=yhetil.org; t=1702938916; a=rsa-sha256; cv=none; b=TuGK4rhTGGv8ROfpS4+K19VbjGA2OeeZBiUCDz1HtGpor/VmKUSI5lYzWh2DIBaTGqI5oL A/WD2oSvnR8dIjqk+EY9GTMZFLbNo8t/f7o3YWhrFgOzABaCTSoeIMShz9pKjBFT2Q2EpK ntyWv6zsvpwjTSYC6hwlM5wnIEVGeMTLsmbdNIGOlzCuSuQLP0MGjgCYh68lSGS8mC3Ver Msix4cHxQCQ69K+Nwks0T3QQYWaQe6kykMi9hwN5TneFhBIrkUMFhVWtMTz1p3km2a+0O7 DCBl50ILyd6BlGVd9Re5BtXfwhUbjmQeC6HqWebE5+wSQGAheUc36Rb3j/brsQ== 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 4C92657F86 for ; Mon, 18 Dec 2023 23:35:16 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rFMCT-0004VE-BN; Mon, 18 Dec 2023 17:35:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rFMCR-0004V5-Oz for guix-patches@gnu.org; Mon, 18 Dec 2023 17:34:59 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rFMCR-00028Q-H0 for guix-patches@gnu.org; Mon, 18 Dec 2023 17:34:59 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rFMCT-0000iR-Jm for guix-patches@gnu.org; Mon, 18 Dec 2023 17:35:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#42338] [PATCH v5 0/9] Composer build-system Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 18 Dec 2023 22:35:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 42338 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Nicolas Graves Cc: Julien Lepiller , 42338@debbugs.gnu.org Received: via spool by 42338-submit@debbugs.gnu.org id=B42338.17029388432620 (code B ref 42338); Mon, 18 Dec 2023 22:35:01 +0000 Received: (at 42338) by debbugs.gnu.org; 18 Dec 2023 22:34:03 +0000 Received: from localhost ([127.0.0.1]:33761 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rFMBW-0000gA-GB for submit@debbugs.gnu.org; Mon, 18 Dec 2023 17:34:02 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:46112) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rFMBU-0000fb-T8 for 42338@debbugs.gnu.org; Mon, 18 Dec 2023 17:34:01 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rFMBK-0001yM-OS; Mon, 18 Dec 2023 17:33:50 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=nZgnvjRRTvgkiLZ1yI3L5LC6oNESn3EwdcYX5ZA49aY=; b=bgaGVCzHFJciPFm0WdJb ogJcBcTim2mWbULJTO4eDGrb4BrZSYW6D3QHSFT1UwzNrY5H9gZY530FkaYjeaVmSTFwMPgUOJ32t EBTpubIMMSOiaeYmpFBobgWLmhmdbc/5VQ9juQLLs2Vhikmz1X0TJCm2sFB4nWUbjSwjRk+vERomW Zapjb1ibgJEf0dSdZmHkiQPaJ44FWu2T3SMGXxrSS5qvoP1pkbi1cfbbo3sNJXjMkMm45K/J9bY/I thl9ryLtO3EOXrq8Uso5ovc7o04AQJqg9XXMiQIGLtTe8pAufveQPlH16d1LNHDmy4JfZRQfJ7tD2 Ap0CFVP7f+OMCQ==; From: Ludovic =?UTF-8?Q?Court=C3=A8s?= In-Reply-To: <20231102151725.31362-1-ngraves@ngraves.fr> (Nicolas Graves's message of "Thu, 2 Nov 2023 16:16:47 +0100") References: <20200713002055.1553f136@tachikoma.lepiller.eu> <20231102151725.31362-1-ngraves@ngraves.fr> Date: Mon, 18 Dec 2023 23:33:27 +0100 Message-ID: <87sf3zi1jc.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable 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: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Scanner: mx13.migadu.com X-Migadu-Spam-Score: -6.88 X-Spam-Score: -6.88 X-Migadu-Queue-Id: 4C92657F86 X-TUID: 1fhtKc7U2rP/ Hi, Nicolas Graves skribis: > This is the result of my further rework of the composer import and > build-system. The `guix: import: composer` commits can be squashed > easily. > > This is now tested on 94 php packages with all testing enabled except > for 3 packages. I will submit these packages as a whole in the > alphabetical order (the bootstrap order is not worth it IMO) in a new > guix issue. > > Before accepting it, I also would like to propose a change of > names. If me make an analogy with python: > tool: pip <-> composer > package hub: pypi <-> packagist > build-system: python/pyproject <-> php > > Since we only take about 90 lines of real composer code, I would > rather call the build-system php-build-system.=20 > Same thing: instead of `guix import composer` we should rather call > `guix import packagist`. > > If that's OK, I'll change it with the next (and hopefully last!) > version of this build system. > > Nicolas Graves (9): > guix: import: Add composer importer. > gnu: Add composer-classloader. > guix: Add composer-build-system. > guix: import: composer: Use memoization. > guix: import: composer: Fix json->require. > guix: import: composer: More robust string->license. > guix: import: composer: Modern inputs formatting. > guix: import: composer: Full rewrite composer-fetch. > gnu: composer-build-system: Full check phase rewrite. In the interest of moving forward, I pushed this: 6454788a5c build-system/composer: Do not import host-side Guile-JSON modu= les. 9dab758791 build-system: Add =E2=80=98composer-build-system=E2=80=99. e8fd78d54e gnu: Add composer-classloader. b7e3945283 guix: import: Add composer importer. I squashed the importer commits. However, I also add to make way too many fixes to my taste: adding missing #:use-module, fixing unbound variables (guessing=E2=80=A6), fixing typos, untangling and build system commit that was fixing things in the importer, fixing =E2=80=98tests/composer.scm=E2=80=99 which wouldn=E2=80=99= t pass, fixing a case where the importer would return a single value instead of two (breaking recursive imports), and probably others that I forgot. Not great. Could you please take a closer look and see whether anything is amiss at this point? Next, which PHP packages do we add? Julien initially submitted 30ish of them, should we take those? Or are you planning to submit a separate set? It would also be nice if the updater would fill in the =E2=80=98inputs=E2= =80=99 fields of : that would allow =E2=80=98guix refresh -u=E2=80=99 to automatically update inputs. Thanks in advance! Ludo=E2=80=99.