GNU bug report logs - #55030
[PATCH 00/30] gnu: elm: Update to 0.19.1. Add build system & importer.

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-patches; Reported by: Philip McGrath <philip@HIDDEN>; Keywords: patch; dated Tue, 19 Apr 2022 23:28:02 UTC; Maintainer for guix-patches is guix-patches@HIDDEN.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:14:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:14:43 2022
Received: from localhost ([127.0.0.1]:33616 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBv-0006W7-5x
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:42 -0400
Received: from mail-ua1-f41.google.com ([209.85.222.41]:38787)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBp-0006VX-Np
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:33 -0400
Received: by mail-ua1-f41.google.com with SMTP id g14so1138842uan.5
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:14:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=PAOLbWDZllBiibS5fe/4ktE6OmW5UFXGG6AAC5RWPAE=;
 b=HkUX8ndMGFh1nQtNoz52LW9GF9UCcVUwSsOkE6k0Hhb14dJtILF6wihJUNGbSyBZgO
 ZFOO+VXHaDhlGnILf3Q1XgHKmonkI3TxbJgrpg2b0Zz3GPBjKM8OgH88SCrtiXgF0KBp
 9IPPq2OyFharhBAKuOFMAvf3HXuB/d95FX6XB9ud+xeErMFkdL3TvT2L4GacP+WdYQqo
 SsSXPEOioz216FWb/HMU2aKZBmYQ4fSxqhG16hwvNVwy/fN1X9944ej6/D2gKpLyg9Ac
 IaD2G9dtbM6qBykfXLILinJmKHxuRZInjLRBxb3H3yG5jTLYJpUDi7I7/qSe2XSmUzIO
 VshQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=PAOLbWDZllBiibS5fe/4ktE6OmW5UFXGG6AAC5RWPAE=;
 b=OQMuo6xeabuD3RODTjrATWUTqXXE6zgp1wuQjMMO43zZKeJedtrwogU6h+6p1iWTs0
 3d7dQi2K1sC19B6UYrfU1ysn66Iqk0/KHBp3rTds04VWkpRG6WxavxAof997YHylqqcC
 J62PybcIgNUJWHx6X7EkZfJX/t4ZRK8QpQyBNz2tWu3E1+NocYtofHEOmTbeXcMphSvY
 5A9ImVlosY2z1yJNG6Yp0ak3TE+sh18zoAv/uEYb9FeinZN1ikaOlDhDs9tXfGPLz35T
 fTF8qKA/ZCZHbVFgfA2ZiNA7lu0EZP2MxGw3AvOznBo6hxlPIpkZlOAhXwuIofrlkL57
 96gg==
X-Gm-Message-State: AOAM530PJ9jPztfk5wlX3mZDY7HWl72BOXG09OMQk2YcEV1XcA2iv2Ia
 ThbJvdCFfLwkI1Ka2EAKEsEn5QAMCeXWmZWj
X-Google-Smtp-Source: ABdhPJxTXmq18QiJFUold1jwOBX66EB1vhj2DXhoHdt7iToHRYZHiA0vxWIyXmVraAQGBYtW4URA9A==
X-Received: by 2002:ab0:28d8:0:b0:368:c19f:97c7 with SMTP id
 g24-20020ab028d8000000b00368c19f97c7mr592125uaq.32.1652897664308; 
 Wed, 18 May 2022 11:14:24 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 q128-20020a674386000000b0032d80b7fceesm230768vsa.22.2022.05.18.11.14.23
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:14:24 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 34/34] gnu: Add elm-terezka-elm-charts.
Date: Wed, 18 May 2022 14:11:21 -0400
Message-Id: <5b36a71666f9aff4b5961eca00fb5d5120aaa517.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-terezka-elm-charts): New variable.
---
 gnu/packages/elm.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index cf203addd5..74a43a4ff2 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -760,3 +760,35 @@ (define-public elm-terezka-intervals
 10, 5, 3, 2, or 1 (adjusted to magnitude, of course!).  For dates, I try to
 hit whole days, weeks, and months or hours, minutes, and seconds.")
     (license license:bsd-3)))
+
+(define-public elm-terezka-elm-charts
+  (package
+    (name "elm-terezka-elm-charts")
+    (version "3.0.0") ;; NOTE! Tags like 5.1.0 are from an OLDER version.
+    (source
+     (elm-package-origin
+      "terezka/elm-charts"
+      version
+      (base32 "17syq73jwldc7fk7snm5k8s85nsvxyprb34rs1rwjsapc1vii7hc")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-terezka-intervals
+           elm-ryannhg-date-format
+           elm-time
+           elm-svg
+           elm-json
+           elm-html
+           elm-core
+           elm-debois-elm-dom))
+    (home-page
+     "https://elm-charts.org")
+    (synopsis "SVG chart components in Elm")
+    (description
+     "Make SVG charts in all Elm.  The package can draw charts at a variety of
+different levels of customization, from basic charts with standard features to
+very custom styles.  The library also allows including your very own SVG
+elements while still easily utilizing the coordinate system calculated from
+your data, as well as editing the SVGs made by the package.  It has great
+support for interactivity, layering different charts, and adding irregular
+details.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:14:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:14:28 2022
Received: from localhost ([127.0.0.1]:33612 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBn-0006Vg-TM
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:28 -0400
Received: from mail-vk1-f171.google.com ([209.85.221.171]:46835)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBl-0006VB-MH
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:25 -0400
Received: by mail-vk1-f171.google.com with SMTP id m203so1558913vke.13
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:14:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=9uKndU8gCLNoGy8MWGuZ/0DQioP41uBs+oqoZDBSf5Y=;
 b=Q1AXyTDE7QSaRyPMs5RI66rs1Dqtt4sJHQ7kAbYbSntPBmAAnaDl3nosKAcNgzE3Qd
 CBIoig9DKd+ksA89FyJvorev3DV+ez0N3m8kBTgTSH3oQKt1ZPUpgdOW5kcBTi3qJorU
 ZXXGC3/0j0Ep4ekoghbUpz+KAKeiq8y92lkXbb1+E103u/XxRagAVLKywdbhUidNj9su
 41jK49uhGFluDuPNVg1bBuHVHfCzXzgJDlteeafRlmo0vklVEVt7hHCJF4oEg9SN4HAe
 eQaJTwTlzWWcMR/G7oTi8Fw9ANsJNwMQUgUd+TeL8lSHnP6K2mMUKt+FVKcyChGax7+C
 Q0uA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=9uKndU8gCLNoGy8MWGuZ/0DQioP41uBs+oqoZDBSf5Y=;
 b=myNueBzlY6wo16Pe0cLG63ltK0t7xz4elKzQzCHUgd/pSzeVcn2oKYHuStoJYV424Z
 OSEiqiMgw6MSV478kAlLcfFfph1RM6Sf3sAPfhEqg5lXWp3y7/k+gEVRi58vXdyiFAwU
 iB5/r6XRuKzbHpg+gm5LuGylrFKpWJ4tnebspSRHBP/rPMSLXITYaxRfmq+IIRg2UCbB
 npM7gB5oU6WgdZUhsMHr9sDYLFYHCoaekHSHBWojExWCwOTYgymn7jnryDTAF/eZ4f2T
 qyasQQxCozhyQKRDLY/eQ3E4KIr2CxZlYteOiXD3VErqQQrMtDNkIhFlDpkjRrHDHO82
 yQxA==
X-Gm-Message-State: AOAM530esdpujMhJ9Gpyu75lB1gVuMVSJyyTKmXp2LAcr3oXz0ndfmVv
 upKsfOl7V0m3W3uZd4wWLuLKCvB3cQe6TYFe
X-Google-Smtp-Source: ABdhPJz+46g4CBlnVAt6NrOKatsI6nVI8dchgWzhEwijEsiFRSwAGVODiE+5HWF1xlhrWGSBjvMZxA==
X-Received: by 2002:a1f:2987:0:b0:356:e150:67ad with SMTP id
 p129-20020a1f2987000000b00356e15067admr356855vkp.13.1652897660260; 
 Wed, 18 May 2022 11:14:20 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 126-20020a670784000000b0032d275e690esm237879vsh.14.2022.05.18.11.14.19
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:14:19 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 33/34] gnu: Add elm-terezka-intervals.
Date: Wed, 18 May 2022 14:11:20 -0400
Message-Id: <c902d5d6d87807595ecd0c4b508a185a0e30c513.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-terezka-intervals): New variable.
---
 gnu/packages/elm.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index a9b24b3b00..cf203addd5 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -729,3 +729,34 @@ (define-public elm-ryannhg-date-format
 strings, which makes formatting code more readable and can catch some errors
 at compile time.")
     (license license:bsd-3)))
+
+(define-public elm-terezka-intervals
+  (package
+    (name "elm-terezka-intervals")
+    (version "2.0.1")
+    (source
+     (elm-package-origin
+      "terezka/intervals"
+      version
+      (base32 "0h3im58sa6awyppch1v8ppcrzwc5h48yn45crx98m8zs4isx91lj")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-ryannhg-date-format
+           elm-myrho-elm-round
+           elm-justinmimbs-time-extra
+           elm-time
+           elm-svg
+           elm-json
+           elm-html
+           elm-core
+           elm-danhandrea-elm-time-extra))
+    (inputs (list elm-explorations-test))
+    (home-page "https://package.elm-lang.org/packages/terezka/intervals/2.0.1")
+    (synopsis "Produce nice intervals for Elm charts")
+    (description
+     "This package provides an Elm library for producing nice intervals for
+charts.  It's useful in combination with @code{terezka/elm-charts}.  When I
+say ``nice'', I just mean that I try to calculate intervals which begin with
+10, 5, 3, 2, or 1 (adjusted to magnitude, of course!).  For dates, I try to
+hit whole days, weeks, and months or hours, minutes, and seconds.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:14:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:14:22 2022
Received: from localhost ([127.0.0.1]:33609 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBi-0006VO-KC
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:22 -0400
Received: from mail-vk1-f175.google.com ([209.85.221.175]:41965)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBh-0006Ul-EY
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:21 -0400
Received: by mail-vk1-f175.google.com with SMTP id y27so1569897vkl.8
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:14:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=bGvWWVO325PrGcpdFbX/GnieS/ftbRJ1F024ai1kiOU=;
 b=aK5qs4lNipm3JKNXh5Fs69gKGJMEkhus7IqKrq06qIB1BHZb/O9DLHN4wnMjdoXRfB
 NDasqmsi6pDp3Xj4QA6pQCKTn08PyYF12rOL35gdkUg9Y7V+aTV82krlT9rJY/KHkt+E
 69lNqHcA5/i81qY/YvFO1PDPvCUFgg7QcnaEUPOgpnBz9S3alFt06pgsbEDoSrP3cn+U
 Zra+LvylRy/5CoPnggzvUyChEAHiMY3b7mxF/HzNxdGq9fHbWF6+IXYF1AV2CcJv0pnI
 RRIci7rcHvllFaq0RssfXEGjrNh/YnIhBeETkLIopl1cVZ6ttlP+pvejn2yZFs3EfUW/
 9pVg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=bGvWWVO325PrGcpdFbX/GnieS/ftbRJ1F024ai1kiOU=;
 b=quZtIdFBerIR+402WqwsJ96tTyfvGilb5HK1FpaGunMlWm5+H18EemPhnmkNGVVPfd
 JHd+eWs0ZR55bf2kRDOYWEkoF7yXl+u/OAY5+uOG17aQVUSkZizAGts3qhWL+fCzn5y/
 h0IksYU4uDwZcXU0T1U+mXwiWbI68+hsUMgLfLBE8XQvwOwQrSvEcavf5hgEOZ0D6yNp
 dIAPRGYSltpgtRcYpqy3jPsL5T/I8Qq8LXBbKP5KlIP3pPYQHTbmrCYYBXv9YOgj2P+H
 QBGaHXB72TQ0Uo7Xxymn8v7/OsjDJPas8rS5ABLumK6FURjAh5laGfMa5hiz+hBZP2m1
 xlOQ==
X-Gm-Message-State: AOAM531d6sAtxYoShIBIIAOVpGdmQYVdK0yXUHu+ETCZf3DRmFYGIxQO
 MrXRNFGGSIRxxHbaAG626n2fUT69vJEGwXX8
X-Google-Smtp-Source: ABdhPJwX35Qo9i9IB4B8pZVptVRIW2IOjOjO9Jszc8RsP/OdkFcBpoLWA6J7PPpcL/xh/YxBQbBcmw==
X-Received: by 2002:a05:6122:d9e:b0:331:33da:48e5 with SMTP id
 bc30-20020a0561220d9e00b0033133da48e5mr305395vkb.35.1652897655912; 
 Wed, 18 May 2022 11:14:15 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 u26-20020ab0299a000000b003626f894df7sm269957uap.37.2022.05.18.11.14.15
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:14:15 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 32/34] gnu: Add elm-ryannhg-date-format.
Date: Wed, 18 May 2022 14:11:19 -0400
Message-Id: <28871883e4645abbefe81c8168957209cb1f2ecf.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-ryannhg-date-format): New variable.
---
 gnu/packages/elm.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index a4fb99625a..a9b24b3b00 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -707,3 +707,25 @@ (define-public elm-myrho-elm-round
 remaining digits are rounded.  It rounds, floors and ceils the @dfn{common}
 way (i.e. half up) or the @dfn{commerical} way (ie. half away from zero).")
     (license license:bsd-3)))
+
+(define-public elm-ryannhg-date-format
+  (package
+    (name "elm-ryannhg-date-format")
+    (version "2.3.0")
+    (source
+     (elm-package-origin
+      "ryannhg/date-format"
+      version
+      (base32 "0razh6im5qwmla10knk67j8w11mqlqlyfnclykbfl06kaksfm3sp")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-time elm-core))
+    (inputs (list elm-explorations-test))
+    (home-page
+     "https://package.elm-lang.org/packages/ryannhg/date-format/2.3.0")
+    (synopsis "Reliable advanced dates formatting for Elm")
+    (description
+     "This package provides Elm programs with reliable, powerful tools for
+formatting dates and times.  It uses Elm's type system instead of format
+strings, which makes formatting code more readable and can catch some errors
+at compile time.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:14:20 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:14:20 2022
Received: from localhost ([127.0.0.1]:33606 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBg-0006V4-Bh
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:20 -0400
Received: from mail-ua1-f53.google.com ([209.85.222.53]:34622)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBc-0006UQ-RY
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:17 -0400
Received: by mail-ua1-f53.google.com with SMTP id q1so1141621uao.1
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:14:16 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=zKDB2r8reIkbrMZDNnjJFmW1i4KLlhkNnN9t1v52hh0=;
 b=Ow1wVZ7VOQa7KdV0Hk7xQIkVjJg43X99VNRtLcIA4h/X1RBr267VtaoYH51N1FTR/s
 UeIXcmIeqxhhbEcySfCKZS1K0xMhaJ3urvTQjUHBzJIcIk9ud1LKzTuP12dSMvx6nlh4
 zYV0zCIZvnzWzFBjdxchfR4z4MP2jvjbB+N+gsbPEBG7NfReL7FJ2aAVOgQ6261FUueQ
 cLd6aQSoe83o22QToVOrpuBSqeIk0Y7IQchUFB938R2PahqdtlPrYgS4BSmmtrsW26X4
 YS7iUtjuvpWWeRf/Ar4onveHCTDv4xslr73aSJYmiTaPuIAM3NmSdtKiXk2oo9xGyZ2m
 ubCg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=zKDB2r8reIkbrMZDNnjJFmW1i4KLlhkNnN9t1v52hh0=;
 b=zxcZi1skIiNUve1A2CybCc/KoRmbdjnmdNEBBjSiI5dHw1tkPBOxE9dsByq1ThIW6l
 q09z15RRGANC3+Zdyzu5UrNAbRs0+LN8mH6vBpZPbJESyRHQxhoIRxfoovXe8DXu3eEn
 u4Y3NZuQWUKBcZBXquj/+ozcZee7+7ZQ6ZJyw6sW9V3DkpR1C+qjREeiX5pgygaZstUh
 itYN8mOeU7dtL5Uv8nhBAMpxNB24PthpimQKrpnwxDale75bELX355KyXncXZtBHBzRh
 eZ/t84HodzJJFdHVXB9kUFBcwBNkRCWnme3K/DehdWrfxtscyYhhR4ZlZx8CknbNNRxO
 P/Cg==
X-Gm-Message-State: AOAM531jX1i19gPM288aSz4Gw3QniZbD0E7kXfZZnfc1M+4+r1tX+97X
 pfo10fIHhijPrzP8xjXR9ehlTc4zEKSeTOy/
X-Google-Smtp-Source: ABdhPJzZV+Q0n1XGLYXPyVzNB1HkvTtTJeu6rv/3/ONfWTyGjFcv+fdCXSrBX7rhks2Ov8xLKKFsAA==
X-Received: by 2002:ab0:70d7:0:b0:359:f05c:38bb with SMTP id
 r23-20020ab070d7000000b00359f05c38bbmr613365ual.76.1652897651410; 
 Wed, 18 May 2022 11:14:11 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 j16-20020a056102241000b00335e2812587sm105903vsi.3.2022.05.18.11.14.10
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:14:11 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 31/34] gnu: Add elm-myrho-elm-round.
Date: Wed, 18 May 2022 14:11:18 -0400
Message-Id: <7480f03a36854d5119aaef0f6da617f18d2e20e2.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-myrho-elm-round): New variable.
---
 gnu/packages/elm.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 45f137dcdc..a4fb99625a 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -686,3 +686,24 @@ (define-public elm-justinmimbs-time-extra
      "This package provides extra functions for working with @code{Posix}
 times from @code{elm/time}.")
     (license license:bsd-3)))
+
+(define-public elm-myrho-elm-round
+  (package
+    (name "elm-myrho-elm-round")
+    (version "1.0.4")
+    (source
+     (elm-package-origin
+      "myrho/elm-round"
+      version
+      (base32 "0y3j43wr815cvwz5310zalnqzpg3hw8h127zjjlf6x8ynapc2mdb")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (inputs (list elm-explorations-test))
+    (home-page "https://package.elm-lang.org/packages/myrho/elm-round/1.0.4")
+    (synopsis "Flexible rounding of Elm @code{Float}s")
+    (description
+     "This library converts a @code{Float} to a @code{String} with ultimate
+control how many digits after the decimal point are shown and how the
+remaining digits are rounded.  It rounds, floors and ceils the @dfn{common}
+way (i.e. half up) or the @dfn{commerical} way (ie. half away from zero).")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:14:20 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:14:20 2022
Received: from localhost ([127.0.0.1]:33604 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBg-0006Ux-2z
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:20 -0400
Received: from mail-vs1-f42.google.com ([209.85.217.42]:41782)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBU-0006Sv-Pa
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:09 -0400
Received: by mail-vs1-f42.google.com with SMTP id m2so2910127vsr.8
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:14:08 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=n65mZcO7eDn+p9wK5CTkcZ3Xq3ctOv3A+sJ5oCYhlpw=;
 b=P2gujc6+5JsrCKc83s4Ie+KHdRJYDTbP79OPLTeea7mArBjUIqv+l5xEqPCgWhCK5l
 mKITvLjKSxxpSdCVDPH11dyemXZxu+rCGFW8UqHKs3XAEPfNnSpf9t0TwPV+W2Mrrq1W
 UQoSj67n6IJ7yu8B1IsS4Ewheeil7xeoVX3KF5rbMPn4bsZmrhRYJtNnquZSuFO73wiT
 bdQk3FsDILIAS9ay/jYDy9SGMQO7zneciazWCveInJ2MhBNzVv+xafGYc/AtX7/kfd+O
 vV5z8d5suM9Yo5rTLEBtnOJRxWelJVSQFBVx9dJnipMHz9KG8buXJaZFpQ01KYseeLTI
 U7pA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=n65mZcO7eDn+p9wK5CTkcZ3Xq3ctOv3A+sJ5oCYhlpw=;
 b=TLZSFtxaW7KlTH4zG+kxnifx0nA83EvTLXU4ALCLyZ400cmVbd0mKdNg/m5R5hW01M
 fAVFQuYF7EOMm/7XgZesejpbgGzYEm9qQMzdouerJAWvbLBitOQBiQjUKfBtUAfq5wvH
 Aapr9COeOcCQjLFxRO6cSMSlA0H0X74l7zlDe3L9BGI0PCA6QDlch7HPWDp9DvKb1UyO
 lo+ha7CO3fgUzNcjOQL3oIGqLRhWrXtfTj7E092cL/PZM7REuhDlgpxcLdZEzlQRclpK
 R8cwSJMNzNCpwCJCX+oLeTTttdnL4W0C0u79ZlQH08K53LLlrYQW5OH1VLqrg897l4uE
 aFoA==
X-Gm-Message-State: AOAM531X3G0THq/R0SE4naRTsnUKe397ef4uGRSnaT+bTpf1C/OOrvlN
 lYBsoqrvCETUAyBsI1vpa5rTbD9YPvwruudj
X-Google-Smtp-Source: ABdhPJz3noXPDGXLIsbXUV6b0fchwg5TAG+ck0teWQaklCIZY3yUgxzExQiDQGYENC0DnJ0bbzi3VA==
X-Received: by 2002:a05:6102:1cc:b0:32c:de18:3115 with SMTP id
 s12-20020a05610201cc00b0032cde183115mr611505vsq.31.1652897643420; 
 Wed, 18 May 2022 11:14:03 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 z2-20020a9f2a82000000b00362c5d5a021sm310139uai.32.2022.05.18.11.14.03
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:14:03 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 29/34] gnu: Add elm-justinmimbs-date.
Date: Wed, 18 May 2022 14:11:16 -0400
Message-Id: <7add5f1dc2e66e19789a8dfebb8351b0295ae1bd.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-justinmimbs-date): New variable.
---
 gnu/packages/elm.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 69e60cd3bd..e92a2e222f 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -643,3 +643,24 @@ (define-public elm-danhandrea-elm-time-extra
     (description "This package enhances @code{elm/time} with extra utilities
 for working with POSIX times.")
     (license license:bsd-3)))
+
+(define-public elm-justinmimbs-date
+  (package
+    (name "elm-justinmimbs-date")
+    (version "4.0.1")
+    (source
+     (elm-package-origin
+      "justinmimbs/date"
+      version
+      (base32 "13mf97137f0yb3gx1mxbya2y70qciah4hp5bcnpj8166vgzb7l3l")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-time
+           elm-parser
+           elm-core))
+    (home-page "https://package.elm-lang.org/packages/justinmimbs/date/4.0.1")
+    (synopsis "Work with dates without times or zones in Elm")
+    (description
+     "This Elm package provides a simple @code{Date} type for working with
+dates without times or zones.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:14:20 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:14:20 2022
Received: from localhost ([127.0.0.1]:33601 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBZ-0006Ub-Ts
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:20 -0400
Received: from mail-vs1-f54.google.com ([209.85.217.54]:45651)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBT-0006Q9-L8
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:07 -0400
Received: by mail-vs1-f54.google.com with SMTP id e19so2891930vsu.12
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:14:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=1Kn9uqfA6GawrkYRfryEwmNWOseFtjvsxreCBjMEvco=;
 b=Nhc04BMuNlFLstoY9i5ldGZdJfYgifyPEXB7FLrT52fwNHOnjR5+orFc6qVkxUyYul
 vAfFl9bct3A5HsVFAQsbUNRFnQs/zn0UESBXZPv9gZT3Rj5qY8fibWnF6RcDMP0MdM+h
 8oB/8EUOxCYIgKuue0HQiaM7k4sp0RSWNQc7+7ht4jNU8BYTl5Dv0s3oDESDk0Kt16FY
 UWSl89/YBGMEe8sHJwBbHMj/llsIBN/ukBz+xzW504p97ZpRRDqNvl6mFr8XTPmdYzVa
 nZ4+kmZar3zyUCxSwaRPo2461njUTIbpFbHE5uyT9qFqmcB7j/S4PCSvru9MJ7U/T6qm
 EAdg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=1Kn9uqfA6GawrkYRfryEwmNWOseFtjvsxreCBjMEvco=;
 b=e12cyn2gSYw/3ThBF/8Ek2ooDz3PaiS8Bh3pZDnV2X56XNS52BzqOVn0yAkiUsV0JE
 FbKqAalZuQ9JB4bqDWD50/CGJBYpM2qn/Cgeo9YMxvP1k5xB8XatV0hsv7IwjEFUPCGq
 eLtvqzT6hjyOMWxSczU+FAGHvFM/lmPA75/9eMSg28Df6p1Orpx9wl2TtY64F3vDnI3S
 VCR8Y8Ffijug3DWbjOOmrOAEM/jY0cc2wVS9j2dOGT3RLp8fHk3CURUxhfMCyzkfHJkO
 +FSScaLKQYYjpcwo0ykKOcRq8xk+IFix/fQqmpWo+Vw22mFyhcR6GdpgFwpbQKsP5yoY
 vCvg==
X-Gm-Message-State: AOAM531drQTRdlhMYra8Kq4G49RRJDtHGl3bFvVDaZptXw8L+tg6ZbWC
 ydq9j0v0Juq07ZUR58mH7bhy9xgJmEtgxGg8
X-Google-Smtp-Source: ABdhPJze3FXrUs66iZwgPMpxyRtcwAqforsd1CKntI8cQPp4ks7XdI2b3NHYIr5JDghLHrK4tF866Q==
X-Received: by 2002:a05:6102:3a09:b0:335:67f4:8c0a with SMTP id
 b9-20020a0561023a0900b0033567f48c0amr667663vsu.17.1652897647357; 
 Wed, 18 May 2022 11:14:07 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 s6-20020a1fdb06000000b0034e6f1fd05esm248368vkg.40.2022.05.18.11.14.06
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:14:07 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 30/34] gnu: Add elm-justinmimbs-time-extra.
Date: Wed, 18 May 2022 14:11:17 -0400
Message-Id: <85e9275fdd36acc0360bcbefd4c01c73d158c1ec.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.3 (/)

* gnu/packages/elm.scm (elm-justinmimbs-time-extra): New variable.
---
 gnu/packages/elm.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index e92a2e222f..45f137dcdc 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -664,3 +664,25 @@ (define-public elm-justinmimbs-date
      "This Elm package provides a simple @code{Date} type for working with
 dates without times or zones.")
     (license license:bsd-3)))
+
+(define-public elm-justinmimbs-time-extra
+  (package
+    (name "elm-justinmimbs-time-extra")
+    (version "1.1.1")
+    (source
+     (elm-package-origin
+      "justinmimbs/time-extra"
+      version
+      (base32 "1gmgvzlpzkysvm86d0md75ply10pz28bg699m4763frss0jvrngh")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-justinmimbs-date
+           elm-time
+           elm-core))
+    (home-page
+     "https://package.elm-lang.org/packages/justinmimbs/time-extra/1.1.1")
+    (synopsis "Extra functions for POSIX times in Elm")
+    (description
+     "This package provides extra functions for working with @code{Posix}
+times from @code{elm/time}.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:14:14 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:14:13 2022
Received: from localhost ([127.0.0.1]:33599 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBZ-0006UU-Kz
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:13 -0400
Received: from mail-vk1-f181.google.com ([209.85.221.181]:43892)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBQ-0006Ru-Rt
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:05 -0400
Received: by mail-vk1-f181.google.com with SMTP id q136so1560970vke.10
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:14:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=P+wbySYI9bNNssY8bAY3lcgOkIaDyaiuPc3ob4SmBs4=;
 b=A133fhYSe5ExALmAzR/SXVNuuP8aTLk7IrXFSWManooqCtLUcWqOgeKoFmyoFYLCCU
 Xm/Tm8INa2Zb7pVKAQsAvzcKvpPopTaBailefcAnSp+F17OF5y0Wkf3FauoSXCbQCS93
 BZG0TeDoSveNMS4FGsOUh3wT9YifubcNLL0ET3ivrvPSiSzHRWi5JFsS89xxCL/AkbOd
 T0zroalwiDzBcqN06y448qch9KVBqcWooG+CvycR4TR0KwVF9VFrHGIoktwbX5mGqF+b
 FXA8vEsoWRix2a5qATyc744souETuYqp2XtYNErEl5qE7jAvt9fhamoBlgUG2gmYS165
 DAaA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=P+wbySYI9bNNssY8bAY3lcgOkIaDyaiuPc3ob4SmBs4=;
 b=VWSVTXm0I+xs7yK4BAmgVIYUrOVlTaBcKlHJmAPuhZgOi1HsEHPQ2m4TdjwtloDBmi
 0qECTPCSuqvuptmgcbjKaj0HogTn0Me97dfS2Ze67Lbk/4YtcrmGgGvfYUDIgNz+i1pL
 Hnr95UElYAyaSRXRS08DPDVx1CEORGZU32webbaVZiSBAFa/Uod5hVhGxTssb8s2ii26
 ccYu5j1DOVJ92IvyFq1Ep7+V1FgtDaUYiV0DQEbuFqMB3s55iyxpSNdlAKwlY91RdET5
 86FMiT+FE8+yF9jk5vfePDX4TRxCZZNubvatan4nLufsD66yIeGQA4P2IH4bRN9dX+/n
 2cZw==
X-Gm-Message-State: AOAM5308OhOBQc6DctSAGjbGgkTUTm/alU2B+8HacfkCZFqWtEQwck6j
 h84NEMP8n7jhtVOOsGkT9Zd01fZ3spvpyhQq
X-Google-Smtp-Source: ABdhPJwRlO3rD0Bw6G3kfT8cPy6YguWHgeW9a2T3Tg8eLxjvtRwIAQdOEQdyfNUHKNsP74+xrlfD8w==
X-Received: by 2002:a1f:7dc1:0:b0:357:756:68b8 with SMTP id
 y184-20020a1f7dc1000000b00357075668b8mr381719vkc.22.1652897639443; 
 Wed, 18 May 2022 11:13:59 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 q207-20020a1fa7d8000000b0034e7e7398afsm314859vke.27.2022.05.18.11.13.58
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:59 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 28/34] gnu: Add elm-danhandrea-elm-time-extra.
Date: Wed, 18 May 2022 14:11:15 -0400
Message-Id: <66725a6d3545908dc0723128e05663119565f71b.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-danhandrea-elm-time-extra): New variable.
---
 gnu/packages/elm.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 2e37f4c5fc..69e60cd3bd 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -622,3 +622,24 @@ (define-public elm-danhandrea-elm-date-format
     (description "This package enhances @code{elm/time} with support for
 format strings and internationalization of dates.")
     (license license:bsd-3)))
+
+(define-public elm-danhandrea-elm-time-extra
+  (package
+    (name "elm-danhandrea-elm-time-extra")
+    (version "1.1.0")
+    (source
+     (elm-package-origin
+      "danhandrea/elm-time-extra"
+      version
+      (base32 "0z13q8x148d5amcc89f846yzql89n9gyan8fr48y91dhhn7vxibf")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-time elm-core))
+    (inputs
+     (list elm-explorations-test
+           elm-danhandrea-elm-date-format))
+    (home-page
+     "https://package.elm-lang.org/packages/danhandrea/elm-time-extra/1.1.0")
+    (synopsis "Extra utilities for POSIX time in Elm")
+    (description "This package enhances @code{elm/time} with extra utilities
+for working with POSIX times.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:14:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:14:13 2022
Received: from localhost ([127.0.0.1]:33582 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBN-0006S7-FE
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:13 -0400
Received: from mail-vk1-f173.google.com ([209.85.221.173]:37441)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBI-0006RV-TX
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:57 -0400
Received: by mail-vk1-f173.google.com with SMTP id bs5so1576355vkb.4
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=iKhyg0T1ZBjukupkYM86qUANLoYX/tr/uZ9IoY0rJG4=;
 b=Ifpvn2hFuWplSv9BDCZY2PjgMpnNilzzNxjWT8Nr+LIzJX8+NEUyhWSOernPz03jgB
 FHUNpT8bXy69vfgXhaeWsImpLLNh0W0zbq2HdUp5Q3PibJtXDmtuUciOjAOCIDodaglP
 naLouURTTX6rWmlTGlOT1lI5rW2R4MSdXovEdvUQ0koVcECEA70wMJnblEGmWZK7nA4d
 RXE46RmQ01ZeYX8tjb4BBqNYgx9mWd1bp0NlFxfzoeNMx6M+ak+Q1r4XtNm1idVjnws/
 b37htSqR74XwYn/BJW1Qtqge+jG8KnR67dUK3tzLoVqdvHWh45/BgIHAV+AfpZa8+BOA
 hZrg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=iKhyg0T1ZBjukupkYM86qUANLoYX/tr/uZ9IoY0rJG4=;
 b=8IakOWsX4BKGG+0m8ZVVvGfaofuDLb7mcsjjSbayTP8zCxQH8oFyXhnCNJiv42Wjwv
 cV+xKmekILzAhvaMkCKGw79O1/XjnwzmC2hdR8f0GTts7WkpUw9vn7+QnIew+mDNQEFf
 fXzY3hVFxRWRSq7HR8iVNjNMRMhGvs36gNMXKHmDHj+8tJedobKD2Tcl3prO6V4L0tXr
 /5nnD0vyjBypAgphKMcikqhb+cJYOX1aBpny8nxeSaEyBoH/WOrcAEef4SCeflez+0R1
 Sx6kVOwy0233Rn3aI/mmsgAbpGDZXphIS5UIiqAaqfhSBfIkx7AsjOfaGQFpS7VIU0M+
 7/Ww==
X-Gm-Message-State: AOAM531u3kcWZD/Z+IrBOySH8RHbJ+S2ywzR5CKP9ygeP8OhQk74/FVf
 hMwgnOMnlvXxFnI+nUalfZaplF9munclR+Xd
X-Google-Smtp-Source: ABdhPJwycQjM+0Q5ev9KPl/VAO5+I+dPR2JpX7cRqPq++65QLkmJILIoltOEaZJgxc9BWbaHkwlWiA==
X-Received: by 2002:a1f:d904:0:b0:345:a109:830 with SMTP id
 q4-20020a1fd904000000b00345a1090830mr345514vkg.9.1652897631541; 
 Wed, 18 May 2022 11:13:51 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 p188-20020a6742c5000000b0032d275e6921sm263399vsa.33.2022.05.18.11.13.50
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:51 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 26/34] gnu: Add elm-explorations-test.
Date: Wed, 18 May 2022 14:11:13 -0400
Message-Id: <79cfd73a4c2164bd0c1478b0a38e6849046d7a8c.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.3 (/)

* gnu/packages/elm.scm (elm-explorations-test): New variable.
---
 gnu/packages/elm.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index c2e4b65b77..edd13a0b8a 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -578,3 +578,28 @@ (define-public elm-random
      "Need to generate random numbers?  How about random game boards?  Or
 random positions in 3D space?  This is the package for you!")
     (license license:bsd-3)))
+
+(define-public elm-explorations-test
+  (package
+    (name "elm-explorations-test")
+    (version "1.2.2")
+    (source
+     (elm-package-origin
+      "elm-explorations/test"
+      version
+      (base32 "0kw32x0lr6nh5j9xk56vgg7x7c705g38grghh7cdp49frwdd6w3l")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-virtual-dom
+           elm-random
+           elm-json
+           elm-html
+           elm-core))
+    (home-page
+     "https://package.elm-lang.org/packages/elm-explorations/test/1.2.2")
+    (synopsis "Testing framework for Elm")
+    (description "This package enables writing unit and fuzz tests for Elm
+code.  To actually run the tests, you need the command-line tool from
+@url{https://github.com/rtfeldman/node-test-runner}, which has not yet been
+packaged for Guix.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:14:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:14:01 2022
Received: from localhost ([127.0.0.1]:33580 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBN-0006S0-4m
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:01 -0400
Received: from mail-vs1-f48.google.com ([209.85.217.48]:36681)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBH-0006PF-NL
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:55 -0400
Received: by mail-vs1-f48.google.com with SMTP id a127so2933701vsa.3
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=hRMLXnvRr9Y3CrBg9Lyp/cnmBVHzeNwnTj3DIW1/Yj4=;
 b=OWAZuC57pWXYAUMz+WvYIxnQSdqaMBjLE7kftzMDZ6pZDfhqj/NtxQMVCoZerQylDw
 h+qwWO6zQk4MgyhFC0VR8yWhw+rLhR8jp67+3rP0PYr9+ALsOFKuHB5cm6ivOup2gxT4
 VvXpSu/3yPSaKtuB/MZFJU9N/2yYPTqVKc9jHMlPiuy+qTSJ8UARBCCVFZPiMYlfjr/A
 A7mB6nGCUsWRWHbEz04bzwguEoI8BzKQqSa8k5s4A6qa0iGZukqpr679QBdBXcNQwjIr
 kFeeRm67xqJOmMY0HhcPb5hrawejy6iZ/gbuLQe/552jPoCVu/TbbgGOiRiw1EirErkz
 Dg3g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=hRMLXnvRr9Y3CrBg9Lyp/cnmBVHzeNwnTj3DIW1/Yj4=;
 b=IVch8JPCWUVgEVTXdQCuZHwAp7YazaDddIB3PNv+jua5ZJNwijnOM5vVUHzIsY7XgI
 4rVLgtB4VB7QlEjJzFmODTZzwESAKQvCYDJkx/uidpl/QKEXlCxjhtdbh+byn9eoUuUB
 gf4LYOUV7SNOPAmbrIsoSKpx4W95U8ym5Y4h6jEUwzphmi9C9AWp0yWIa4XdLNCQtr2U
 Pmi8BWF6vv2h9d/RM96FnphOpTYaEU36dSo18HBltNT0ibXNDtFXOYBbahPPITI2alSP
 ONBehcHMETsBkyS1S18j9WpPEBrSyKZvsp/hZIshnJd3GVm8vqbGXmNxH0Z6BZQRBcvk
 MyDA==
X-Gm-Message-State: AOAM533eBrwttJqJQKuqVbAQdkGH/7HkKfgRJpNOFxOomLnkUU/rmnGm
 wbMb1to2PEqRPpwQuIFFTpGHYVEiGCradE9N
X-Google-Smtp-Source: ABdhPJyw3ML0tdgmuWsVvuXk6wst/8BTw345kO9uwJOF72mLfq/BA952C5cK2rq0zolXPi/QAZWHSA==
X-Received: by 2002:a67:fa8e:0:b0:333:bfda:1a30 with SMTP id
 f14-20020a67fa8e000000b00333bfda1a30mr489671vsq.15.1652897635442; 
 Wed, 18 May 2022 11:13:55 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 186-20020a6719c3000000b0032cc15dcc9asm293801vsz.0.2022.05.18.11.13.55
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:55 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 27/34] gnu: Add elm-danhandrea-elm-date-format.
Date: Wed, 18 May 2022 14:11:14 -0400
Message-Id: <4bc4392d3441ccb447017a0f8dc193b694046fd7.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-danhandrea-elm-date-format): New variable.
---
 gnu/packages/elm.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index edd13a0b8a..2e37f4c5fc 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -603,3 +603,22 @@ (define-public elm-explorations-test
 @url{https://github.com/rtfeldman/node-test-runner}, which has not yet been
 packaged for Guix.")
     (license license:bsd-3)))
+
+(define-public elm-danhandrea-elm-date-format
+  (package
+    (name "elm-danhandrea-elm-date-format")
+    (version "2.0.1")
+    (source
+     (elm-package-origin
+      "danhandrea/elm-date-format"
+      version
+      (base32 "03mglzyywij5sm56m7q2jhhbsv7f9rdirgwmq0q41ghir81bzpv6")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-time elm-core))
+    (inputs (list elm-explorations-test))
+    (home-page
+     "https://package.elm-lang.org/packages/danhandrea/elm-date-format/2.0.1")
+    (synopsis "Date formatting for Elm")
+    (description "This package enhances @code{elm/time} with support for
+format strings and internationalization of dates.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:14:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:14:01 2022
Received: from localhost ([127.0.0.1]:33576 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBG-0006Rf-II
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:14:01 -0400
Received: from mail-ua1-f54.google.com ([209.85.222.54]:39727)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBE-0006RF-RT
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:53 -0400
Received: by mail-ua1-f54.google.com with SMTP id j20so1137672uan.6
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=mLGJm2E7ImlU9CZ2EGeQqoxR6PBq3HDZfCvGVwjxjvM=;
 b=YKspCTVnnMjdfLFf2k2Y85V6h7LtdlFlB72Dj9LQMaQzMwslUFIrzeixzawKWrk9PU
 jK3yW3WcAZAsaBxrZDQBDwmo04QoSRxETTGh+n2sPnSE7M2OBATycEPA/yRg701EbdFN
 ExrTm1x8UJqLgpX0U24Ic5WVuqmqnlA1aR21Ea7E4c2JY+tcY5Sv1fN8Z/DWylBgeyiy
 Oa5rssQS+Zqor3pGuKR+O/mM58Q7YEYaub3mybCaTwHw0V5ZrcfNXf348hme7mptJI1Y
 LyXvv93Df6wyKSMmZwBnA+xDXzGTCeea64GFOZ9LoI12DLtVxFhpqZatbOeJ1pTBeQJd
 vO3g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=mLGJm2E7ImlU9CZ2EGeQqoxR6PBq3HDZfCvGVwjxjvM=;
 b=WMZskiqYZ5foK3CN9fPQQjZjOy5awA/l/u9Acnu14hQZHt2DCgJW186ldFjWhAPTOL
 nQt8KgVz8WLmvmTSgqRscFofQVTlQgHtEEWuhOgp+ABWRrsSzmiXGsoWzgqGrdF2To3e
 hU8xyshgnctjXtdyFWKeeDmFNsI+Ga0Tu6nxUGLfXOd5tKOmLIobxXlUSjsNi8b3g5+Z
 bHUFvmDqjacTtmjxTPnDkV14uiYo25CGYiTeI0QXdaRwxfrLeOTnFAnKmr7Go6NSX9xT
 MgwrYErOlmtW+GpIPf3wpzMCtQmoCKCM0P2TgSqNrF/hXPf+roqfEvM+dtNPsv5AEK1G
 QKTA==
X-Gm-Message-State: AOAM531USbYGvk6sMDBJhRTIfkvaCxd3XNZlH8W1UYPrdhZzau0N5eNI
 FjA9oreHcKC+yRN88iTeY4V8pJnKjUmwdP7k
X-Google-Smtp-Source: ABdhPJxKFAuWyM/f9LiS4oW2VoO/9Xks1EDE5zBlkZj3h/ok65ogBqPP1ZFw2bicA7BbEej3ip9ITA==
X-Received: by 2002:ab0:2008:0:b0:352:2b3a:6bce with SMTP id
 v8-20020ab02008000000b003522b3a6bcemr611039uak.19.1652897627431; 
 Wed, 18 May 2022 11:13:47 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 o72-20020a1f284b000000b0034e6f1fd056sm250694vko.32.2022.05.18.11.13.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:47 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 25/34] gnu: Add elm-random.
Date: Wed, 18 May 2022 14:11:12 -0400
Message-Id: <b842f0140a05c7427fad42b7034399c5275f694e.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.3 (/)

* gnu/packages/elm.scm (elm-random): New variable.
---
 gnu/packages/elm.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index d17a3f2487..c2e4b65b77 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -560,3 +560,21 @@ (define-public elm-debois-elm-dom
 Use this if you need to discover geometry information (width, position, etc.)
 of rendered elements.")
     (license license:asl2.0)))
+
+(define-public elm-random
+  (package
+    (name "elm-random")
+    (version "1.0.0")
+    (source
+     (elm-package-origin
+      "elm/random"
+      version
+      (base32 "0z0znkwfs35xiabk6pa9yqwsq03jssgd7jmsj1kk000mikfm7f39")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-time elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/random/1.0.0")
+    (synopsis "Generate random numbers and values in Elm")
+    (description
+     "Need to generate random numbers?  How about random game boards?  Or
+random positions in 3D space?  This is the package for you!")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:50 2022
Received: from localhost ([127.0.0.1]:33573 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOBC-0006RN-AB
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:50 -0400
Received: from mail-vk1-f177.google.com ([209.85.221.177]:34362)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOBA-0006Qs-Ra
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:49 -0400
Received: by mail-vk1-f177.google.com with SMTP id b81so1579142vkf.1
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:48 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=AGXvlmHyKmFrZGscOgQRDHGJkmt36T0uz+3IkWUfZ5c=;
 b=b2RFVnZY4NiRS0VSqO7siS+FMNZcnxuJP69H0Doi3xfKL+HOoQidUTTdDDiSj2q4ak
 DM7Gh5tgm6DKMrj0BKSQAQzbj/NeiiNUmRVpqawayFiGA8BGonGMYjGNi0+GP47Ost1a
 67jW2m9PQ6quQBdaj6C1xh3vSSdDgBx53tTrk2aNCt9khQ+iUQhkfO/PAv5rlsWqLzCX
 UrMNkbjvQTxOnqYfkjksi9QN1SpAE/gbDhJYG6VNeqwGO0fMRcNha71KzZNMB36se88r
 Lt9tvGGoaTEN7vUrGSrlOlTLNmISZLOiA/10CkeO2Xvom1g1yxWmlyqiV6wf8LCZRDxy
 hukw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=AGXvlmHyKmFrZGscOgQRDHGJkmt36T0uz+3IkWUfZ5c=;
 b=Ttpd/BPdfCqCcLNdTifkscS7gppleehzYnh68W4P/3gOx7ylpKc6fEv1JOFnEEnqvL
 k9AAADhLn7rHXA6Mkljzh+OPMp6+M3er+w/0CzlgjSdvDvyb1HkqD7JP5c2sjfBzdG61
 V9GojqCedDcq+dmKaN7ZXG/GmcyqnDu2vVYFF4H7o1BGO2ZyaClqz7arQrnEBM1Or3sF
 E7dGDrZET1PAFa4xGh6Z4sSwxQc4V6qAfv5iOf1hJpwhyW+kDNGKEtXgNjf21RydoZTF
 083xpkkLPg4hZ881vdzY43yq8QcgddyR1vFZaeayMY20OBCKw8JPLwGJK6H8eyULXy40
 c/SA==
X-Gm-Message-State: AOAM533MQ61vXC9sFIBHxrJgcLnTMuBUA3oADN12lCEYkApx4gQ3wMvs
 xIQpWZxXzyHMK4dWmkBJzJgNGLHNgHCIWcme
X-Google-Smtp-Source: ABdhPJwo7FkkwvRraXCywY4/3yKrR2mFR8odFfEEnC1FwZsKkC/ekYA/M8DNvMGWEGNYgbSrBLAB9w==
X-Received: by 2002:ac5:c7a1:0:b0:34e:98f9:88c3 with SMTP id
 d1-20020ac5c7a1000000b0034e98f988c3mr323248vkn.15.1652897623425; 
 Wed, 18 May 2022 11:13:43 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 f67-20020a1f1f46000000b0034e6f1fd05asm317594vkf.36.2022.05.18.11.13.43
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:43 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 24/34] gnu: Add elm-debois-elm-dom.
Date: Wed, 18 May 2022 14:11:11 -0400
Message-Id: <323b39c201d4a7c73d5574401c839e1825b5498c.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-debois-elm-dom): New variable.
---
 gnu/packages/elm.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 9d3a58bcb5..d17a3f2487 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -540,3 +540,23 @@ (define-public elm-todomvc
 @url{https://todomvc.com,TodoMVC}, a simple to-do--list application used to
 compare front-end web frameworks.")
       (license license:bsd-3))))
+
+(define-public elm-debois-elm-dom
+  (package
+    (name "elm-debois-elm-dom")
+    (version "1.3.0")
+    (source
+     (elm-package-origin
+      "debois/elm-dom"
+      version
+      (base32 "0w4z4w6ip118lk5g80w6mbbfxhfmivbmdkdm6wsmk63x85gscmqx")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-json elm-html elm-core))
+    (home-page "https://package.elm-lang.org/packages/debois/elm-dom/1.3.0")
+    (synopsis "DOM traversal for Elm event-handlers")
+    (description
+     "This package provides a library for reading information off the DOM.
+Use this if you need to discover geometry information (width, position, etc.)
+of rendered elements.")
+    (license license:asl2.0)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:46 2022
Received: from localhost ([127.0.0.1]:33570 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOB7-0006R1-UJ
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:46 -0400
Received: from mail-vk1-f180.google.com ([209.85.221.180]:45919)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOB6-0006Qn-Su
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:45 -0400
Received: by mail-vk1-f180.google.com with SMTP id bc42so1555835vkb.12
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:44 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=mYWp/2Qk75quDtQhnCzSUlOj3iXPOE/P8zaZZNsNRVI=;
 b=KuuS6qPxyJYhVEM2FCPpMlkf1YdJXAwDnhx6kWQT/oeLJK94XrO5jvh3tuTYUfkT02
 rIpnuU+kycvXk0SNQm+FJiz1uwOvWIkH1a31/c8wIyFfdgGRIL5gGa55T1xvTDi4qafL
 /DJ0JGOk1ooywfbbnuRRR5HodYKeVa39rgZjX72WPZ840SEOGuHvhKtJW0aTO7cSlOvD
 3ht/GuayNvQw5hfcH3LaR03e3BrwblYbB3E2HKkpRwFmHaNl0S8EykrEmH/UcPrlg9Xi
 VbHx2GSrbS4HqCaiCOcQOGsghLwlkB7djWyvTULU6S2po4y1em3ze4Jaho2b73zWQmGI
 BDJw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=mYWp/2Qk75quDtQhnCzSUlOj3iXPOE/P8zaZZNsNRVI=;
 b=CP0Vx+GotRmkKqEJABEmzJP2vEUloQyFrUtyd0AJFYVeLl9ptoIqIczEE8DMhegtDY
 HOYlHJR05ZpZ2tTzCn7Bt6v9XZtLRtP057Un3INtu4ep4NOX+icwQoEF8ZWAGYmMaEP7
 w7xwLhefqYOFktrDuGo2Nc/ZekX/FXq43XZuBGqbHwMmVrmV9hzM04JxIo7a4XOpzHGh
 /OXrEHGP+9sRC/S2gLN2gYxwpqVuaf9Jm7otYXGzCPshje49C7CZmo42MjbXtgyECoIQ
 B0GmEqaEAjMCh5gbzrqpRfFR5OmUsthU7i15jZAqNbCTvPoIsDDHE54YVrGG0zQA8pAN
 tjQA==
X-Gm-Message-State: AOAM531kMhhyPUYnwVwyM1wDNmCU9OTKvSEWE2yhtF0HotFyx/MicMrP
 zt4o4zXe/Lmb1XojWRs61xGVnY6UXbNdXSiq
X-Google-Smtp-Source: ABdhPJyaoRmUQRrqTyFLrLYbT6fInO7qKEulASW95hN0gEOzoN1QuZ5QtW7XmdPL68FxRVug7YXdbw==
X-Received: by 2002:a05:6122:1354:b0:351:bed1:611d with SMTP id
 f20-20020a056122135400b00351bed1611dmr394565vkp.26.1652897619450; 
 Wed, 18 May 2022 11:13:39 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 y2-20020ab05602000000b00368a28612e2sm283746uaa.9.2022.05.18.11.13.39
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:39 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 23/34] gnu: Add elm-todomvc.
Date: Wed, 18 May 2022 14:11:10 -0400
Message-Id: <0fa04d278eaf50f57c74bedc128c7a97961d0095.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-todomvc): New variable.
* doc/guix.texi (Build Systems)[elm-build-system]: Mention it.
---
 doc/guix.texi        |  4 ++--
 gnu/packages/elm.scm | 53 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 55 insertions(+), 2 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 282cddf798..3d7b3b39c1 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -8748,7 +8748,7 @@ Build Systems
 @file{elm.json} files.  Using @code{elm-build-system} to build Elm
 @dfn{applications} (which declare @code{@{ "type": "application" @}}) is
 possible, but requires ad-hoc modifications to the build phases.  For
-an example, see the definition of
+examples, see the definitions of the @code{elm-todomvc} example application and
 the @code{elm} package itself (because the front-end for the
 @samp{elm reactor} command is an Elm application).
 
@@ -8757,7 +8757,7 @@ Build Systems
 @env{ELM_HOME}, but this does not yet work well with @code{elm-build-system}.
 This limitation primarily affects Elm applications, because they specify
 exact versions for their dependencies, whereas Elm packages specify supported
-version ranges.  As a workaround, you can use
+version ranges.  As a workaround, the example applications mentioned above use
 the @code{patch-application-dependencies} procedure provided by
 @code{(guix build elm-build-system)} to rewrite their @file{elm.json} files to
 refer to the package versions actually present in the build environment.
diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index d515d68e8f..9d3a58bcb5 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -487,3 +487,56 @@ (define-public elm-explorations-markdown
 on the @code{marked} project, which focuses on speed.")
     (license license:bsd-3)))
 
+(define-public elm-todomvc
+  (let ((commit "f236e7e56941c7705aba6e42cb020ff515fe3290")
+        (revision "1"))
+    (package
+      (name "elm-todomvc")
+      (version (git-version "1" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/evancz/elm-todomvc")
+               (commit commit)))
+         (sha256
+          (base32 "0g37bglzshkf79s4n7aq9ib44h5qn8ng7n72sh2xslgd20h05nfw"))
+         (file-name (git-file-name name version))))
+      (inputs (list elm-browser elm-core elm-html elm-json))
+      (build-system elm-build-system)
+      (arguments
+       (list
+        #:modules
+        `((srfi srfi-26)
+          ,@%elm-default-modules)
+        #:phases
+        #~(modify-phases %standard-phases
+            (delete 'stage)
+            (replace 'configure
+              patch-application-dependencies)
+            (replace 'build
+              (lambda* (#:key native-inputs inputs #:allow-other-keys)
+                (invoke (search-input-file (or native-inputs inputs)
+                                           "/bin/elm")
+                        "make"
+                        "src/Main.elm"
+                        "--output=elm.js")))
+            (replace 'install
+              (lambda args
+                (let* ((out-dir #$output)
+                       (dest-dir
+                        (string-append out-dir
+                                       "/share/"
+                                       (strip-store-file-name out-dir))))
+                  (for-each (cut install-file <> dest-dir)
+                            `("elm.js"
+                              "index.html"
+                              "style.css"
+                              "README.md")))))
+            (delete 'validate-compiled))))
+      (home-page "https://github.com/evancz/elm-todomvc")
+      (synopsis "TodoMVC in Elm")
+      (description "This is the official Elm implementation of
+@url{https://todomvc.com,TodoMVC}, a simple to-do--list application used to
+compare front-end web frameworks.")
+      (license license:bsd-3))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:45 2022
Received: from localhost ([127.0.0.1]:33567 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOB1-0006Qg-A5
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:45 -0400
Received: from mail-vs1-f54.google.com ([209.85.217.54]:45651)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAy-0006Q9-Vg
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:37 -0400
Received: by mail-vs1-f54.google.com with SMTP id e19so2891930vsu.12
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:36 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=GEHslMo0tx5hG5ai7CfRVZkn+WjzfPGVg7OZQSx2GCI=;
 b=VI2vddvyWrkq9ZrOlG6CzC2utzLrCbB2BZQ8DRp1T7NODnH+fds8lscmBeyUhomhAp
 WtzYnJIDqjYnDxPT4TJ6NriF/Wgk+oby/08upAbi+IIGboXnHXvbJeqG5Jsnl4EXl/WX
 1on004OofiAGzFJ/zS20YA952QSKlQlUCQigVBZlKYxeZBs2mtDYI92/e6uJ5E659hcY
 aC62fFS+eJ/90mjENnPerclS8txVbfS3fBNSz0RpjwFAPrgMk5ry8e1QNcn2HseWwVjr
 iORxng5M7BzdEM0CIK3XmcBjtJ39nKYCo9TUhu77TCfZot9v6CRWh4nkcp9actty7T/c
 bZGQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=GEHslMo0tx5hG5ai7CfRVZkn+WjzfPGVg7OZQSx2GCI=;
 b=AIMyMp6CMJgbG9lki3a3yVMqHcAYHHgKhcowZyzbiqU9CQCEwXQ2vEN/ml88ADlMxI
 rbpr/tVPl8IeUjsSAYd6GulrZJYNFITZG8k3bhq9GSYbTuHc0+2Bsw/9JsoGsUmSTWKU
 knSsedEK6SS7qJV5+03/zXux+ysQGeoOR3F1aanAGSigxMTSOgFyhr/VQmXtid724RaL
 ENXR/RDDM36JZQ/JjbJgUEIdQnbanY5ztrmF+Mqz7iJZaWhbjxOx9Xs88v140zPTsR2N
 L8FRdchCvF0e1f0ivHYpaZYSFYy7p9/O/r/Fns1aiPdq1MPgs4qitC9ahxUmAN9mS4Kd
 htmg==
X-Gm-Message-State: AOAM532VHjypc7FlFYrg8zITVw3wl0LxWtKn/W27T+XOVrVUkRyg7BYB
 k3SF+xuqjbCdMOFTzAXwEDme66PUimZhmpMA
X-Google-Smtp-Source: ABdhPJxULiFJXfj5vcFHPugbqpu3Ztvl6tJzkPq4wL/sT8tcNHR2IRnDn9MX6l1Vgmt1h0jNOSTq4w==
X-Received: by 2002:a67:ef0a:0:b0:32d:4bb9:23f with SMTP id
 j10-20020a67ef0a000000b0032d4bb9023fmr620921vsr.47.1652897611538; 
 Wed, 18 May 2022 11:13:31 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 h15-20020ac5cbcf000000b0034e6f1fd041sm265353vkn.11.2022.05.18.11.13.31
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:31 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 21/34] gnu: Add elm-explorations-markdown.
Date: Wed, 18 May 2022 14:11:08 -0400
Message-Id: <e6162c9736ab60554dd932cabde350138856329e.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.3 (/)

* gnu/packages/elm.scm (elm-explorations-markdown): New variable.
---
 gnu/packages/elm.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 48594613f3..8f92eea041 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -397,3 +397,22 @@ (define-public elm-project-metadata-utils
     (properties '((upstream-name . "elm/project-metadata-utils")))
     (license license:bsd-3)))
 
+(define-public elm-explorations-markdown
+  (package
+    (name "elm-explorations-markdown")
+    (version "1.0.0")
+    (source
+     (elm-package-origin
+      "elm-explorations/markdown"
+      version
+      (base32 "1f57ikdpbbhchcpwj32216gxjxijrc3sdpg27s1cgzia9pnkqk6p")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-html elm-core))
+    (home-page
+     "https://package.elm-lang.org/packages/elm-explorations/markdown/1.0.0")
+    (synopsis "Fast markdown parsing and rendering in Elm")
+    (description
+     "This package is for markdown parsing and rendering in Elm.  It is based
+on the @code{marked} project, which focuses on speed.")
+    (license license:bsd-3)))
+
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:39 2022
Received: from localhost ([127.0.0.1]:33565 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOB0-0006QZ-Q7
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:39 -0400
Received: from mail-vs1-f42.google.com ([209.85.217.42]:37437)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAy-0006Oq-0k
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:36 -0400
Received: by mail-vs1-f42.google.com with SMTP id w10so460384vsa.4
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:36 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=UHfL3C/ibqhoWyMSseXInHhRAjPSYuVXliqi06fgUCQ=;
 b=E1dixoAik3ep+cOGleYWgwC/gw64M2O0nWBmG9Gn4n0r/DFcu6oS+KDx7LUZu/orIL
 hKVoBmFvWjjPRFQ03J/o/aJOhjn1KD3okvi6jgM5QcEmupJXO31ZiVtZjkbNBUAMRq7m
 ORV3CMNsW+8lfDnDcmrrH0ls/Tct0p8tYTzfZvDq4+08OBNh11tyPW66kHP+2O3Z1iR3
 dVFbjBTQKdvY88amPOt+eN1HaIw42yQ9EKBJS8N19VGyXSUOIvK6VMpmS8EWXa4FpIf6
 JLl2q3Y0v16SbVXeqgGvYEE6rPSNi5K+so6qmtFqr44QT4ymqnHuKLbMn7utMvMzvjpw
 pzYg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=UHfL3C/ibqhoWyMSseXInHhRAjPSYuVXliqi06fgUCQ=;
 b=a6mRFfFy1Y9/RxusjBAQz7Gu1HVQZkmy6FepIYyHTY+TUmETigCYZkJ1YR99MlJnIe
 N5G8CqKuvYq2/R0i3Z3e/LGl2t4Ikx5MeNLlOiFCppVFA9WlNo4ZMuMm9hSMK5fbszAh
 KD7CltJ8/B6IFi3W142fPMCeF0MSXvnoomteN9BMlUamcUtVL5gzypuVrdLg2ILNpmrG
 O9psTgdujqou85HdEW7cwN9tQ3RwlkSC/UtX2e6G78cY5hh2liyhcFvSoM7ZHTMdr9GM
 Pl4dSInQU2I+5P6OFRONf1/2v4CpiWMpyOx/MuTrRVk6S0GAIcGqwYpO8euVW/U5Anpk
 cizQ==
X-Gm-Message-State: AOAM5315U0X5qa1PZgOOwZSBV4szqvX9IFQ7wdJHS6rZlByaGunjgXl3
 Vi/OL8i51MGPdLstBx+hirzTuurtVHUmHFaJ
X-Google-Smtp-Source: ABdhPJysnL8i7NRJ9IHrOBY1BeXhkWEFrPmCtAnZ11ULl2GUDgMnpmq8hOnLqQsOKMb+tcZ12nG24Q==
X-Received: by 2002:a05:6102:3002:b0:335:c397:db4f with SMTP id
 s2-20020a056102300200b00335c397db4fmr648346vsa.37.1652897615527; 
 Wed, 18 May 2022 11:13:35 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 b19-20020a67cb13000000b0032d275e6909sm261975vsl.9.2022.05.18.11.13.35
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:35 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 22/34] gnu: elm: Support 'elm reactor'.
Date: Wed, 18 May 2022 14:11:09 -0400
Message-Id: <1a6669a4b3f0364cb0686e4ff70a0cdc44b53de6.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm): Rename to ...
(elm-sans-reactor): ... this new variable.
[synopsis, description]: Tweak.
(elm): New variable.
* guix/build-system/elm.scm (default-elm): Use elm-sans-reactor.
* doc/guix.texi (Build Systems)[elm-build-system]: Update accordingly.
---
 doc/guix.texi             |  7 ++--
 gnu/packages/elm.scm      | 75 +++++++++++++++++++++++++++++++++++++--
 guix/build-system/elm.scm |  2 +-
 3 files changed, 79 insertions(+), 5 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index d7bc7523cd..282cddf798 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -8724,7 +8724,7 @@ Build Systems
 @samp{elm install}.
 
 The build system adds an Elm compiler package to the set of inputs.  The
-default compiler package (currently @code{elm}) can be overridden
+default compiler package (currently @code{elm-sans-reactor}) can be overridden
 using the @code{#:elm} argument.  Additionally, Elm packages needed by the
 build system itself are added as implicit inputs if they are not already
 present: to suppress this behavior, use the
@@ -8747,7 +8747,10 @@ Build Systems
 Elm @dfn{projects} which declare @code{@{ "type": "package" @}} in their
 @file{elm.json} files.  Using @code{elm-build-system} to build Elm
 @dfn{applications} (which declare @code{@{ "type": "application" @}}) is
-possible, but requires ad-hoc modifications to the build phases.
+possible, but requires ad-hoc modifications to the build phases.  For
+an example, see the definition of
+the @code{elm} package itself (because the front-end for the
+@samp{elm reactor} command is an Elm application).
 
 @item
 Elm supports multiple versions of a package coexisting simultaneously under
diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 8f92eea041..d515d68e8f 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -40,9 +40,9 @@ (define-module (gnu packages elm)
 ;; `elm reactor` exit with a useful error message if they aren't there.
 (define %reactor-root-base
   "share/elm/reactor-")
-(define-public elm
+(define-public elm-sans-reactor
   (package
-    (name "elm")
+    (name "elm-sans-reactor")
     (version "0.19.1")
     (source
      (origin
@@ -93,6 +93,77 @@ (define-public elm
            ghc-vector
            ghc-zip-archive))
     (home-page "https://elm-lang.org")
+    (synopsis "Minimal variant of @command{elm}")
+    (description
+     "This package provides a version of the Elm compiler without support for
+the @command{elm reactor} development command.")
+    (license license:bsd-3)))
+
+(define-public elm
+  (package
+    (name "elm")
+    (version (package-version elm-sans-reactor))
+    (source (package-source elm-sans-reactor))
+    (native-inputs (list elm-sans-reactor))
+    (inputs (list elm-sans-reactor
+                  elm-browser
+                  elm-core
+                  elm-html
+                  elm-http
+                  elm-json
+                  elm-project-metadata-utils
+                  elm-svg
+                  elm-explorations-markdown))
+    (build-system elm-build-system)
+    (arguments
+     (list
+      #:modules
+      `((srfi srfi-26)
+        ,@%elm-default-modules)
+      #:phases
+      #~(modify-phases %standard-phases
+          (delete 'stage)
+          (replace 'configure
+            (lambda* (#:key native-inputs inputs #:allow-other-keys)
+              (with-directory-excursion "reactor"
+                (patch-application-dependencies))))
+          (replace 'build
+            (lambda* (#:key native-inputs inputs #:allow-other-keys)
+              (with-directory-excursion "reactor"
+                (invoke (search-input-file (or native-inputs inputs)
+                                           "/bin/elm")
+                        "make"
+                        "--optimize"
+                        "src/NotFound.elm"
+                        "src/Errors.elm"
+                        "src/Index.elm"))))
+          (replace 'install
+            (lambda* (#:key inputs #:allow-other-keys)
+              (let* ((out-dir #$output)
+                     (bin-dir (string-append out-dir "/bin"))
+                     (reactor-dir (string-append out-dir
+                                                 "/"
+                                                 #$%reactor-root-base
+                                                 (getenv "GUIX_ELM_VERSION")))
+                     (reactor-subdir (string-append reactor-dir "/_elm")))
+                ;; We can't use a symlink here because Haskell's
+                ;; `getExecutablePath` follows all symlinks.
+                ;; Guix can make it a hard link later.
+                (install-file (search-input-file inputs ;; NOT native-inputs
+                                                 "/bin/elm")
+                              bin-dir)
+                (install-file "reactor/assets/favicon.ico" reactor-dir)
+                (for-each (cut install-file <> reactor-subdir)
+                          '("reactor/elm.js"
+                            "reactor/assets/styles.css"
+                            ;; TODO: these are source-code-pro v1.017 and
+                            ;; source-sans-pro v1.050: there may be breaking
+                            ;; changes in Guix's existing
+                            ;; font-adobe-source-{code,sans}-pro packages
+                            "reactor/assets/source-code-pro.ttf"
+                            "reactor/assets/source-sans-pro.ttf")))))
+          (delete 'validate-compiled))))
+    (home-page "https://elm-lang.org")
     (synopsis "Programming language for Web applications")
     (description
      "Elm is a statically-typed, purely-functional programming language for
diff --git a/guix/build-system/elm.scm b/guix/build-system/elm.scm
index 293bcbfb64..f5321f811b 100644
--- a/guix/build-system/elm.scm
+++ b/guix/build-system/elm.scm
@@ -101,7 +101,7 @@ (define (default-elm)
   "Return the default Elm package for builds."
   ;; Lazily resolve the binding to avoid a circular dependency.
   (let ((elm (resolve-interface '(gnu packages elm))))
-    (module-ref elm 'elm)))
+    (module-ref elm 'elm-sans-reactor)))
 
 (define (default-elm-core)
   "Return the default elm-core package."
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:38 2022
Received: from localhost ([127.0.0.1]:33563 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOB0-0006QW-He
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:38 -0400
Received: from mail-vs1-f42.google.com ([209.85.217.42]:37437)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAf-0006Oq-So
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:32 -0400
Received: by mail-vs1-f42.google.com with SMTP id w10so460384vsa.4
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=N0M8Jy6CYOY/dYsUanzyIl3wTjtL8Wx/rptRUX2CXKc=;
 b=kivl0XZWgpAjYHMT+GzUPgCVXeFqmgHfPL9YhLBcHU51DQKMYqqfu0MnqNJqv2zLxa
 Bbwh7rnVZxH/O63rFZcXGuu1177ZNvZIJ+VPujpbfr8twrbb9ojrADiG3763clMsKoPn
 5C3nespOz6+kbsmQ3CsiGIWv8wYuYLF8bOLuFRIePhUuY1yQ2+mAtghfyX0iWIBUXDrq
 FphI1hQEQOd1ZfC4UhPk6N6tSyz7YHbIKQEZFVeLOmhGruIMUlIcxdRyd2TgxzoMhvuK
 7O47Hw+fyaiPYWQ60N2qttWIoRLEpbR+eJ9QsIXRrE3GfE2wGgLnfTLzb8YdhKT4uQG7
 DYNg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=N0M8Jy6CYOY/dYsUanzyIl3wTjtL8Wx/rptRUX2CXKc=;
 b=HI4DlIs1b4RTIJlNoumL595QZSVuGcKPk3mmH2YjLYaRZPg3BuRrdPNJn+6CSb2PlN
 yLwdK8a/YlEHUBz7joJkA3yR83neDAYJNjf5YHGFyXsCu2lAW5f/jb89GxkQugDLqlhH
 53y4X4qXfTYf0D9IDV1mhfZYtcx09XmqaEyFF0m/2hsLr0lcc5XaY5LjXYbEuXZX35A9
 UAqAbU4bwViYm18YI8mKLYBNkN8O+FBvg3xvVdnW45Kehr1oK6OKnVIRQmf2scERaXdx
 JeuQrXztIMUy/wXE6h2RuuDkqLc6ukcNVH1g7xX1kSLXjofbeTw0oJqo4ZMeUMf9Zdiz
 r7QQ==
X-Gm-Message-State: AOAM5300pb7aAT4bheFb6HyoSUKmOasY/5jc3Atwojd6wbwSmC0OkA3j
 qCYYNJ/w7JvlR2tVD72pz0Wyb76r0DEKVAps
X-Google-Smtp-Source: ABdhPJxjkCuO1v0d9ZbzmIEnK+vOCaQi0c0VT6ypT/q8GCay0/TvfIYVCbikbnShD0zaDtNPMExVLA==
X-Received: by 2002:a67:ef07:0:b0:32d:20:8d3f with SMTP id
 j7-20020a67ef07000000b0032d00208d3fmr672403vsr.46.1652897592410; 
 Wed, 18 May 2022 11:13:12 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 g6-20020ab02446000000b00368ae2a5b1esm273282uan.31.2022.05.18.11.13.12
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:12 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 17/34] gnu: Add elm-file.
Date: Wed, 18 May 2022 14:11:04 -0400
Message-Id: <ed33f05ecaae00ca107d374d975b07042a9d391f.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.7 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-file): New variable.
---
 gnu/packages/elm.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index ac10bd8672..3bf3b66a6e 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -310,3 +310,24 @@ (define-public elm-bytes
 densely packed sequences of bytes, such as @code{ArrayBuffer}, typed arrays,
 and @code{DataView}.")
     (license license:bsd-3)))
+
+(define-public elm-file
+  (package
+    (name "elm-file")
+    (version "1.0.5")
+    (source
+     (elm-package-origin
+      "elm/file"
+      version
+      (base32 "0aimgicrdpys0v89m2wjx413561zil14cczjh6mkn9jcgckx6yng")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-time
+           elm-json
+           elm-core
+           elm-bytes))
+    (home-page "https://package.elm-lang.org/packages/elm/file/1.0.5")
+    (synopsis "Work with files in Elm")
+    (description "This package enables Elm programs to select files, download
+files, and work with file content.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:31 2022
Received: from localhost ([127.0.0.1]:33559 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAt-0006Px-7M
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:31 -0400
Received: from mail-vs1-f41.google.com ([209.85.217.41]:36683)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAo-0006PK-04
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:29 -0400
Received: by mail-vs1-f41.google.com with SMTP id a127so2933894vsa.3
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:26 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=wzxDNRVzxcSQomknx2DRS5y9OLul8iPO2/wryPaNLpU=;
 b=Roz0C4NW4uVgK/bwRo8iD3R/DpevvtJS1dM3lRlP7JhTLou6WpNBHM6uSEsSa5IyS/
 PUX/aBgsV6ku4aG+UprQm6oyvjBarD8pjJKIMwCN6HiIGW0tx8QF4RRGjAM1+GdjzCEU
 8QnL4rquFpNf272+q+b5EhB/z3LlcjHWTWZuo5JDpWc7+6WdLIlDsvZaoiMGwQfTtnn7
 btg1YAHbVNq19pxtUJklIsPa26wHNofxe9w830pgjPjIK+DreQ8TiMBeo1nLEnrRHLXJ
 i2uLRBQ7ThO498n8Yfca9z7N3dkwTeX0NaXPzMxHcXze6glTxI8erI8sGRXWJsr28wlK
 kdfg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=wzxDNRVzxcSQomknx2DRS5y9OLul8iPO2/wryPaNLpU=;
 b=dvlNj7I+MaP33FbN2Uc2nOvErEaUuV7uo3MdAvpaI4rWxRZ+f4eWS6mxWYN8ti2dWC
 gSHmyBqEt8wim1cgKANYItszIHu7Vr30uvdAP0+PTk5J4LbkDWOEF2SUUbZ4iscOGL8I
 Y7GRHB5Do/UcnbpdyGDr4wBc3/fJuoBe4eOgq4W7l3aKWEj93b/nLVLrqengxHxZ86Ea
 FaPYXOZJWpLJ4dIqnfbFFmzjsx6sal6ddSi96PgYKwwW2JTFZDIjRlsuHWwd2T0YfKOW
 PFLc68r36j0PqpfTWoLJBCBdtLhQdjuUk3Tcofrsc4e7SHV3uztLdfNOlYdb/5JUZm7p
 gbkA==
X-Gm-Message-State: AOAM533M2Y6rVhVbqk3XxTtm9lK9wIZkayYXhZ33QgAz+WctIGn0HTFV
 VbrAuczQFVWELTiGPF3LIUctrMM6s/pv9s+Z
X-Google-Smtp-Source: ABdhPJxoJf6gN82UUDE9bzwcmMFDQYyGAFZtEDh+ijqxliRkOLasiln1JJFZcPduHiFsodGwzOtcCw==
X-Received: by 2002:a05:6102:215:b0:335:c041:9017 with SMTP id
 z21-20020a056102021500b00335c0419017mr569856vsp.65.1652897600642; 
 Wed, 18 May 2022 11:13:20 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 j16-20020a056102241000b00335e2812587sm105675vsi.3.2022.05.18.11.13.20
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:20 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 19/34] gnu: Add elm-parser.
Date: Wed, 18 May 2022 14:11:06 -0400
Message-Id: <41c53c493739a05c2ef6eb4c4f6b9f1e5d93a529.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-parser): New variable.
---
 gnu/packages/elm.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 68636c3192..4120fcaaf4 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -352,3 +352,23 @@ (define-public elm-http
     (description "This package enables Elm programs to make HTTP requests and
 talk to servers.")
     (license license:bsd-3)))
+
+(define-public elm-parser
+  (package
+    (name "elm-parser")
+    (version "1.1.0")
+    (source
+     (elm-package-origin
+      "elm/parser"
+      version
+      (base32 "06xx29rmagc5r45qfpvrd393lz83ylngidfp08432f1qc8y6r3lh")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/parser/1.1.0")
+    (synopsis
+     "Parsing library for Elm")
+    (description
+     "Regular expressions are quite confusing and difficult to use.  This
+library provides a coherent alternative that handles more cases and produces
+clearer code.  It is focused on simplicity and great error messages.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:31 2022
Received: from localhost ([127.0.0.1]:33557 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAs-0006Pq-Uf
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:31 -0400
Received: from mail-vs1-f49.google.com ([209.85.217.49]:42548)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAm-0006Nh-TV
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:29 -0400
Received: by mail-vs1-f49.google.com with SMTP id i186so2900718vsc.9
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=5bR54BIxSbMTbDlLH39kOG32siF46V4aax73+b/Zlnc=;
 b=aL5HiLBxjJ92YJ95BXwVyqt6SBnxPE9DpTNrS7eo+ve76OkcgjaVYTtE68KIcigZbN
 jN23ir27bf7yoc/esTGWsbWdkjqe1dycPOOrvs/W276w8AQqEynhBsqY+aJTMSBorLuT
 ngAcS9FVMF3fvsac4XHOHjvgR5kSaBZn2XVm/AYBFjHarLstLTszNA4kUGPl7ZrLLXVH
 fr1FVjuY5itj5FXUNGBSUUQmY9GH6LMI5QhCOdVI1uEk1oxQNghHUMm8Jk+bpBxXggUF
 DbpAor1RAvfLuYqT2P3DNLZZy20nZB7dHxw9ePaP60jwxap8qwybL7gjLGZK+e6sd4hj
 y5ug==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=5bR54BIxSbMTbDlLH39kOG32siF46V4aax73+b/Zlnc=;
 b=ZoYlvkwl1TGmNFx2PYzst2CnMlPWDQfdcVa3XMfCtbsLPSoae/Bn3Uj3OrSGpui2lq
 49SQtx30LLJmREijC4tL1TETGAxY84Qp8EJBIX5XXdieyFNDTgK9vLw+28y8+Bu6h0zM
 Y7bZ07DDSAcSIMhduoXP0BNgmy1X3re7bEchRjLFFvyjpq/NfiO/4dJQD4s6M0quicmV
 fCIPE7iaI+YVgAUsMuWzVMWXL0HPQCChGyjWTFz5M8H4f8bzaph7NTN0rP2Hkjnw6Wv3
 o1asAov78LIjoYgY0s/sFdDB1rmxkxEaULghHZGQ8UARLwDSjWA+zQVT3q2rtdf2VJp3
 8eaA==
X-Gm-Message-State: AOAM530reTj0GKC7vRapJvflHBhuY31D4LB7QwI5BOfHIMQtPRIC5MXU
 9sNL4m8Q4V+RnFrbUilwjKjx5XHDq5XrIC8G
X-Google-Smtp-Source: ABdhPJxgWTCzK5dXtrH37gOvupSMACK+o4wvQv9VGHdhF1m3jCHsBAN6J1AuCVq70jBlV7onSR5SSg==
X-Received: by 2002:a05:6102:115a:b0:32c:e4dd:5121 with SMTP id
 j26-20020a056102115a00b0032ce4dd5121mr316268vsg.25.1652897604604; 
 Wed, 18 May 2022 11:13:24 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 b9-20020a1f1b09000000b00356e423e9a6sm253102vkb.21.2022.05.18.11.13.24
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:24 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 20/34] gnu: Add elm-project-metadata-utils.
Date: Wed, 18 May 2022 14:11:07 -0400
Message-Id: <cebd7ae80217339412d8ed40e5605f2c708f5af6.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-project-metadata-utils): New variable.
---
 gnu/packages/elm.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 4120fcaaf4..48594613f3 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -372,3 +372,28 @@ (define-public elm-parser
 library provides a coherent alternative that handles more cases and produces
 clearer code.  It is focused on simplicity and great error messages.")
     (license license:bsd-3)))
+
+(define-public elm-project-metadata-utils
+  (package
+    (name "elm-project-metadata-utils")
+    (version "1.0.2")
+    (source
+     (elm-package-origin
+      "elm/project-metadata-utils"
+      version
+      (base32 "1wj7chfy4knwwyc3k0hy431c80hs7hc686qsr34ayn8gip73x2jj")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-parser
+           elm-json
+           elm-core))
+    (home-page
+     "https://package.elm-lang.org/packages/elm/project-metadata-utils/1.0.2")
+    (synopsis "Work with @file{elm.json} and @file{docs.json} files in Elm")
+    (description
+     "This package is meant for people creating Elm tooling, like editor
+plugins.  If you just want to make stuff in Elm, there is nothing here for
+you.")
+    (properties '((upstream-name . "elm/project-metadata-utils")))
+    (license license:bsd-3)))
+
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:30 2022
Received: from localhost ([127.0.0.1]:33555 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAs-0006Pn-MV
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:30 -0400
Received: from mail-vs1-f48.google.com ([209.85.217.48]:36681)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAj-0006PF-PB
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:29 -0400
Received: by mail-vs1-f48.google.com with SMTP id a127so2933701vsa.3
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=VIURy4eVnhS9xphPT3C9RwL/yGl7vP/+qBM1Mwz+oIk=;
 b=hnVy466LmQpvNUIpT9y51GNURZ1pBhwaYAuvGmqD5EYVkQzs+dwptVQ5YJkjTTTd0e
 ULsneaLJ5O5s/77JMOHnp+QnbNXg5ExfuzqcPbLQuniPyFl3UrzPUM4IL5TCCRt5vGNw
 4fzJqjX7WGjjCqXEGLiJd+hsj2FaNKmEI7DCfbfmEBJYJFWPj8uYAWtXYaTsX6V+OMX+
 m+ePXzpn5h1Jyt4xMK+AIWJm2FhXfxtBBbfTDdn3j1LuPXj7x1ijdIgtTuV5hbzeri7j
 BvQXirtfqRfS3SJ63IpOUgUQ7BPzOY3EGggxB5Pz5gX0J+CsBfIow68qLL2M/JJsQm4p
 Fkvg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=VIURy4eVnhS9xphPT3C9RwL/yGl7vP/+qBM1Mwz+oIk=;
 b=zjJtSbnUT7n9tq+RTSAikpM9dodQzYp0toJpQjVb1sd96S/3FQeFBbZ5jNPRageFq8
 AdJXu4kGoyQOWhJMZ32/wdn4W0h8mPLDrkKv2YrGdB10vd+LldqRbAX1B85oFh2iU+6c
 qwPBoxnRO+gsu5DXWwPvbI4rCqccrTWXepTYl5VpAgpwXAo5TfzQ8WSy7c9UVdO9og1g
 9cShNfW9eqnq3+GRVxMCYSZezbi173f2LfqbrIsxGlVoM8T6E3G3N/uaDaqOR3a1fsDX
 Q8bCDVb8dd/JcHSmUL+JJmzLBHUKA8RKA1qi04vu9O+P8OD6jbxE2LJrX/tnXq2btY2S
 yD3w==
X-Gm-Message-State: AOAM533WQ+XKC8JD5CUQMrSmEiloBYPaz6O1QqmeKUESHn+fw0H7n+G5
 yFNKqni+77J4fWxVXXBm2AeME1obKjdQCULn
X-Google-Smtp-Source: ABdhPJzb2zwi4MM67/iMn/HxcDLl9B/7F9T+VrTCKC/AS9ts21J0wG3tcfUqabvCGs22h6RoU2gTCg==
X-Received: by 2002:a67:c988:0:b0:333:b089:61f9 with SMTP id
 y8-20020a67c988000000b00333b08961f9mr666179vsk.42.1652897596363; 
 Wed, 18 May 2022 11:13:16 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 93-20020ab004e6000000b003626f894df6sm260550uaw.36.2022.05.18.11.13.15
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:16 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 18/34] gnu: Add elm-http.
Date: Wed, 18 May 2022 14:11:05 -0400
Message-Id: <4359f6622eb2a21c9c4cdf1fd9a92de28bae97a9.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.7 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-http): New variable.
---
 gnu/packages/elm.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 3bf3b66a6e..68636c3192 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -331,3 +331,24 @@ (define-public elm-file
     (description "This package enables Elm programs to select files, download
 files, and work with file content.")
     (license license:bsd-3)))
+
+(define-public elm-http
+  (package
+    (name "elm-http")
+    (version "2.0.0")
+    (source
+     (elm-package-origin
+      "elm/http"
+      version
+      (base32 "0mfbz0lkfidmq5xpv5csw8943q0yrpvj0rwd2vb0gc8rbsfc9dg8")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-json
+           elm-file
+           elm-core
+           elm-bytes))
+    (home-page "https://package.elm-lang.org/packages/elm/http/2.0.0")
+    (synopsis "Make HTTP requests in Elm")
+    (description "This package enables Elm programs to make HTTP requests and
+talk to servers.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:15 2022
Received: from localhost ([127.0.0.1]:33549 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAd-0006P7-Bw
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:15 -0400
Received: from mail-vs1-f49.google.com ([209.85.217.49]:42548)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAb-0006Nh-UE
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:14 -0400
Received: by mail-vs1-f49.google.com with SMTP id i186so2900718vsc.9
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=bXdBNo/YMMMgxtb4kbGuYXLC1WpMcKIKzGQaxRBIZPk=;
 b=IKP7BAzRzEAeLylz1nbIQBX5UAq3ZtCx4ihpmVsdoA1CFkWbcZLwx39GSpACkcE6uO
 QBlxXxecrDVn0R6/rBf3RF4vLmWOAKCGGFPNx68OJ7W4UTpCKPqIc/t5jS1oO7CsYbHU
 HXY8E8cFVJpEj7RnwFcKbpDNbvImgSrlKwXQNzh66Satr6pjidO4jXDa6J1+j17zVZpC
 XOmgq3V4dQa76X+BueHcp7cMldmD/MI8LQ7qE4uDJ0NkSJp4fP+mre2VXWJY8rmn/q2G
 GdXgE/O5Igx4T89inrsnLJtmexbYR+YT3Y5kE8Oxcrp59PvYXIRJPkIe2keEJyIfGPpF
 FJyw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=bXdBNo/YMMMgxtb4kbGuYXLC1WpMcKIKzGQaxRBIZPk=;
 b=hhVdr2aCDsLabLpmxv5vdkS3BGcs56K1LhE1iwGb9E1oH371RSNzd+f+H3zwCi3PsD
 wKGmsRTUYt1XGQp1ZYtftqG5YdkA/uWK9mp4xpZsv6cDXlkMIHguzrMcMNYHF8zMwB7A
 c0+PvDHqYFb6+VzCxPQ/C5ofUlNlQ+pJZ6WupKuJMeGuMY9PDlm82xqZVjki6UKJyQiF
 e68X2dsyy3jxAnY7QKc+4cBZfZRvwvI/1lcivVq/SBYhypx+1pL6F/IR/rDKTKLJOWMU
 6n047Z63Kk5ntC1tf10hGEz0qouQFC13BLftnyIdlh0AWdnVWmGPzplUgy3CP3Z6WRLT
 rr2Q==
X-Gm-Message-State: AOAM533U+JfjXhmSO8qeyimby1rpeXa5j1lwdvAf8JVmJjGlQJTxQ6lb
 gXv4Z5VT5byymX5ag4Is0kpaV8NE+aL9ylcL
X-Google-Smtp-Source: ABdhPJx0cKU4YlOJaiLoM4DoKhgotiQUmksA9bsCpweBXoQY41ExIU7UUzfrUEae3hwI5/22tO99rw==
X-Received: by 2002:a05:6102:3ec8:b0:335:d67e:7535 with SMTP id
 n8-20020a0561023ec800b00335d67e7535mr319246vsv.47.1652897588514; 
 Wed, 18 May 2022 11:13:08 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 l48-20020ab05a33000000b0036273c68563sm265976uad.3.2022.05.18.11.13.08
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:08 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 16/34] gnu: Add elm-bytes.
Date: Wed, 18 May 2022 14:11:03 -0400
Message-Id: <30ffc23c80a26d183a4dec31da1e90a012b4a5fb.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-bytes): New variable.
---
 gnu/packages/elm.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 714a49a3dd..ac10bd8672 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -292,3 +292,21 @@ (define-public elm-browser
      "This package allows you to create Elm programs that run in browsers,
 with access to browser history for @acronym{SPAs, single-page apps}.")
     (license license:bsd-3)))
+
+(define-public elm-bytes
+  (package
+    (name "elm-bytes")
+    (version "1.0.8")
+    (source
+     (elm-package-origin
+      "elm/bytes"
+      version
+      (base32 "0n411j2cyz9m241q6vszfzpq3fraradwal5m0gigp2505mdfpz3x")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/bytes/1.0.8")
+    (synopsis "Work with sequences of bytes in Elm")
+    (description "This package provides an Elm library for working with
+densely packed sequences of bytes, such as @code{ArrayBuffer}, typed arrays,
+and @code{DataView}.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:13 2022
Received: from localhost ([127.0.0.1]:33546 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAb-0006Os-3g
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:13 -0400
Received: from mail-vk1-f179.google.com ([209.85.221.179]:37407)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAZ-0006MZ-Fj
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:11 -0400
Received: by mail-vk1-f179.google.com with SMTP id bs5so1575471vkb.4
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=GWzyd/GLYXdTL34fvCoCzlYd5ucDbe3MS9P055QoiyM=;
 b=VSHvQkeuPEE7cciq3fSo7NDQVGR2XHbVSAzS6rXdb7T/dxTJ2uxlfPijYNBkA7aUza
 PPalXzKh/1eJ9DFqgGumxtJ12pqwSX5V4dXvTQevPrcoS1mAbQvCLni1BFPmYHttG2Hu
 cd/tlMDKoampmjaY8LqCIArRiIJTppfjRq4eP2HJu+P7JNCmYpIP4VOASTyUmtZnmr1b
 G1s1Dhhh7taoWjoYvjIfNwQc6VYraKIC52pglLR4EiACoEuTUq/f7AL34ny7CRGyUViZ
 pVWhXzF9eHx2r8elzoKyO0Epd/p/zefC6zrMz3RfRURCqNQsMJx+hr6sL/1BSn9fYYjN
 BC8w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=GWzyd/GLYXdTL34fvCoCzlYd5ucDbe3MS9P055QoiyM=;
 b=1tW4eM+wix0JEBjFEoluYK8ZXYMHmpSH+G2ggw++kWdPtTLg8PZnGOqtrZRwj+MlDE
 Ta9SdBH9B+SrTH6vL3/W2pli58hvplztqy8c0C59eRi+/MopRhRpYymLjw15jau+Jlwb
 OFmY1IeOdiOxQQcTuiF2BfbwZowYZVwyn29+K3zGosueSf+8nKb89m7k9h35ZGdThwdU
 uujU9gQvAOh7clEQk2ztXVCcczraRhqnlnb9yNbYTkphsXaSoA2Nv6LfmmUunY+qtH7w
 1+sZ4l1lyCLrrcjwvABvL2yoMzSQSi350OzN74Mfcf8HdjaPEHThOQfimFwJw7BrklMG
 syaA==
X-Gm-Message-State: AOAM530gaZJCze4kNUz82FioeZJhyR5914Fx6DGGQLCYcxvyMnsqlFgm
 H/P1Sh9tFqdez/YzcVUbdbM/B6SG9IF42x6D
X-Google-Smtp-Source: ABdhPJxIjp0VgAYH/LFAhLd9a1ETFX7HD76tohR66ZQYbQrU6SPXfyAMAmUdh5LiNAPvoDex/MT//w==
X-Received: by 2002:a05:6122:caa:b0:352:8b21:1878 with SMTP id
 ba42-20020a0561220caa00b003528b211878mr455195vkb.35.1652897584518; 
 Wed, 18 May 2022 11:13:04 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 j16-20020a056102241000b00335e2812587sm105596vsi.3.2022.05.18.11.13.04
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:04 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 15/34] gnu: Add elm-browser.
Date: Wed, 18 May 2022 14:11:02 -0400
Message-Id: <312119bcf422bb911d212d3d2427120a05950f7e.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-browser): New variable.
---
 gnu/packages/elm.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index d7d11e0d91..714a49a3dd 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -267,3 +267,28 @@ (define-public elm-url
 
 Use it for HTTP and for @dfn{routing} in @acronym{SPAs, single-page apps}.")
     (license license:bsd-3)))
+
+(define-public elm-browser
+  (package
+    (name "elm-browser")
+    (version "1.0.2")
+    (source
+     (elm-package-origin
+      "elm/browser"
+      version
+      (base32 "0863nw2hhbpm3s03lm1imi5x28wwknzrwg2p79s5mydgvdvgwjf0")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-virtual-dom
+           elm-url
+           elm-time
+           elm-json
+           elm-html
+           elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/browser/1.0.2")
+    (synopsis
+     "Run Elm in browsers")
+    (description
+     "This package allows you to create Elm programs that run in browsers,
+with access to browser history for @acronym{SPAs, single-page apps}.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:06 2022
Received: from localhost ([127.0.0.1]:33524 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAT-0006ML-O8
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:06 -0400
Received: from mail-vk1-f174.google.com ([209.85.221.174]:35789)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAO-0006IC-Qy
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:04 -0400
Received: by mail-vk1-f174.google.com with SMTP id e7so1582995vkh.2
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:13:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=gV8rj5ntsEc7n5jlUUCgDNirjaevaIBwh9Xj9di9mOY=;
 b=BpaCvJoOds0x7Nd1w74q5CjiYmSCUe0oidar0b2L3wOQXVM+BFfzKWFYBHadCMZyKV
 Do0925Pl2rzrozvwrBmqXbKT+pKrYSrAoJrXq15uDiWESzVcUICAFVjLWEHmhZvjjoug
 7iLoUtgQD1EINFFn1+5qNAgfuns5H18joW88ZxbiCaFVocs9Dy7k7MuRvecqFkOazFjc
 aeIk0QLTSa7v/MbykFAxyrS2SAd+NiKj/hcuoLGXCagLeV0r/+5h589zxnS0EH7EQr7l
 epDWqmdZ507GmU+2xW7HBaqLYP4SfU/qTQzHnHnpCavvDChQVCH/2Ro1+CLBdV7GHN5/
 XJ/A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=gV8rj5ntsEc7n5jlUUCgDNirjaevaIBwh9Xj9di9mOY=;
 b=CyT3TKUWU/TltrGIc8LupD3Tlewjz+JnqFfWs+IieI7B6Pf849cRkVd60fNcYKHSFO
 r93+fZuzDr3kH4lEVwa/oYYIoo1uBa5le+hLXttrSqKN5kCuL0ZWSGbYXUJwCamGI2Qz
 O5HW0xOBzKleY8H4msyaISgeag5/QhkcaDP7dins7tzQYiu9S5xXrQXRGQATHUz6czaZ
 Tf4U3GCnzPigj5t3IlMsgNdyGU+dVhuXYuqWKlLOtW/yZlBPjXf7qSpaX150dsqbPzDr
 AAyvnQl61iJajfW4o8FPaAKAPTU02p3JrVKo2oGcXiGKCMQb2pZbcBSchgm9pfect4pi
 lgnA==
X-Gm-Message-State: AOAM532/J844cHgAsh/TgS8RQ4UDt5XHTXKRCxsuSzrYDS0JF0jS07Cj
 4+21WbA1C+TJbcXCcjQP/I0AnNcj09DMTNnE
X-Google-Smtp-Source: ABdhPJwzXOe6Bkm15/bEG7jI2g4pU+UeHRd1JWCY2YJFPdgrUV0k7QdwpzOmfIvi6XkJAGJX6fnhZg==
X-Received: by 2002:a05:6122:7d4:b0:356:fd98:d8cd with SMTP id
 l20-20020a05612207d400b00356fd98d8cdmr449777vkr.1.1652897580564; 
 Wed, 18 May 2022 11:13:00 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 n2-20020ab06022000000b0036576f80028sm275620ual.12.2022.05.18.11.13.00
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:13:00 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 14/34] gnu: Add elm-url.
Date: Wed, 18 May 2022 14:11:01 -0400
Message-Id: <623de08aed8de9add9bb109c8fa6acbae33e2899.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-url): New variable.
---
 gnu/packages/elm.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 2b9ee3594a..d7d11e0d91 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -239,3 +239,31 @@ (define-public elm-time
      "This package provides an Elm library for working with POSIX times, time
 zones, formatting, and the clock.")
     (license license:bsd-3)))
+
+(define-public elm-url
+  (package
+    (name "elm-url")
+    (version "1.0.0")
+    (source
+     (elm-package-origin
+      "elm/url"
+      version
+      (base32 "1f2ij4i7zmijnj2i50qf19lpkr14bhms8dkq029inb5mydi9f8gs")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/url/1.0.0")
+    (synopsis
+     "Create and parse URLs in Elm")
+    (description
+     "This package helps you:
+
+@enumerate
+@item
+build new URLs; and
+
+@item
+parse existing URLs into nice Elm data structures.
+@end enumerate
+
+Use it for HTTP and for @dfn{routing} in @acronym{SPAs, single-page apps}.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:02 2022
Received: from localhost ([127.0.0.1]:33515 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAQ-0006LC-8r
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:02 -0400
Received: from mail-ua1-f49.google.com ([209.85.222.49]:36626)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAL-0006K5-Vr
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:58 -0400
Received: by mail-ua1-f49.google.com with SMTP id r22so1145485ual.3
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=fBxF9zBFeKKCQY4mLN6OfmgdcbkxW9A+zgBavIDSxk4=;
 b=EUwIS2Pk0Opyg15lTScpykdsdtFwMZO4V9FP032qDwv1RKyXmBturJC0TJ7GU4ejxb
 qXj/JQrLTREhfmViBrrqxK/+F7hA6iXMmPESrrICsAh35OqiE6F6v+XWvCiJ38LnntVJ
 pqBZ1k7RGXuLasrAhRsUOmTETnCcl4cnGE/G4CM9pBB1eo7pFFik/cwJZQ9qDHS6hRvB
 ElY+lsmMq+3sNQWqyI3EGWkLWYKaLv5K3+14VHQtqqySJ8mz0Ahp7UC4VCeOfhby9FJD
 zhigW1XXjSCGWPJP4VA1mL/FvfAwRkz9khnZu5TXntALbGLsYq6vsgykc2goB2LzyVdJ
 zgrw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=fBxF9zBFeKKCQY4mLN6OfmgdcbkxW9A+zgBavIDSxk4=;
 b=hirDN9fpnGip3UZhXiU6xOWB+sJ0KPnhmiOHtYVzw97yKqboDztIbNF6N0CSjR0/vB
 uHMovZw8raW8iCfqOYs/4FvwSNY9uGqoe0Vk3doakkeWRoOJ2oL56l1foCxBAnuYabVA
 2e5O9DKAbAhOqm9YHZWmQxhTASTzY3Hhi9ADHcCEidJ4S89MXG667igUiARMHP/7CtwC
 GzpFHGF3vzrYezV4U4jWKsJoDef08yumojYoDvI9cc7bUJzcittB8rkgvoAg/IW0bjvM
 HZPTDDQUR9U2G9+u0rgvAawR/jAJw6SitFGxHgw05sdmN1Gh/aXteWETnv/tPvXIwnKy
 p4cw==
X-Gm-Message-State: AOAM531drw6D9PwDKjZf7mF/OPinW5Bi9YN3H2TsZzt6A3b5KxlGpqvj
 fuUcwauXXDxX+72ThwaPUno5ZSgDBXaMkHWw
X-Google-Smtp-Source: ABdhPJweSXgcOndnNCltDBIWsBhBfEe2HDvSTt/beQ8ndAhatRBuqvAnhuqM7YdMjxP4fhccs/EMlw==
X-Received: by 2002:ab0:6cf6:0:b0:368:b350:b321 with SMTP id
 l22-20020ab06cf6000000b00368b350b321mr593395uai.111.1652897572490; 
 Wed, 18 May 2022 11:12:52 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 n2-20020ab06022000000b0036576f80028sm275573ual.12.2022.05.18.11.12.52
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:52 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 12/34] gnu: Add elm-svg.
Date: Wed, 18 May 2022 14:10:59 -0400
Message-Id: <2b42b23b8cd67014be1ffa3c9d67e44fa4a4c7d6.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-svg): New variable.
---
 gnu/packages/elm.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 98b60c48f7..5ba6743399 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -198,3 +198,25 @@ (define-public elm-html
     (synopsis "Fast HTML, rendered with virtual DOM diffing")
     (description "This package provides Elm's HTML rendering library.")
     (license license:bsd-3)))
+
+(define-public elm-svg
+  (package
+    (name "elm-svg")
+    (version "1.0.1")
+    (source
+     (elm-package-origin
+      "elm/svg"
+      version
+      (base32 "1iqsc3p129j56lp1y3z3mfc6x1shvrmx3pkhri2777ylhyw90qvl")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-html
+           elm-virtual-dom
+           elm-json
+           elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/svg/1.0.1")
+    (synopsis "Fast SVG, rendered with virtual DOM diffing")
+    (description
+     "This package provides Elm's @acronym{SVG, Scalable Vector Graphics}
+library.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:02 2022
Received: from localhost ([127.0.0.1]:33512 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAP-0006Kx-KG
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:02 -0400
Received: from mail-vs1-f52.google.com ([209.85.217.52]:40705)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAK-0006Jd-TE
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:57 -0400
Received: by mail-vs1-f52.google.com with SMTP id j7so2175136vsj.7
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=jqwWPc7nafsVxn3Qy+3eMIJ5SOtkJTx/vDFlPvMVAgc=;
 b=PTLWbEsv2PQ/hmDeurW6mnHv05MSPk7Gve4+MGwsr0qHORfE7xjAnf3o6Ak386uqqY
 NnfHlje4MdPaKKLkVOrzpgYvI9T3ohB4+xYab3nHsMPWXRMEcIi+/3/Qs5KqlFhuGogQ
 eXYBsZ7673vvokp98NPidxl2ljTZWhy8jGfFTCfg3DAoI3F2fJRxpMiTV9hy5o0XqwGU
 mc6Fljv3HLp18nXDD+VYySendYDUcELCXefzx1z8ma0B1L6zyM9qlvax2CIGK48nnB5K
 fzNmk1UrHKpREqhRHDjv4G9BFjPQlw9OBkimccRCRa5o6qUfSJQbqaWIVmZCfzwCLJYR
 A21Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=jqwWPc7nafsVxn3Qy+3eMIJ5SOtkJTx/vDFlPvMVAgc=;
 b=z8+87yTISpr0oIcNif8YQ+10lUu7JpYeBy/gwvWbmokNrYwfhGZ01wckQwpOK+jm7T
 pwfQfku7MNKTA07IgtZAkpgCvhX/ADI8AhnqEKXE9S3aYldr7NyepYD4tjtj4mCJF/7s
 ZKw3tY1xI8elLqBECpPEvWLdHZIs1r8KcPY/pYTPPsU6rKYYe7nrhkcdL7TeCAFQSlqs
 R/ByjW0ScphPB/ZaHL79xVQWzQ/q5NtvuESgCAzXh6Z9G5b60nB4wQT7cxwQBzzZq8Kv
 zil0pwRm+m3hIIwTl4Nmnx1CRgIL8YoLJpofY1Nh1QfmE/xMJDLMHQtCIBYfHFjamZEq
 RLGA==
X-Gm-Message-State: AOAM532Ae6g8UGvhxggUsdeuaXAaDp7rsCv/QacWepWXOlW0lhuMB5+9
 v9Ob14KBocw3hUrxXTgIID1SjhRe/0MORi/5
X-Google-Smtp-Source: ABdhPJyC1n1wPXegAxOj2nR59YW/jSfDLkmdy/gBGGCPynONpg1sGX9TzBTYnhIccBTI8gOw6BjEJA==
X-Received: by 2002:a67:dc90:0:b0:32c:feff:f0e8 with SMTP id
 g16-20020a67dc90000000b0032cfefff0e8mr449423vsk.78.1652897576594; 
 Wed, 18 May 2022 11:12:56 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 b17-20020ab030b1000000b003626f894de3sm279321uam.17.2022.05.18.11.12.56
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:56 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 13/34] gnu: Add elm-time.
Date: Wed, 18 May 2022 14:11:00 -0400
Message-Id: <550d12a75571e6f770d8dac42f4a22e2ef5a7aee.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-time): New variable.
---
 gnu/packages/elm.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 5ba6743399..2b9ee3594a 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -220,3 +220,22 @@ (define-public elm-svg
      "This package provides Elm's @acronym{SVG, Scalable Vector Graphics}
 library.")
     (license license:bsd-3)))
+
+(define-public elm-time
+  (package
+    (name "elm-time")
+    (version "1.0.0")
+    (source
+     (elm-package-origin
+      "elm/time"
+      version
+      (base32 "0wqa2vhl1zf8z0j2yd3yjwfhr0dydfns43bbzll3k4rhnjadxr1l")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/time/1.0.0")
+    (synopsis
+     "POSIX time and time zones in Elm")
+    (description
+     "This package provides an Elm library for working with POSIX times, time
+zones, formatting, and the clock.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:01 2022
Received: from localhost ([127.0.0.1]:33510 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAP-0006Km-4b
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:01 -0400
Received: from mail-vk1-f173.google.com ([209.85.221.173]:43815)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAI-0006Jt-0H
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:54 -0400
Received: by mail-vk1-f173.google.com with SMTP id q136so1559345vke.10
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=GHvZXrgDVXcoAnV2csEotRO+EtbOUyWru2xeG5w7Onw=;
 b=bgZFZDxw0bKah1dUk7TIw5GPNsdx53iio/V1wDWGwDXWycUizeZGIiZG5Dz9vJzmIG
 XQEjRl47gVsJixahcPUQMN+ka3OdRGjlnfwcBYbpsvgmi2TVItlDGFwL37YfyoTPXcth
 +rtzt4+IV0hmy8JV95TDsUBq97pa8CJPzYlL/MPwuVCLvy0mj419g9R5BGErTabUfffE
 ntQMk4dntlnCD3YvhUwQ0swu9dR5yLo3PjKRjXW8cO9pIHd9Pm8b4L0EiMlzMiyQM5O6
 /iXVZhqJqrtb53bF5JNELUaaBujiCsiNNEJEaUlrfkdSShNL/W0wtEoRG//eKFFBfrpZ
 DSRw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=GHvZXrgDVXcoAnV2csEotRO+EtbOUyWru2xeG5w7Onw=;
 b=HqOApEzWDx3XPULLB0DxuuO6Ohc4kk2gAdsN8VtFOr4S1bIVe5lzsJpg+9fjw9qzfB
 +F+MfZUTeQfOGehBpbWszW5VW/TtJCmRj0GSdbv0iw1aOBdn0BohW6VAIKQo80BWFwzt
 a6XQRMbEnitKQhtpMemR3Oj4e/EJwKhauakZK1EbX67sT4LpvGmGB0YWJTpGxKmsajpn
 0QOcP3Jc4bGqJm7ad3Kq8N4q1ITNbx7THKMzmQo1xgW4WJjX6lyXV+qG9oyyDvhCEQcx
 eUUIhpScalYWBRYEKEdBrB1/gQ2iA9x47baGIsOSxZ8cZUmNczCP88B59+vtbp29CS5d
 Gk1Q==
X-Gm-Message-State: AOAM530DfshOh6KI37+ZuSboRmNSkNqp4kGvgKEHNYhZclYRBBTjGlfv
 ENzcMOEpsRxnNnanafng+AX1WxZO11n3qGSE
X-Google-Smtp-Source: ABdhPJw/gSoehYi7cNucieJzUhUTjFKwINwHKfrdAeitc1ofj5NTSCM/fImQs4iDrFFUV+YF1cfR2g==
X-Received: by 2002:a1f:c685:0:b0:349:9353:78dc with SMTP id
 w127-20020a1fc685000000b00349935378dcmr319171vkf.11.1652897568522; 
 Wed, 18 May 2022 11:12:48 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 186-20020a6719c3000000b0032cc15dcc9asm293495vsz.0.2022.05.18.11.12.48
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:48 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 11/34] gnu: Add elm-html.
Date: Wed, 18 May 2022 14:10:58 -0400
Message-Id: <df37f0dcd030c5e062e989cd67448b168129cc6f.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-html): New variable.
---
 gnu/packages/elm.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index c2ccd6c557..98b60c48f7 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -179,3 +179,22 @@ (define-public elm-virtual-dom
 higher-level libraries directly.")
     (properties '((upstream-name . "elm/virtual-dom")))
     (license license:bsd-3)))
+
+(define-public elm-html
+  (package
+    (name "elm-html")
+    (version "1.0.0")
+    (source
+     (elm-package-origin
+      "elm/html"
+      version
+      (base32 "15k1679ja57vvlpinpv06znmrxy09lbhzfkzdc89i01qa8c4gb4a")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-virtual-dom
+           elm-json
+           elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/html/1.0.0")
+    (synopsis "Fast HTML, rendered with virtual DOM diffing")
+    (description "This package provides Elm's HTML rendering library.")
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:01 2022
Received: from localhost ([127.0.0.1]:33507 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAO-0006Kb-Mx
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:01 -0400
Received: from mail-vs1-f52.google.com ([209.85.217.52]:40705)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAD-0006Jd-W9
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:50 -0400
Received: by mail-vs1-f52.google.com with SMTP id j7so2175136vsj.7
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:50 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=5AO/e0pUZ4pVJ64O9BL0WePrXsAxGkXavGJ3SdI+Zxs=;
 b=e+dnWQifg+woBLH9GBcCOBDLatzy6esfm+p1VXxTO4YYCfIJ4z8JSr0GL1iBdfEHC4
 sexY1pekWr+rjLxpdPMjU/CEab6b9jW02hA3JxCvcSbru44rTjPZJ50RcDCmlnGm7Hma
 l+iDRbAvJxrhQCwSL6MABMbmJlJoz9ko2w4lAC7Gm5XmkKpb8XBH7eAnuiNP+yeUBY2Z
 gicg3QzzzXfXthKaMQENQy/To5CVwwTFzapdVFSu4xujtOQnU5CfMib3hh9RpII6Jwzh
 /rgDLkTSdmYe4G7U7Rowul/xkBh6PwOJWDeysw0VzFLJNjHRBvaHPl4y1OSmMcRQySYl
 8wXA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=5AO/e0pUZ4pVJ64O9BL0WePrXsAxGkXavGJ3SdI+Zxs=;
 b=mXcWQ0yqBuspWcbnt6v+vP9hefDvovkfUEddkyllbLknorrYXZrwzFTKf83eCbEDPP
 hHITO90JljSrMi69Iq3UeGN9xECOIFw2yfJAvfqNcdThsD4LGxa/q95Sh85MexVV5Npv
 pfPzRrWx/NzuCdPoPHX0n97BTJJ5+RWf7qmOOH+hoJeMn8ODlBJYqQz2PtxReB/tdx1P
 NDuQV6CfhfOGGaKKKRC0YFRA/PCKAYIdUo6k5uTJH910RsVCKGpT8r8U1FSuSq3mu6Fq
 j6aLelkCV2KSlwitTjKhz+P4/aiSO0EXr7I3xo7U2jk3cHRszHb6ctXDPQ7joll5o8mY
 hbdQ==
X-Gm-Message-State: AOAM532rEmRxmUdjC7654bXEZW7WY0KmQ05x2pG8RqIcSbqEPvQAUcm7
 7mHT1hnOo2hP1wOCSyhf1kfkzXJh+P1Vvwwi
X-Google-Smtp-Source: ABdhPJxWB0IrLLUVLeIOppp0m9ier8fU+lEhsiyhVOd+HjSRTMVYvz+M/feTsH75hnm4L7z040vqRA==
X-Received: by 2002:a67:cd81:0:b0:32c:919e:2ade with SMTP id
 r1-20020a67cd81000000b0032c919e2ademr331343vsl.62.1652897564496; 
 Wed, 18 May 2022 11:12:44 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 h69-20020a1f2148000000b00356e2b49f7csm254707vkh.5.2022.05.18.11.12.44
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:44 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 10/34] gnu: Add elm-virtual-dom.
Date: Wed, 18 May 2022 14:10:57 -0400
Message-Id: <a44980eae55a83b02bb92c42e1b8eeb1ded37e29.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-virtual-dom): New variable.
---
 gnu/packages/elm.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 4ad3a000cb..c2ccd6c557 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -158,3 +158,24 @@ (define-public elm-json-bootstrap
                 (delete 'build)
                 (delete 'validate-compiled))
             #:implicit-elm-package-inputs? #f)))))
+
+(define-public elm-virtual-dom
+  (package
+    (name "elm-virtual-dom")
+    (version "1.0.3")
+    (source
+     (elm-package-origin
+      "elm/virtual-dom"
+      version
+      (base32 "1bjyyws7l0qvgp4ixzaimwriq86ncx5bvrzaksvjx3pv7bmkbx69")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-json elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/virtual-dom/1.0.2")
+    (synopsis
+     "Elm's low-level virtual DOM implementation")
+    (description
+     "This package provides a virtual DOM implementation that backs Elm's
+core libraries for HTML and SVG.  You should almost certainly use those
+higher-level libraries directly.")
+    (properties '((upstream-name . "elm/virtual-dom")))
+    (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:13:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:13:00 2022
Received: from localhost ([127.0.0.1]:33499 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOAC-0006Jm-AW
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:13:00 -0400
Received: from mail-vk1-f180.google.com ([209.85.221.180]:45036)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOAA-0006JL-HK
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:47 -0400
Received: by mail-vk1-f180.google.com with SMTP id x11so1077518vkn.11
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=J9+eHOP2o38MJXOUbxokdEbuqAhuiqCTBFxMx51elug=;
 b=ii6+POYXX+446rjOeKRWP1liJNer3fd/ryrb7DzB61VqNc4ZPwk+OGihVo7KMDhzR7
 gK4Ctfunr5t7Rq8I5TQpGbWUa0P7e+Nfko/ctbRUe6BvjeOf/smTOJk4c0YX8jxBjQ8U
 4gJM0/H5XEMXEzeHQJX82v9JrSrKAf6y7/R//zh6WOeacg5smkvwT99II3qIXtJh0J9n
 kIFKeFyccmn/6Z3hIsi9wSWGvreSJ887BnIG21pGa78yN8+aQ7i+agGQx3nlhOUcksG/
 4LB+y2dXl8bH8C1GcrYZOMf1/cRKah1ibMd8RNKbtsZmrkNwcFUQyKopTRXpoIwR/QsR
 8ijQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=J9+eHOP2o38MJXOUbxokdEbuqAhuiqCTBFxMx51elug=;
 b=qXZCbg61/LksVVqefZ9yWWb2xRfUHDZjb4VZMYAF0EdvqaRG/V/H//Gr4vwklW07YT
 Kb2cTEI8x4N6UY/Zsu4SqSBoYjmVI0+yR4QzVMGBFxwI/DrHTUX1EXcc72vaa6IDyMVO
 NPHsv4UDZaAJYXv3WD82ncIVTqO8zxCDcOEKqJDzZSampClET9UdhPQzBoXmW4/gkchk
 usF9R5AHR67d9PPLgADK/70M2xW8ZvTVRYLC3dOc3mahWYOh7PRajywyhvJ5hcC+QHlx
 W6XElxzu4/+r9uGWKxcCRXPgRkEJZvqNecIH065WKRlk+svJyH//PJEZ2FA7P98Ybovf
 Eyiw==
X-Gm-Message-State: AOAM5315v0/aSf2oay9V00CYB9w3gLk9dBDN9yBKgHBVuptcXQbM5Fa2
 UwHsYFiioXxzFgAupjiNqTXyfSuoYvZtn56l
X-Google-Smtp-Source: ABdhPJzzUbIbGCsif5LJZHkiaLp9y2qlDRU5uFfWAjpVRHCW8qyrBaO1Nwt+eWuU8Os0dMJWASNbzg==
X-Received: by 2002:a1f:ed86:0:b0:356:e57f:38f3 with SMTP id
 l128-20020a1fed86000000b00356e57f38f3mr522583vkh.40.1652897560554; 
 Wed, 18 May 2022 11:12:40 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 l12-20020a056102242c00b0032d275e6917sm251918vsi.23.2022.05.18.11.12.40
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:40 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 09/34] import: Add Elm importer.
Date: Wed, 18 May 2022 14:10:56 -0400
Message-Id: <04fbe538a0ce1566381ed270987127c461c28b73.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: 2.3 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview:  * guix/import/elm.scm,
 guix/scripts/import/elm.scm: New files.
 * Makefile.am (MODULES): Add them. * guix/scripts/import.scm (importers):
 Add "elm". * doc/guix.texi (Invoking guix import): Document Elm [...] 
 Content analysis details:   (2.3 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at https://www.dnswl.org/,
 no trust [209.85.221.180 listed in list.dnswl.org]
 0.7 SPF_NEUTRAL            SPF: sender does not match SPF record (neutral)
 0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 1.6 PDS_OTHER_BAD_TLD      Untrustworthy TLDs
 [URI: yoctocell.xyz (xyz)]
 -0.0 RCVD_IN_MSPIKE_H2      RBL: Average reputation (+2)
 [209.85.221.180 listed in wl.mailspike.net]
 -0.0 T_SCC_BODY_TEXT_LINE   No description available.
 0.0 T_FILL_THIS_FORM_SHORT Fill in a short form with personal
 information
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: 1.3 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 
 Content preview:  * guix/import/elm.scm, guix/scripts/import/elm.scm: New files.
    * Makefile.am (MODULES): Add them. * guix/scripts/import.scm (importers):
    Add "elm". * doc/guix.texi (Invoking guix import): Document Elm [...] 
 
 Content analysis details:   (1.3 points, 10.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
  0.7 SPF_NEUTRAL            SPF: sender does not match SPF record (neutral)
  0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
  1.6 PDS_OTHER_BAD_TLD      Untrustworthy TLDs
                             [URI: yoctocell.xyz (xyz)]
 -0.0 T_SCC_BODY_TEXT_LINE   No description available.
 -1.0 MAILING_LIST_MULTI     Multiple indicators imply a widely-seen list
                             manager

* guix/import/elm.scm, guix/scripts/import/elm.scm: New files.
* Makefile.am (MODULES): Add them.
* guix/scripts/import.scm (importers): Add "elm".
* doc/guix.texi (Invoking guix import): Document Elm importer.
* doc/contributing.texi (Elm Packages): Mention it.
* tests/elm.scm ("(guix import elm)"): New test group.
---
 Makefile.am                 |   2 +
 doc/contributing.texi       |   4 +-
 doc/guix.texi               |  25 +++++
 guix/import/elm.scm         | 210 ++++++++++++++++++++++++++++++++++++
 guix/scripts/import.scm     |   3 +-
 guix/scripts/import/elm.scm | 107 ++++++++++++++++++
 tests/elm.scm               | 171 +++++++++++++++++++++++++++++
 7 files changed, 519 insertions(+), 3 deletions(-)
 create mode 100644 guix/import/elm.scm
 create mode 100644 guix/scripts/import/elm.scm

diff --git a/Makefile.am b/Makefile.am
index 9ca92c407c..5a42bb90b2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -259,6 +259,7 @@ MODULES =					\
   guix/import/cran.scm				\
   guix/import/crate.scm				\
   guix/import/egg.scm   			\
+  guix/import/elm.scm				\
   guix/import/elpa.scm   			\
   guix/import/gem.scm				\
   guix/import/git.scm                           \
@@ -310,6 +311,7 @@ MODULES =					\
   guix/scripts/import/crate.scm			\
   guix/scripts/import/cran.scm			\
   guix/scripts/import/egg.scm   		\
+  guix/scripts/import/elm.scm			\
   guix/scripts/import/elpa.scm  		\
   guix/scripts/import/gem.scm			\
   guix/scripts/import/gnu.scm			\
diff --git a/doc/contributing.texi b/doc/contributing.texi
index 555b9bb961..2354874cb0 100644
--- a/doc/contributing.texi
+++ b/doc/contributing.texi
@@ -919,8 +919,8 @@ Elm Packages
 In many cases we can reconstruct an Elm package's upstream name heuristically,
 but, since conversion to a Guix-style name involves a loss of information,
 this is not always possible.  Care should be taken to add the
-@code{'upstream-name} property when necessary so that tools
-will work correctly. The most notable scenarios
+@code{'upstream-name} property when necessary so that @samp{guix import elm}
+will work correctly (@pxref{Invoking guix import}). The most notable scenarios
 when explicitly specifying the upstream name is necessary are:
 
 @enumerate
diff --git a/doc/guix.texi b/doc/guix.texi
index 63fb647045..d7bc7523cd 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -13157,6 +13157,31 @@ Invoking guix import
 in Guix.
 @end table
 
+@item elm
+@cindex elm
+Import metadata from the Elm package repository
+@uref{https://package.elm-lang.org, package.elm-lang.org}, as in this example:
+
+@example
+guix import elm elm-explorations/webgl
+@end example
+
+The Elm importer also allows you to specify a version string:
+
+@example
+guix import elm elm-explorations/webgl@@1.1.3
+@end example
+
+Additional options include:
+
+@table @code
+@item --recursive
+@itemx -r
+Traverse the dependency graph of the given upstream package recursively
+and generate package expressions for all those packages that are not yet
+in Guix.
+@end table
+
 @item opam
 @cindex OPAM
 @cindex OCaml
diff --git a/guix/import/elm.scm b/guix/import/elm.scm
new file mode 100644
index 0000000000..74902b8617
--- /dev/null
+++ b/guix/import/elm.scm
@@ -0,0 +1,210 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix import elm)
+  #:use-module (ice-9 match)
+  #:use-module (ice-9 regex)
+  #:use-module (ice-9 vlist)
+  #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-11)
+  #:use-module (srfi srfi-26)
+  #:use-module (srfi srfi-34)
+  #:use-module (srfi srfi-35)
+  #:use-module (guix utils)
+  #:use-module (guix base32)
+  #:use-module (guix hash)
+  #:use-module (guix http-client)
+  #:use-module (guix memoization)
+  #:use-module (guix diagnostics)
+  #:use-module (guix i18n)
+  #:use-module ((guix ui) #:select (display-hint))
+  #:use-module ((guix build utils)
+                #:select ((package-name->name+version
+                           . hyphen-package-name->name+version)
+                          find-files
+                          invoke))
+  #:use-module (guix import utils)
+  #:use-module (guix git)
+  #:use-module (guix import json)
+  #:autoload   (gcrypt hash) (hash-algorithm sha256)
+  #:use-module (json)
+  #:use-module (guix packages)
+  #:use-module (guix upstream)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix build-system elm)
+  #:export (elm-recursive-import
+            %elm-package-registry
+            %current-elm-checkout
+            elm->guix-package))
+
+(define %registry-url
+  ;; It is much nicer to fetch this small (< 40 KB gzipped)
+  ;; file once than to do many HTTP requests.
+  "https://package.elm-lang.org/all-packages")
+
+(define %elm-package-registry
+  ;; This is a parameter to support both testing and memoization.
+  ;; In pseudo-code, it has the contract:
+  ;;     (parameter/c (-> json/c)
+  ;;                  (promise/c (vhash/c string? (listof string?))))
+  ;; To set the parameter, provide a thunk that returns a value suitable
+  ;; as an argument to 'json->registry-vhash'.  Accessing the parameter
+  ;; returns a promise wrapping the resulting vhash.
+  (make-parameter
+   (lambda ()
+     (cond
+      ((json-fetch %registry-url #:http-fetch http-fetch/cached))
+      (else
+       (raise (formatted-message
+               (G_ "error downloading Elm package registry from ~a")
+               %registry-url)))))
+   (lambda (thunk)
+     (delay (json->registry-vhash (thunk))))))
+
+(define (json->registry-vhash jsobject)
+  "Parse the '(json)' module's representation of the Elm package registry to a
+vhash mapping package names to lists of available versions, sorted from latest
+to oldest."
+  (fold (lambda (entry vh)
+          (match entry
+            ((name . vec)
+             (vhash-cons name
+                         (sort (vector->list vec) version>?)
+                         vh))))
+        vlist-null
+        jsobject))
+
+(define (json->direct-dependencies jsobject)
+  "Parse the '(json)' module's representation of an 'elm.json' file's
+'dependencies' or 'test-dependencies' field to a list of strings naming direct
+dependencies, handling both the 'package' and 'application' grammars."
+  (cond
+   ;; *unspecified*
+   ((not (pair? jsobject))
+    '())
+   ;; {"type":"application"}
+   ((every (match-lambda
+             (((or "direct" "indirect") (_ . _) ...)
+              #t)
+             (_
+              #f))
+           jsobject)
+    (map car (or (assoc-ref jsobject "direct") '())))
+   ;; {"type":"package"}
+   (else
+    (map car jsobject))))
+
+;; <project-info> handles both {"type":"package"} and {"type":"application"}
+(define-json-mapping <project-info> make-project-info project-info?
+  json->project-info
+  (dependencies project-info-dependencies
+                "dependencies" json->direct-dependencies)
+  (test-dependencies project-info-test-dependencies
+                     "test-dependencies" json->direct-dependencies)
+  ;; "synopsis" and "license" may be missing for {"type":"application"}
+  (synopsis project-info-synopsis
+            "summary" (lambda (x)
+                        (if (string? x)
+                            x
+                            "")))
+  (license project-info-license
+           "license" (lambda (x)
+                       (if (string? x)
+                           (spdx-string->license x)
+                           #f))))
+
+(define %current-elm-checkout
+  ;; This is a parameter for testing purposes.
+  (make-parameter
+   (lambda (name version)
+     (define-values (checkout _commit _relation)
+       ;; Elm requires that packages use this very specific format
+       (update-cached-checkout (string-append "https://github.com/" name)
+                               #:ref `(tag . ,version)))
+     checkout)))
+
+(define (make-elm-package-sexp name version)
+  "Return two values: the `package' s-expression for the Elm package with the
+given NAME and VERSION, and a list of Elm packages it depends on."
+  (define checkout
+    ((%current-elm-checkout) name version))
+  (define info
+    (call-with-input-file (string-append checkout "/elm.json")
+      json->project-info))
+  (define dependencies
+    (project-info-dependencies info))
+  (define test-dependencies
+    (project-info-test-dependencies info))
+  (define guix-name
+    (elm->package-name name))
+  (values
+   `(package
+      (name ,guix-name)
+      (version ,version)
+      (source (elm-package-origin
+               ,name
+               version ;; no ,
+               (base32
+                ,(bytevector->nix-base32-string
+                  (file-hash* checkout
+                              #:algorithm (hash-algorithm sha256)
+                              #:recursive? #t)))))
+      (build-system elm-build-system)
+      ,@(maybe-propagated-inputs (map elm->package-name dependencies))
+      ,@(maybe-inputs (map elm->package-name test-dependencies))
+      (home-page ,(string-append "https://package.elm-lang.org/packages/"
+                                 name "/" version))
+      (synopsis ,(project-info-synopsis info))
+      (description
+       ;; Try to use the first paragraph of README.md (which Elm requires),
+       ;; or fall back to synopsis otherwise.
+       ,(beautify-description
+         (match (chunk-lines (call-with-input-file
+                                 (string-append checkout "/README.md")
+                               read-lines))
+           ((_ par . _)
+            (string-join par " "))
+           (_
+            (project-info-synopsis info)))))
+      ,@(let ((inferred-name (infer-elm-package-name guix-name)))
+          (if (equal? inferred-name name)
+              '()
+              `((properties '((upstream-name . ,name))))))
+      (license ,(project-info-license info)))
+   (append dependencies test-dependencies)))
+
+(define elm->guix-package
+  (memoize
+   (lambda* (package-name #:key repo version)
+     "Fetch the metadata for PACKAGE-NAME, an Elm package registered at
+package.elm.org, and return two values: the `package' s-expression
+corresponding to that package (or #f on failure) and a list of Elm
+dependencies."
+     (cond
+      ((vhash-assoc package-name (force (%elm-package-registry)))
+       => (match-lambda
+            ((_found latest . _versions)
+             (make-elm-package-sexp package-name (or version latest)))))
+      (else
+       (values #f '()))))))
+
+(define* (elm-recursive-import package-name #:optional version)
+  (recursive-import package-name
+                    #:version version
+                    #:repo->guix-package elm->guix-package
+                    #:guix-name elm->package-name))
diff --git a/guix/scripts/import.scm b/guix/scripts/import.scm
index 40fa6759ae..fa79f3211e 100644
--- a/guix/scripts/import.scm
+++ b/guix/scripts/import.scm
@@ -5,6 +5,7 @@
 ;;; Copyright © 2019 Ricardo Wurmus <rekado@HIDDEN>
 ;;; Copyright © 2021 Simon Tournier <zimon.toutoune@HIDDEN>
 ;;; Copyright © 2021 Xinglu Chen <public@HIDDEN>
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -80,7 +81,7 @@ (define %standard-import-options '())
 
 (define importers '("gnu" "pypi" "cpan" "hackage" "stackage" "egg" "elpa"
                     "gem" "go" "cran" "crate" "texlive" "json" "opam"
-                    "minetest"))
+                    "minetest" "elm"))
 
 (define (resolve-importer name)
   (let ((module (resolve-interface
diff --git a/guix/scripts/import/elm.scm b/guix/scripts/import/elm.scm
new file mode 100644
index 0000000000..68dcbf1070
--- /dev/null
+++ b/guix/scripts/import/elm.scm
@@ -0,0 +1,107 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix scripts import elm)
+  #:use-module (guix ui)
+  #:use-module (guix utils)
+  #:use-module (guix scripts)
+  #:use-module (guix import elm)
+  #:use-module (guix scripts import)
+  #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-11)
+  #:use-module (srfi srfi-37)
+  #:use-module (srfi srfi-71)
+  #:use-module (ice-9 match)
+  #:use-module (ice-9 format)
+  #:export (guix-import-elm))
+
+
+;;;
+;;; Command-line options.
+;;;
+
+(define %default-options
+  '())
+
+(define (show-help)
+  (display (G_ "Usage: guix import elm PACKAGE-NAME
+
+Import and convert the Elm package PACKAGE-NAME.  Optionally, a version
+can be specified after the arobas (@) character.\n"))
+  (display (G_ "
+  -h, --help             display this help and exit"))
+  (display (G_ "
+  -r, --recursive        import packages recursively"))
+  (display (G_ "
+  -V, --version          display version information and exit"))
+  (newline)
+  (show-bug-report-information))
+
+(define %options
+  ;; Specification of the command-line options.
+  (cons* (option '(#\h "help") #f #f
+                 (lambda args
+                   (show-help)
+                   (exit 0)))
+         (option '(#\V "version") #f #f
+                 (lambda args
+                   (show-version-and-exit "guix import elm")))
+         (option '(#\r "recursive") #f #f
+                 (lambda (opt name arg result)
+                   (alist-cons 'recursive #t result)))
+         %standard-import-options))
+
+
+;;;
+;;; Entry point.
+;;;
+
+(define (guix-import-elm . args)
+  (define (parse-options)
+    ;; Return the alist of option values.
+    (parse-command-line args %options (list %default-options)
+                        #:build-options? #f))
+
+  (let* ((opts (parse-options))
+         (args (filter-map (match-lambda
+                             (('argument . value)
+                              value)
+                             (_ #f))
+                           (reverse opts))))
+    (match args
+      ((spec)
+       (with-error-handling
+         (let ((name version (package-name->name+version spec)))
+           (if (assoc-ref opts 'recursive)
+               ;; Recursive import
+               (map (match-lambda
+                      ((and ('package ('name name) . rest) pkg)
+                       `(define-public ,(string->symbol name)
+                          ,pkg))
+                      (_ #f))
+                    (elm-recursive-import name version))
+               ;; Single import
+               (let ((sexp (elm->guix-package name #:version version)))
+                 (unless sexp
+                   (leave (G_ "failed to download meta-data for package '~a'~%")
+                          name))
+                 sexp)))))
+      (()
+       (leave (G_ "too few arguments~%")))
+      ((many ...)
+       (leave (G_ "too many arguments~%"))))))
diff --git a/tests/elm.scm b/tests/elm.scm
index 96f958f060..c30623da03 100644
--- a/tests/elm.scm
+++ b/tests/elm.scm
@@ -18,6 +18,13 @@
 
 (define-module (test-elm)
   #:use-module (guix build-system elm)
+  #:use-module (guix import elm)
+  #:use-module (guix base32)
+  #:use-module (guix hash)
+  #:use-module (guix utils)
+  #:autoload   (gcrypt hash) (hash-algorithm sha256)
+  #:use-module (json)
+  #:use-module (ice-9 match)
   #:use-module (srfi srfi-64))
 
 (test-begin "elm")
@@ -94,4 +101,168 @@ (define-module (test-elm)
     (test-not-inferred "gcc-toolchain")
     (test-not-inferred "font-adobe-source-sans-pro")))
 
+(define test-package-registry-json
+  ;; we intentionally list versions in different orders here
+  "{
+    \"elm/core\": [\"1.0.0\", \"1.0.1\", \"1.0.2\", \"1.0.3\", \"1.0.4\"],
+    \"elm-guix/demo\": [\"2.0.0\", \"3.0.0\", \"1.0.0\"]
+}")
+
+(define test-elm-core-json
+  "{
+    \"type\": \"package\",
+    \"name\": \"elm/core\",
+    \"summary\": \"Elm's standard libraries\",
+    \"license\": \"BSD-3-Clause\",
+    \"version\": \"1.0.4\",
+    \"exposed-modules\": {
+        \"Primitives\": [
+            \"Basics\",
+            \"String\",
+            \"Char\",
+            \"Bitwise\",
+            \"Tuple\"
+        ],
+        \"Collections\": [
+            \"List\",
+            \"Dict\",
+            \"Set\",
+            \"Array\"
+        ],
+        \"Error Handling\": [
+            \"Maybe\",
+            \"Result\"
+        ],
+        \"Debug\": [
+            \"Debug\"
+        ],
+        \"Effects\": [
+            \"Platform.Cmd\",
+            \"Platform.Sub\",
+            \"Platform\",
+            \"Process\",
+            \"Task\"
+        ]
+    },
+    \"elm-version\": \"0.19.0 <= v < 0.20.0\",
+    \"dependencies\": {},
+    \"test-dependencies\": {}
+}")
+
+(define test-elm-core-readme
+  "# Core Libraries
+
+Every Elm project needs this package!
+
+It provides **basic functionality** like addition and subtraction as well as
+**data structures** like lists, dictionaries, and sets.")
+
+(define test-elm-guix-demo-json
+  "{
+    \"type\": \"package\",
+    \"name\": \"elm-guix/demo\",
+    \"summary\": \"A test for `(guix import elm)`\",
+    \"license\": \"GPL-3.0-or-later\",
+    \"version\": \"3.0.0\",
+    \"exposed-modules\": [
+        \"Guix.Demo\"
+    ],
+    \"elm-version\": \"0.19.0 <= v < 0.20.0\",
+    \"dependencies\": {
+        \"elm/core\": \"1.0.0 <= v < 2.0.0\"
+    },
+    \"test-dependencies\": {
+        \"elm/json\": \"1.0.0 <= v < 2.0.0\"
+    }
+}")
+
+(define test-elm-guix-demo-readme
+  ;; intentionally left blank
+  "")
+
+(define (directory-sha256 directory)
+  "Returns the string representing the hash of DIRECTORY as would be used in a
+package definition."
+  (bytevector->nix-base32-string
+   (file-hash* directory
+               #:algorithm (hash-algorithm sha256)
+               #:recursive? #t)))
+
+(test-group "(guix import elm)"
+  (call-with-temporary-directory
+   (lambda (dir)
+     ;; Initialize our fake git checkouts.
+     (define elm-core-dir
+       (string-append dir "/test-elm-core-1.0.4"))
+     (define elm-guix-demo-dir
+       (string-append dir "/test-elm-guix-demo-3.0.0"))
+     (for-each (match-lambda
+                 ((dir json readme)
+                  (mkdir dir)
+                  (with-output-to-file (string-append dir "/elm.json")
+                    (lambda ()
+                      (display json)))
+                  (with-output-to-file (string-append dir "/README.md")
+                    (lambda ()
+                      (display readme)))))
+               `((,elm-core-dir ,test-elm-core-json ,test-elm-core-readme)
+                 (,elm-guix-demo-dir
+                  ,test-elm-guix-demo-json
+                  ,test-elm-guix-demo-readme)))
+     ;; Replace network resources with sample data.
+     (parameterize ((%elm-package-registry
+                     (lambda ()
+                       (json-string->scm test-package-registry-json)))
+                    (%current-elm-checkout
+                     (lambda (name version)
+                       (match (list name version)
+                         (("elm/core" "1.0.4")
+                          elm-core-dir)
+                         (("elm-guix/demo" "3.0.0")
+                          elm-guix-demo-dir)))))
+       (test-assert "(elm->guix-package \"elm/core\")"
+         (match (elm->guix-package "elm/core")
+           (`(package
+               (name "elm-core")
+               (version "1.0.4")
+               (source (elm-package-origin
+                        "elm/core"
+                        version
+                        (base32 ,(? string? hash))))
+               (build-system elm-build-system)
+               (home-page
+                "https://package.elm-lang.org/packages/elm/core/1.0.4")
+               (synopsis "Elm's standard libraries")
+               (description "Every Elm project needs this package!")
+               (license license:bsd-3))
+            (equal? (directory-sha256 elm-core-dir)
+                    hash))
+           (x
+            (raise-exception x))))
+       (test-assert "(elm-recursive-import \"elm-guix/demo\")"
+         (match (elm-recursive-import "elm-guix/demo")
+           (`((package
+                (name "elm-guix-demo")
+                (version "3.0.0")
+                (source (elm-package-origin
+                         "elm-guix/demo"
+                         version
+                         (base32 ,(? string? hash))))
+                (build-system elm-build-system)
+                (propagated-inputs
+                 ,'`(("elm-core" ,elm-core)))
+                (inputs
+                 ,'`(("elm-json" ,elm-json)))
+                (home-page
+                 "https://package.elm-lang.org/packages/elm-guix/demo/3.0.0")
+                (synopsis "A test for `(guix import elm)`")
+                (description
+                 "This package provides a test for `(guix import elm)`")
+                (properties '((upstream-name . "elm-guix/demo")))
+                (license license:gpl3+)))
+            (equal? (directory-sha256 elm-guix-demo-dir)
+                    hash))
+           (x
+            (raise-exception x))))))))
+
 (test-end "elm")
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:12:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:12:44 2022
Received: from localhost ([127.0.0.1]:33494 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOA8-0006JV-2A
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:44 -0400
Received: from mail-vk1-f171.google.com ([209.85.221.171]:36580)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOA6-0006J0-1n
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:42 -0400
Received: by mail-vk1-f171.google.com with SMTP id 125so1577813vkw.3
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=hBgSEJ58Zdr4r33zt9FIFcJt1zauWUSnAuRcMyblxlg=;
 b=VhlelX5eqhUrrjLCvTNdAs8VUAFatykwEzQzFrgXIi5la2Ys15IwGnIkEwOx7NpyLG
 nQDGEdYAgbblSkMQkI1ocs0YTfmGBQD8tCJQngENmOVI0vkNx5PEGVHMTzA7URNkbmEl
 3XH7+zVwiYxsM6nsr4Xmg+Mxx7YkchgNwFpIFN0MEoi9Y1mDGlOEtYLntRQQZBAslVjo
 Jvg0YtGVpwwP4GAzs7VPSN6cS3hu5XXDGIczY8izYoxzCXzr5Xpb9QnN/CXG/F3K+fBU
 ZxLmJzsy6i6YVB6xLhqU+8e5x4IaJsz08rHrsrvEdtfuR6KLSb9r/2DuDcHoN6UxwZ33
 9x8w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=hBgSEJ58Zdr4r33zt9FIFcJt1zauWUSnAuRcMyblxlg=;
 b=rdR19ZKqoxGu/pEbelSV8niV64hiAnTiOn7dG1mSwX8OE65O8MSTWjvViJxOUxVM61
 aHuAvDurYHX2SLWYL8DYVSdghJzGxKOXVx8bA8Z6hwgxx+Ss2gsLnZJ4BBPfX+asI9y7
 th+ye1UJKq6y4oTKV6t4EobFIpuPs+hPgjkObGF+3HtnpDs0lozymX9UtTNWRRwtcfYV
 g4cTtwmpADzOEo522keRHgD5ZubLe84OzKTVe2cpZX/x13tvay8lXUv0nV/jYHjFGP/K
 nkve9UcNoILxYkaY6/vAH5vc2Z6fUbTgNHwdOtWx82Sy3VA1P9fLsSbQLTKaT7W0kAA1
 0Ydw==
X-Gm-Message-State: AOAM530Oe4lRvxGTZo9ne6KHaYKhvzyupEZ6hgf7TLKv+yvHrDoYViBg
 AvZnXhX30aWV8NyX5s/+IVGf1fkxUR7V60Ll
X-Google-Smtp-Source: ABdhPJzC6vq7xeeA6JGDc0GxVgiQpZfJ9BybnN5KKufTy5iGIviapfnRg5t49zaLawcCqrB3kTFybQ==
X-Received: by 2002:a05:6122:221f:b0:343:f3d4:87cb with SMTP id
 bb31-20020a056122221f00b00343f3d487cbmr449532vkb.13.1652897556611; 
 Wed, 18 May 2022 11:12:36 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 v145-20020a1f2f97000000b003571658b813sm132940vkv.10.2022.05.18.11.12.36
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:36 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 08/34] import: json: Accept '#:http-fetch' in 'json-fetch'.
Date: Wed, 18 May 2022 14:10:55 -0400
Message-Id: <a7003bc883f6a95d53b24c175c8dccbfbf5a5e0e.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

For example, supplying 'http-fetch/cached' would enable caching.

* guix/import/json.scm (json-fetch): Add '#:http-fetch' argument.
---
 guix/import/json.scm | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/guix/import/json.scm b/guix/import/json.scm
index 0c98bb25b8..ae00ee929e 100644
--- a/guix/import/json.scm
+++ b/guix/import/json.scm
@@ -35,13 +35,16 @@ (define-module (guix import json)
             json->scheme-file))
 
 (define* (json-fetch url
+                     #:key
+                     (http-fetch http-fetch)
                      ;; Note: many websites returns 403 if we omit a
                      ;; 'User-Agent' header.
-                     #:key (headers `((user-agent . "GNU Guile")
-                                      (Accept . "application/json"))))
+                     (headers `((user-agent . "GNU Guile")
+                                (Accept . "application/json"))))
   "Return a representation of the JSON resource URL (a list or hash table), or
 #f if URL returns 403 or 404.  HEADERS is a list of HTTP headers to pass in
-the query."
+the query.  HTTP-FETCH is called to perform the request: for example, to
+enable caching, supply 'http-fetch/cached'."
   (guard (c ((and (http-get-error? c)
                   (let ((error (http-get-error-code c)))
                     (or (= 403 error)
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:12:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:12:39 2022
Received: from localhost ([127.0.0.1]:33491 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrOA2-0006JB-RZ
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:39 -0400
Received: from mail-ua1-f41.google.com ([209.85.222.41]:34540)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrOA2-0006Ij-1a
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:38 -0400
Received: by mail-ua1-f41.google.com with SMTP id q1so1140014uao.1
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:38 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=ZfeijSE0LWaJBksuEnC+RhnW2KB6KzKXEsLYt0MJmF0=;
 b=FvASC1K39lGerYOyAYQCYlKlH69csu8qA5W65qsPSazL/25yDfY4QtYKca5O/HkC5k
 g0YYl0eUPSKl3BqKffVSWf2nynf54OkGW3nSszYJDFbAbfDNv4UFAhpmUGnhGaG9/sB5
 jx/LGrtlzoJ3c7nB6TAnut6m+KVfUjhqrrRxTwFQapmulrk/KvCy93U1zSqGWm7KDunH
 ybhb+q7RE5pwHzcve01uQwYzN5HmHa4gCOOQUCbN6l5faiLhORE1Eb7h0JhAbqWMY1Lp
 2kVCo2SW+1VX7VyeHOU3tuzNWPceweBFuPnxhosYiwXmQQIr65grQj91VnZI+brHzbqJ
 WeKw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=ZfeijSE0LWaJBksuEnC+RhnW2KB6KzKXEsLYt0MJmF0=;
 b=uvvd2V7D74cyKoWgTLTmy4EmaomnOvOdpG+/v0uuacsGMjHDeMMu0O0lxbZswlTroa
 9SLECzlnRoE8x4CJjyvt5fkuRh9XzCmXa2rrSxfD7TcWMx1QcjMI/5WXRYhdoCM4jLRn
 k9pMlFAZOWSv6yZHAvkNu3ViM9eAN2hCtvkEKPB6G5kjEkDtDSpGhauPc7W+KrGhQlCc
 qsZ/Sa6+/QGzsHOiuiMUsQLHjDg2/ZiY7gNyhrH7bAvZ53w7CkGMAvZm5wJ2BKuPh95D
 q+hGTTcx50AzNsmDQbp6nMuQ54Jo5gsUIMRw0ywt+ZLYOUKs/fJTM1RCKoBrWpBnAsD1
 Sv7g==
X-Gm-Message-State: AOAM5324RBNFmZMsog2c7+5PCCnZJfPTq1wdScrnLK56ZbvHws0lRSwq
 /8baDbQ4aOcdHNuuxJHaSpdo+PMZ+Q73wb2o
X-Google-Smtp-Source: ABdhPJyA1sddKAlQbIFMXdtfIuVo9hI8Id4TtEWFItKC9FtTK0S4N/I5dGTmyDibvmsWN9ozumQ4QA==
X-Received: by 2002:ab0:154f:0:b0:368:b7ad:1729 with SMTP id
 p15-20020ab0154f000000b00368b7ad1729mr590862uae.8.1652897552541; 
 Wed, 18 May 2022 11:12:32 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 e2-20020a1fe702000000b00356d920da1csm267172vkh.2.2022.05.18.11.12.32
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:32 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 07/34] http-client: 'http-fetch/cached' converts strings to
 URIs.
Date: Wed, 18 May 2022 14:10:54 -0400
Message-Id: <ee055b3aedca9be03bce0e0e6723ea43ef249fc4.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* guix/http-client.scm (http-fetch/cached): Use 'string->uri' if URI is
a string, as with 'http-fetch'.
---
 guix/http-client.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/guix/http-client.scm b/guix/http-client.scm
index 699f5dfd57..9138a627ac 100644
--- a/guix/http-client.scm
+++ b/guix/http-client.scm
@@ -314,7 +314,10 @@ (define* (http-fetch/cached uri #:key (ttl (%http-cache-ttl)) text?
 TIMEOUT specifies the timeout in seconds for connection establishment.
 
 Write information about redirects to LOG-PORT."
-  (let ((file (cache-file-for-uri uri)))
+  (let* ((uri (if (string? uri)
+                  (string->uri uri)
+                  uri))
+         (file (cache-file-for-uri uri)))
     (define (update-cache cache-port)
       (define cache-time
         (and cache-port
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:12:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:12:35 2022
Received: from localhost ([127.0.0.1]:33488 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrO9z-0006Is-It
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:35 -0400
Received: from mail-vk1-f174.google.com ([209.85.221.174]:35789)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrO9x-0006IC-VP
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:34 -0400
Received: by mail-vk1-f174.google.com with SMTP id e7so1582995vkh.2
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=mPnV0reYPZUEtyICx03sVheX4EBv2lQhaKfqkiBQhsw=;
 b=giEkkEW+fkk1V9KkLCpuWMOfwnQyQ1ZRW6tNdD/U4svUY8XpxhfbUdmeEM33TJug5H
 Q7vEZmsXuS6I1BlCeMfKHgo9KiNzNdsrrEgx2iLDEE2/SV3gdHdP50Yrp4ySWCEHVZ0F
 1YQsXy0voIbpFu1Kbf8DeDwby7WjORhLiDRKSwhd2v7jC6vv53chQoxfRuqLVPh5IkJD
 9dbFb15NmAbyyqJ7zcxzgNSaqKLob6E6l/Dee7+BI6lXq9A/Iuy5+79AQH0AEcKjmUHb
 mCq5Hx5AWZyBHTdZYWELPKnvdeci0dYXVrVn8/Ql7GaddkOdXDUjWfwgTWRSDzFN/CQ4
 0w7g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=mPnV0reYPZUEtyICx03sVheX4EBv2lQhaKfqkiBQhsw=;
 b=Uz8SinaBmu6+QPxlg1wAQVdTjH5opX40Xg/rPBUgKOreUeUPfV4dw1VEsU2n3gIesa
 Eql3s/pH8HagryIMvXblr/QvUhcXsRZ7o4IEH3UdnjLIXqYmIs43UJzXYJo49NPyi3iq
 wy3OWQVWfYbRbzjO4geCpJHK1mCtE/aytkrZFVWR4zvPCERmiLo4xYx8bQzjkIUJt4Px
 TOCDJjBfAnSCxPY4f0YhnOl5QNRdLnRaA6Di9eu8HwOyudovV57ZxyYBcSMQcCbGhANp
 /RbmXRvfvtKu1qQ63Uof4xJZuV+BZcmhpbFVaYvI444mows9gi+3sect7MtBgM7k09TY
 pJ0A==
X-Gm-Message-State: AOAM532jgk95i4AfckOr+dPFwXE8jTanBuGUzBeGIX+64KU76bI13m9n
 7DBn3Bt+gw6Zm7T3D7gHviZvrMHSJshHfjqF
X-Google-Smtp-Source: ABdhPJyCHGZnSaeC+s8MbmfVinf66/AaXyJlFUSTX+Vlv8tN4LCQXjAU0/8ZWBsFVTqGzkgXnEg0Lg==
X-Received: by 2002:a05:6122:1184:b0:356:f6f5:da0c with SMTP id
 x4-20020a056122118400b00356f6f5da0cmr371589vkn.36.1652897548401; 
 Wed, 18 May 2022 11:12:28 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 h12-20020ab02a8c000000b0036280b488c7sm340569uar.16.2022.05.18.11.12.27
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:28 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 06/34] http-client: Accept '#:headers' in
 'http-fetched/cached'.
Date: Wed, 18 May 2022 14:10:53 -0400
Message-Id: <c748a6704454efd70211544bd7b87df7a13c6332.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

Callers can supply alternative headers as with 'http-fetch'.

* guix/http-client.scm (http-fetch/cached): Add '#:headers' argument.
---
 guix/http-client.scm | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git a/guix/http-client.scm b/guix/http-client.scm
index a367c41afa..699f5dfd57 100644
--- a/guix/http-client.scm
+++ b/guix/http-client.scm
@@ -296,6 +296,7 @@ (define (cache-file-for-uri uri)
                                   #f #f base64url-alphabet))))
 
 (define* (http-fetch/cached uri #:key (ttl (%http-cache-ttl)) text?
+                            (headers '((user-agent . "GNU Guile")))
                             (write-cache dump-port)
                             (cache-miss (const #t))
                             (log-port (current-error-port))
@@ -307,6 +308,9 @@ (define* (http-fetch/cached uri #:key (ttl (%http-cache-ttl)) text?
 the data to cache.  Call CACHE-MISS with URI just before fetching data from
 URI.
 
+HEADERS is an alist of extra HTTP headers, to which cache-related headers are
+added automatically as appropriate.
+
 TIMEOUT specifies the timeout in seconds for connection establishment.
 
 Write information about redirects to LOG-PORT."
@@ -316,12 +320,12 @@ (define* (http-fetch/cached uri #:key (ttl (%http-cache-ttl)) text?
         (and cache-port
              (stat:mtime (stat cache-port))))
 
-      (define headers
-        `((user-agent . "GNU Guile")
-          ,@(if cache-time
-                `((if-modified-since
-                   . ,(time-utc->date (make-time time-utc 0 cache-time))))
-                '())))
+      (define extended-headers
+        (if cache-time
+            `((if-modified-since
+               . ,(time-utc->date (make-time time-utc 0 cache-time)))
+              ,@headers)
+            headers))
 
       ;; Update the cache and return an input port.
       (guard (c ((http-get-error? c)
@@ -332,7 +336,8 @@ (define* (http-fetch/cached uri #:key (ttl (%http-cache-ttl)) text?
                      (raise c))))
         (let ((port (http-fetch uri #:text? text?
                                 #:log-port log-port
-                                #:headers headers #:timeout timeout)))
+                                #:headers extended-headers
+                                #:timeout timeout)))
           (cache-miss uri)
           (mkdir-p (dirname file))
           (when cache-port
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:12:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:12:32 2022
Received: from localhost ([127.0.0.1]:33485 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrO9w-0006IX-86
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:32 -0400
Received: from mail-vs1-f41.google.com ([209.85.217.41]:37860)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrO9t-0006Hi-Or
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:30 -0400
Received: by mail-vs1-f41.google.com with SMTP id w10so458218vsa.4
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=8eB+KxS+XvMi+vTosChUMKJY/hyck4QM8yg+N6olk1s=;
 b=BXHLGE8s+9TulrS/pEb/GifG7zz/ETI3t7rNXUEr8y0Qhs8+8Dx1X/evm2OrmST3LW
 P0W0WFkfYLuNcP+4bCDG6ccSK1kFDIoxjFYI7ffll9PDmupzqmJiKlvnt4yAU6dnUN/O
 FI29ni4Onj3Y5buRG8XxJukJXQzjmmaMTOHKzY06BmMrW8+EnMW9E/Qdb8HNRve2poYN
 g0ZNtyGFOfKYc/wzFPPLHBrABMvAAbmObHm/eZ+uPE8jwIpa6QlWIyXZiuanuEDZE2dT
 RJTOKvJUwPtUUUWUWl1ZVTn5evWz50TD1B48Sqc6UUtucU0li4+oQz5Th4BgTMFGr5Oo
 fOBw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=8eB+KxS+XvMi+vTosChUMKJY/hyck4QM8yg+N6olk1s=;
 b=SH9nckdFz/ayePuhB0De1X4gM+7RMJcNv0ZLQWekO+EfHL2AqD8LjaY4kXcLYMZmp1
 BRxqV5nOVzBmb2uGaHkAy+3gXABpXb4AuIjkl5tbOQG1TTxDpnZBCPIY9RBvSiJNI2uF
 u5bp0TAWqbPrluoIin67kf3AwKA5+7ZmoyLZGaUbqeIsZPNb8mkmV7gUSsgnhmhUf1aq
 ojF/3Bte3EAEP3fnLucxga4k/vWglfSaYx1K9A5057c+9m1rp+gMeVSy0SMIx7xvoUmU
 lqn5h2UxGPB7nIz9S4P1Xt4hW+2kmfhNV44N7/zXlyhI+aocqu1/318L5Moukft209Dq
 n72A==
X-Gm-Message-State: AOAM530l6gTLL7Pk41bI0srOMg/EuYLUhHDvzpNp7BHF4HJCZoLHDIV8
 jWiIbEVw9G+TD1+OJmrzaqYGanA4Y+fE1Vd4
X-Google-Smtp-Source: ABdhPJzkEf1hHdlTRML/ImcwpgkCMizS4ddukbYG9PCt+PXOYSXjFWrrXl+7f2irXt683gvHfCYZQw==
X-Received: by 2002:a05:6102:6d1:b0:32d:35ae:f68e with SMTP id
 m17-20020a05610206d100b0032d35aef68emr588781vsg.7.1652897544395; 
 Wed, 18 May 2022 11:12:24 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 a18-20020ab03c92000000b003626f894deasm342446uax.24.2022.05.18.11.12.23
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:24 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 05/34] build-system/elm: Add implicit Elm inputs.
Date: Wed, 18 May 2022 14:10:52 -0400
Message-Id: <a0eea4de284cf7a2b36a556f545624c90543583f.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* guix/build-system/elm.scm (default-elm-core): New variable.
(default-elm-json): Likewise
(lower): Use them as implicit inputs when applicable.
---
 guix/build-system/elm.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/guix/build-system/elm.scm b/guix/build-system/elm.scm
index b54954bf4e..293bcbfb64 100644
--- a/guix/build-system/elm.scm
+++ b/guix/build-system/elm.scm
@@ -103,6 +103,18 @@ (define (default-elm)
   (let ((elm (resolve-interface '(gnu packages elm))))
     (module-ref elm 'elm)))
 
+(define (default-elm-core)
+  "Return the default elm-core package."
+  ;; Lazily resolve the binding to avoid a circular dependency.
+  (let ((elm (resolve-interface '(gnu packages elm))))
+    (module-ref elm 'elm-core)))
+
+(define (default-elm-json)
+  "Return the default elm-json package."
+  ;; Lazily resolve the binding to avoid a circular dependency.
+  (let ((elm (resolve-interface '(gnu packages elm))))
+    (module-ref elm 'elm-json)))
+
 (define* (lower name
                 #:key source inputs native-inputs outputs system target
                 (implicit-elm-package-inputs? #t)
@@ -127,6 +139,28 @@ (define* (lower name
                '())
          ,@inputs
          ("elm" ,elm)
+         ,@(cond
+            (implicit-elm-package-inputs?
+             ;; These are needed for elm-build-system even if not actually
+             ;; needed by the package being built.  But "elm/json" is often
+             ;; present in practice, and "elm/core" always is: only add the
+             ;; default packages if no suitable inputs have been given
+             ;; explicitly.
+             (filter-map
+              (match-lambda
+                ((name get-default)
+                 (cond
+                  ((find (match-lambda
+                           ((_ pkg . _)
+                            (equal? name (guix-package->elm-name pkg))))
+                         inputs)
+                   #f)
+                  (else
+                   `(,name ,(get-default))))))
+              `(("elm/core" ,default-elm-core)
+                ("elm/json" ,default-elm-json))))
+            (else
+             '()))
          ;; TODO: probably don't need most of (standard-packages)
          ,@(standard-packages)))
       (outputs outputs)
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:12:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:12:32 2022
Received: from localhost ([127.0.0.1]:33483 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrO9v-0006IQ-Si
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:32 -0400
Received: from mail-vs1-f47.google.com ([209.85.217.47]:36582)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrO9q-0006HS-4P
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:26 -0400
Received: by mail-vs1-f47.google.com with SMTP id a127so2931317vsa.3
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:26 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=A40wEgFKKY9lYeWzxj9PYAKWwU0RVrK9CMU3xjzroE4=;
 b=duuhDif1zXaTlOACA7J8sP3KSh9rLlF4auoeT7FHnKWvsfOPBSSuZxew6nhLC1LHie
 biDT1V6MsFicclXBOYHkNGt6NntsYsaZ2B6+kRjWOOWAYVKEv29Ru8l493oUGKTyt56E
 2xXGZ2MDpDUmtz3QQ1BqQcgqerd9Jll7MPvkEFBOzILJgSixvKNUtrJvvSOqk4bSxU5p
 RTP/ylWOxRjRNEoOYp531VviWQ/L5PgO3N9AP04wBhvKR7oTeE586zORPoRRgThcXJf7
 IPehBJbi4TWOmjwzTN5gRH1JiNkn2yCyH+AN0jgnmMifzMW9hhtoE+8/Am+RJegW4px4
 rggQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=A40wEgFKKY9lYeWzxj9PYAKWwU0RVrK9CMU3xjzroE4=;
 b=tXE9lxG6hyf/4tvm9I2aOTSqRMVgta5nhRn4CkN4oHJYWNuyUZY6JvgWVx40sG3ccA
 L39GtLvVLNkXPAzC11M93DU7Vz6uoL4T2ejhYZ/GQL3TgFx2LwQ0KmbVAfoWIYgu4McU
 wfDaknpS+CucJJ6Z297zXJg5vmLMEnS3WAeGWZTRW03WuFhOj4lavJpaxj33bZa4682v
 guvq2KlpFTofDLHwnX54XDtTpatgf01l6JH5eWPVyZ0iIPznSF7Isq1rWUkpsVZ1RJDz
 vZUBOw80U9EX2t+MQ+MuntC3gZn6KQJtrn4y98zhXER6QvwQx0xFB33TC7yjhwJNbsAV
 mvZg==
X-Gm-Message-State: AOAM531IBcIciUjZUd6vOtsdbApHr9+Vzyy8ciKLEvh1ByI4ZBleghQM
 LYgpv7F1sdY8UVUNCJND/1OPrMqolYiMWnTN
X-Google-Smtp-Source: ABdhPJxdCT30ghCkeTsPsRmEvgWvIdzKr6mixsWXorpDiidexjwbA9GPCsYkZOKBq7WlYYjUBO1+jA==
X-Received: by 2002:a67:f547:0:b0:32c:dedd:a0b2 with SMTP id
 z7-20020a67f547000000b0032cdedda0b2mr646734vsn.39.1652897540411; 
 Wed, 18 May 2022 11:12:20 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 e9-20020a056102310900b00335b911757csm254098vsh.26.2022.05.18.11.12.17
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:18 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 04/34] gnu: Add elm-core and elm-json.
Date: Wed, 18 May 2022 14:10:51 -0400
Message-Id: <44d6846eec4e21cb7016e64b6d9cc52ae101e511.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

Both of these packages are needed for 'elm-build-system' to work.

* gnu/packages/elm.scm (elm-core, elm-json, elm-json-bootstrap): New
variables.
---
 gnu/packages/elm.scm | 55 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 35bdcc65f5..4ad3a000cb 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -103,3 +103,58 @@ (define-public elm
 ;; The 'elm' package used to be called 'elm-compiler'.
 (define-public elm-compiler
   (deprecated-package "elm-compiler" elm))
+
+(define-public elm-core
+  (package
+    (name "elm-core")
+    (version "1.0.5")
+    (source
+     (elm-package-origin
+      "elm/core"
+      version
+      (base32 "0g3xbi8f9k5q45s95nx3jfvzwdf4b2n63a52wr4027d2xjx0pmvl")))
+    (build-system elm-build-system)
+    (inputs (list elm-json-bootstrap))
+    (arguments
+     (list #:implicit-elm-package-inputs? #f))
+    (home-page "https://package.elm-lang.org/packages/elm/core/1.0.5")
+    (synopsis "Elm's standard libraries")
+    (description "Every Elm project needs this package!")
+    (license license:bsd-3)))
+
+(define-public elm-json
+  (package
+    (name "elm-json")
+    (version "1.1.3")
+    (source
+     (elm-package-origin
+      "elm/json"
+      version
+      (base32 "1hx986yqw1v2bpkrh6brszl8n8awwg1s8zi7v5qg0p1rqwvjlicz")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (arguments
+     (list #:implicit-elm-package-inputs? #f))
+    (home-page "https://package.elm-lang.org/packages/elm/json/1.1.3")
+    (synopsis "Encode and decode JSON values in Elm")
+    (description
+     "This package helps you convert between Elm values and JSON values.")
+    (license license:bsd-3)))
+
+(define-public elm-json-bootstrap
+  ;; elm/core doesn't depend on elm/json,
+  ;; but elm-build-system's strategy for building it
+  ;; (and everything else) does
+  (hidden-package
+   (package
+     (inherit elm-json)
+     (name "elm-json-bootstrap")
+     (properties '((upstream-name . "elm/json")))
+     (propagated-inputs '())
+     (arguments
+      (list #:phases
+            #~(modify-phases %standard-phases
+                (delete 'configure)
+                (delete 'build)
+                (delete 'validate-compiled))
+            #:implicit-elm-package-inputs? #f)))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:12:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:12:31 2022
Received: from localhost ([127.0.0.1]:33480 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrO9r-0006I5-KO
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:31 -0400
Received: from mail-vs1-f41.google.com ([209.85.217.41]:39909)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrO9k-0006HC-Mc
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:25 -0400
Received: by mail-vs1-f41.google.com with SMTP id c26so2911705vsl.6
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=aYUZseC0JUmec1Tdm/r4g8OG4uj2GUI3T3eZRoIbIRQ=;
 b=MqJwoSn2A81FvcCYw4tttooy59WepFyJ9BtWITIHCGQfu5gXjktYigk000t7WQWc/b
 /YQGNoEyjr6LwHPkfGFTY1eAsSOKZX8EvAe2uCuuInMwS2FVmL0B7pUZuStn0OabbW0r
 yI4qVvAhYXNW6wZ9ptWeGhWgS87rDSEP/0rCOEDI7V+4cnawDlDc6LIBUs6UCRtFy6iZ
 QCEAG6YsyZeWmWCvn2/0UuMoZU8i/PXEH+FjB8HwBTXDAU4T6f+nLnX187Ad9U2T5ubY
 x7RZu0N65/Yy3DbSBNWxV7BIhsm7OJNg5zlZg4K8MjLROm55RCnE92KkLPR5iF6bYfP1
 b5KQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=aYUZseC0JUmec1Tdm/r4g8OG4uj2GUI3T3eZRoIbIRQ=;
 b=sngS2cQqO9xkh0SEMqeRyIvqPnfmt2OgMsbNbi8ct7kNBdCrgeMBC0szEyxrk9Vyf/
 wgc5nNpaOjbynUT+lB5fj0p2iVClQmhArx6qRJMcVFOX9kXWrsqgyDqGdoH7d87AeGf9
 L9maASTzF/fQF3ltt1u+WqBI8vE6bLdKRm6dzpEVZ40PKZW0BWuMz+SksWFXdd2e5s8U
 M1Qg4a2xyIR2uKtC5RANTe9u1CAH4WfwHagpOZcP6h/aNS/itgzPyzk4A1cLafxjbGPF
 XUYIBCv9dLglevxNsFmVX2KsWQx3nzcEvpMYctbudglR9T7P1coElfIsgcoGKgba/Yvh
 KLXg==
X-Gm-Message-State: AOAM530D68x+pv67E507TB7TZaROSBjGM2rdHMxotvAXn2qv7cVq7AeU
 U/HBXRkXN8c6+FALt+PQVJktklchDqLCdkuP
X-Google-Smtp-Source: ABdhPJyTApO8st9E//CAcW0GKFeygPS4GdKJIr3wKJpWjKEAmI5vu6gu7KtOqtVWYJdFE07wMWSyPQ==
X-Received: by 2002:a67:ca1b:0:b0:335:d0aa:e140 with SMTP id
 z27-20020a67ca1b000000b00335d0aae140mr436818vsk.22.1652897534185; 
 Wed, 18 May 2022 11:12:14 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 t14-20020ac5c3ce000000b00352d73d5d71sm305273vkk.18.2022.05.18.11.12.13
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:14 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 03/34] guix: Add elm-build-system.
Date: Wed, 18 May 2022 14:10:50 -0400
Message-Id: <b3ea36abed9770dbfdfbde3618c59f174667df95.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.7 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/patches/elm-offline-package-registry.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/elm.scm (elm): Use it.
* guix/build-system/elm.scm, guix/build/elm-build-system.scm,
tests/elm.scm: New files.
* Makefile.scm (MODULES, SCM_TESTS): Add them.
* doc/guix.texi (Build Systems): Document 'elm-build-system'.
* doc/contributing.texi (Elm Packages): New section. Document naming
conventions and utilities.
---
 Makefile.am                                   |   3 +
 doc/contributing.texi                         |  82 ++++
 doc/guix.texi                                 |  52 +++
 gnu/local.mk                                  |   1 +
 gnu/packages/elm.scm                          |   4 +-
 .../elm-offline-package-registry.patch        |  71 ++++
 guix/build-system/elm.scm                     | 172 ++++++++
 guix/build/elm-build-system.scm               | 380 ++++++++++++++++++
 tests/elm.scm                                 |  97 +++++
 9 files changed, 861 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/elm-offline-package-registry.patch
 create mode 100644 guix/build-system/elm.scm
 create mode 100644 guix/build/elm-build-system.scm
 create mode 100644 tests/elm.scm

diff --git a/Makefile.am b/Makefile.am
index 85a22be99c..9ca92c407c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -141,6 +141,7 @@ MODULES =					\
   guix/build-system/cmake.scm			\
   guix/build-system/dub.scm			\
   guix/build-system/dune.scm			\
+  guix/build-system/elm.scm			\
   guix/build-system/emacs.scm			\
   guix/build-system/font.scm			\
   guix/build-system/go.scm			\
@@ -192,6 +193,7 @@ MODULES =					\
   guix/build/cmake-build-system.scm		\
   guix/build/dub-build-system.scm		\
   guix/build/dune-build-system.scm		\
+  guix/build/elm-build-system.scm		\
   guix/build/emacs-build-system.scm		\
   guix/build/meson-build-system.scm		\
   guix/build/minify-build-system.scm		\
@@ -472,6 +474,7 @@ SCM_TESTS =					\
   tests/derivations.scm			\
   tests/discovery.scm				\
   tests/egg.scm				\
+  tests/elm.scm				\
   tests/elpa.scm				\
   tests/file-systems.scm			\
   tests/gem.scm				\
diff --git a/doc/contributing.texi b/doc/contributing.texi
index 862dcbf12a..555b9bb961 100644
--- a/doc/contributing.texi
+++ b/doc/contributing.texi
@@ -447,6 +447,7 @@ Packaging Guidelines
 * Perl Modules::                Little pearls.
 * Java Packages::               Coffee break.
 * Rust Crates::                 Beware of oxidation.
+* Elm Packages::                Trees of browser code
 * Fonts::                       Fond of fonts.
 @end menu
 
@@ -898,6 +899,87 @@ Rust Crates
 Rust compiler, or the test suite may have atrophied since it was released.
 
 
+@node Elm Packages
+@subsection Elm Packages
+
+@cindex Elm
+Elm applications can be named like other software: their names need not
+mention Elm.
+
+Packages in the Elm sense (see @code{elm-build-system} under @ref{Build
+Systems}) are required use names of the format
+@var{author}@code{/}@var{project}, where both the @var{author} and the
+@var{project} may contain hyphens internally, and the @var{author} sometimes
+contains uppercase letters.
+
+To form the Guix package name from the upstream name, we follow a convention
+similar to Python packages (@pxref{Python Modules}), adding an @code{elm-}
+prefix unless the name would already begin with @code{elm-}.
+
+In many cases we can reconstruct an Elm package's upstream name heuristically,
+but, since conversion to a Guix-style name involves a loss of information,
+this is not always possible.  Care should be taken to add the
+@code{'upstream-name} property when necessary so that tools
+will work correctly. The most notable scenarios
+when explicitly specifying the upstream name is necessary are:
+
+@enumerate
+@item
+When the @var{author} is @code{elm} and the @var{project} contains one or more
+hyphens, as with @code{elm/virtual-dom}; and
+
+@item
+When the @var{author} contains hyphens or uppercase letters, as with
+@code{Elm-Canvas/raster-shapes}---unless the @var{author} is
+@code{elm-explorations}, which is handled as a special case, so packages like
+@code{elm-explorations/markdown} do @emph{not} need to use the
+@code{'upstream-name} property.
+@end enumerate
+
+The module @code{(guix build-system elm)} provides the following utilities for
+working with names and related conventions:
+
+@deffn {Scheme procedure} elm-package-origin @var{elm-name} @var{version} @
+  @var{hash}
+Returns a Git origin using the repository naming and tagging regime required
+for a published Elm package with the upstream name @var{elm-name} at version
+@var{version} with sha256 checksum @var{hash}.
+
+For example:
+@lisp
+(package
+  (name "elm-html")
+  (version "1.0.0")
+  (source
+   (elm-package-origin
+    "elm/html"
+    version
+    (base32 "15k1679ja57vvlpinpv06znmrxy09lbhzfkzdc89i01qa8c4gb4a")))
+  ...)
+@end lisp
+@end deffn
+
+@deffn {Scheme procedure} elm->package-name @var{elm-name}
+Returns the Guix-style package name for an Elm package with upstream name
+@var{elm-name}.
+
+Note that there is more than one possible @var{elm-name} for which
+@code{elm->package-name} will produce a given result.
+@end deffn
+
+@deffn {Scheme procedure} guix-package->elm-name @var{package}
+Given an Elm @var{package}, returns the possibly-inferred upstream name, or
+@code{#f} the upstream name is not specified via the @code{'upstream-name}
+property and can not be inferred by @code{infer-elm-package-name}.
+@end deffn
+
+@deffn {Scheme procedure} infer-elm-package-name @var{guix-name}
+Given the @var{guix-name} of an Elm package, returns the inferred upstream
+name, or @code{#f} if the upstream name can't be inferred.  If the result is
+not @code{#f}, supplying it to @code{elm->package-name} would produce
+@var{guix-name}.
+@end deffn
+
 @node Fonts
 @subsection Fonts
 
diff --git a/doc/guix.texi b/doc/guix.texi
index c007c93dd3..63fb647045 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -102,6 +102,7 @@
 Copyright @copyright{} 2021 Josselin Poiret@*
 Copyright @copyright{} 2022 Remco van 't Veer@*
 Copyright @copyright{} 2022 Aleksandr Vityazev@*
+Copyright @copyright{} 2022 Philip M@sup{c}Grath@*
 
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -8717,6 +8718,57 @@ Build Systems
 
 @end defvr
 
+@defvr {Scheme variable} elm-build-system
+This variable is exported by @code{(guix build-system elm)}.  It implements a
+build procedure for @url{https://elm-lang.org, Elm} packages similar to
+@samp{elm install}.
+
+The build system adds an Elm compiler package to the set of inputs.  The
+default compiler package (currently @code{elm}) can be overridden
+using the @code{#:elm} argument.  Additionally, Elm packages needed by the
+build system itself are added as implicit inputs if they are not already
+present: to suppress this behavior, use the
+@code{#:implicit-elm-package-inputs?} argument, which is primarily useful for
+bootstrapping.
+
+The @code{"dependencies"} and @code{"test-dependencies"} in an Elm package's
+@file{elm.json} file correspond to @code{propagated-inputs} and @code{inputs},
+respectively.
+
+Elm requires a particular structure for package names: @pxref{Elm Packages}
+for more details, including utilities provided by @code{(guix build-system
+elm)}.
+
+There are currently a few noteworthy limitations to @code{elm-build-system}:
+
+@itemize
+@item
+The build system is focused on @dfn{packages} in the Elm sense of the word:
+Elm @dfn{projects} which declare @code{@{ "type": "package" @}} in their
+@file{elm.json} files.  Using @code{elm-build-system} to build Elm
+@dfn{applications} (which declare @code{@{ "type": "application" @}}) is
+possible, but requires ad-hoc modifications to the build phases.
+
+@item
+Elm supports multiple versions of a package coexisting simultaneously under
+@env{ELM_HOME}, but this does not yet work well with @code{elm-build-system}.
+This limitation primarily affects Elm applications, because they specify
+exact versions for their dependencies, whereas Elm packages specify supported
+version ranges.  As a workaround, you can use
+the @code{patch-application-dependencies} procedure provided by
+@code{(guix build elm-build-system)} to rewrite their @file{elm.json} files to
+refer to the package versions actually present in the build environment.
+Alternatively, Guix package transformations (@pxref{Defining Package
+Variants}) could be used to rewrite an application's entire dependency graph.
+
+@item
+We are not yet able to run tests for Elm projects because neither
+@url{https://github.com/mpizenberg/elm-test-rs, @command{elm-test-rs}} nor the
+Node.js-based @url{https://github.com/rtfeldman/node-test-runner,
+@command{elm-test}} runner has been packaged for Guix yet.
+@end itemize
+@end defvr
+
 @defvr {Scheme Variable} go-build-system
 This variable is exported by @code{(guix build-system go)}.  It
 implements a build procedure for Go packages using the standard
diff --git a/gnu/local.mk b/gnu/local.mk
index de044bdbff..94590ab5b5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1024,6 +1024,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/einstein-build.patch			\
   %D%/packages/patches/elfutils-tests-ptrace.patch		\
   %D%/packages/patches/elixir-path-length.patch			\
+  %D%/packages/patches/elm-offline-package-registry.patch	\
   %D%/packages/patches/elm-reactor-static-files.patch		\
   %D%/packages/patches/elogind-revert-polkit-detection.patch	\
   %D%/packages/patches/emacs-exec-path.patch			\
diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index a3863e6e6f..35bdcc65f5 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -25,6 +25,7 @@ (define-module (gnu packages elm)
   #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages haskell-web)
   #:use-module (guix build-system haskell)
+  #:use-module (guix build-system elm)
   #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
@@ -53,7 +54,8 @@ (define-public elm
        (sha256
         (base32 "1rdg3xp3js9xadclk3cdypkscm5wahgsfmm4ldcw3xswzhw6ri8w"))
        (patches
-        (search-patches "elm-reactor-static-files.patch"))))
+        (search-patches "elm-reactor-static-files.patch"
+                        "elm-offline-package-registry.patch"))))
     (build-system haskell-build-system)
     (arguments
      (list
diff --git a/gnu/packages/patches/elm-offline-package-registry.patch b/gnu/packages/patches/elm-offline-package-registry.patch
new file mode 100644
index 0000000000..761ec69878
--- /dev/null
+++ b/gnu/packages/patches/elm-offline-package-registry.patch
@@ -0,0 +1,71 @@
+From 06563409e6f2b1cca7bc1b27e31efd07a7569da8 Mon Sep 17 00:00:00 2001
+From: Philip McGrath <philip@HIDDEN>
+Date: Thu, 14 Apr 2022 22:41:04 -0400
+Subject: [PATCH] minimal support for offline builds
+
+Normally, Elm performs HTTP requests before building to obtain or
+update its list of all registed packages and their versions.
+This is problematic in the Guix build environment.
+
+This patch causes Elm to check if the `GUIX_ELM_OFFLINE_REGISTRY_FILE`
+is set and, if so, to use the contents of the file it specifies as
+though it were the response from
+https://package.elm-lang.org/all-packages.
+
+This patch does not attempt to add more general support for offline
+builds. In particular, it does not attempt to support incremental
+updates to the package registry cache file. See also discussion at
+https://discourse.elm-lang.org/t/private-package-tool-spec/6779/25.
+---
+ builder/src/Deps/Registry.hs | 25 +++++++++++++++++++++----
+ 1 file changed, 21 insertions(+), 4 deletions(-)
+
+diff --git a/builder/src/Deps/Registry.hs b/builder/src/Deps/Registry.hs
+index 8d7def98..70cf3622 100644
+--- a/builder/src/Deps/Registry.hs
++++ b/builder/src/Deps/Registry.hs
+@@ -18,6 +18,8 @@ import Control.Monad (liftM2)
+ import Data.Binary (Binary, get, put)
+ import qualified Data.List as List
+ import qualified Data.Map.Strict as Map
++import System.Environment as Env
++import qualified Data.ByteString as BS
+ 
+ import qualified Deps.Website as Website
+ import qualified Elm.Package as Pkg
+@@ -190,13 +192,28 @@ getVersions' name (Registry _ versions) =
+ post :: Http.Manager -> String -> D.Decoder x a -> (a -> IO b) -> IO (Either Exit.RegistryProblem b)
+ post manager path decoder callback =
+   let
+-    url = Website.route path []
+-  in
+-  Http.post manager url [] Exit.RP_Http $
+-    \body ->
++    mkBodyCallback url body =
+       case D.fromByteString decoder body of
+         Right a -> Right <$> callback a
+         Left _ -> return $ Left $ Exit.RP_Data url body
++    postOnline url cb =
++      Http.post manager url [] Exit.RP_Http cb
++    performPost f url =
++      f url (mkBodyCallback url)
++  in
++    do
++      maybeFile <- Env.lookupEnv "GUIX_ELM_OFFLINE_REGISTRY_FILE"
++      case (path, maybeFile) of
++        ( "/all-packages", Just file ) ->
++          performPost postOffline file
++        ( _, _ ) ->
++          -- don't know how to handle other endpoints yet
++          performPost postOnline (Website.route path [])
++
++postOffline :: String -> (BS.ByteString -> IO a) -> IO a
++postOffline file callback = do
++  body <- BS.readFile file
++  callback body
+ 
+ 
+ 
+-- 
+2.32.0
+
diff --git a/guix/build-system/elm.scm b/guix/build-system/elm.scm
new file mode 100644
index 0000000000..b54954bf4e
--- /dev/null
+++ b/guix/build-system/elm.scm
@@ -0,0 +1,172 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix build-system elm)
+  #:use-module (guix store)
+  #:use-module (guix utils)
+  #:use-module (guix packages)
+  #:use-module (guix gexp)
+  #:use-module (guix monads)
+  #:use-module (guix search-paths)
+  #:use-module (guix git-download)
+  #:use-module (guix build-system)
+  #:use-module (guix build-system gnu)
+  #:use-module (ice-9 match)
+  #:use-module (srfi srfi-1)
+  #:export (elm->package-name
+            guix-package->elm-name
+            infer-elm-package-name
+            elm-package-origin
+            %elm-build-system-modules
+            %elm-default-modules
+            elm-build
+            elm-build-system))
+
+(define (elm->package-name name)
+  "Given the NAME of an Elm package, return a Guix-style package name."
+  (let ((converted
+         (string-join (string-split (string-downcase name) #\/) "-")))
+    (if (string-prefix? "elm-" converted)
+        converted
+        (string-append "elm-" converted))))
+
+(define (guix-package->elm-name package)
+  "Given an Elm PACKAGE, return the possibly-inferred upstream name, or #f the
+upstream name is not specified and can't be inferred."
+  (or (assoc-ref (package-properties package) 'upstream-name)
+      (infer-elm-package-name (package-name package))))
+
+(define (infer-elm-package-name guix-name)
+  "Given the GUIX-NAME of an Elm package, return the inferred upstream name,
+or #f if it can't be inferred.  If the result is not #f, supplying it to
+'elm->package-name' would produce GUIX-NAME.
+
+See also 'guix-package->elm-name', which respects the 'upstream-name'
+property."
+  (define (parts-join part0 parts)
+    (string-join (cons part0 parts) "-"))
+  (match (string-split guix-name #\-)
+    (("elm" "explorations" part0 parts ...)
+     (string-append "elm-explorations/"
+                    (parts-join part0 parts)))
+    (("elm" owner part0 parts ...)
+     (string-append owner "/" (parts-join part0 parts)))
+    (("elm" repo)
+     (string-append "elm/" repo))
+    (_
+     #f)))
+
+(define (elm-package-origin elm-name version hash)
+  "Return an origin for the Elm package with upstream name ELM-NAME at the
+given VERSION with sha256 checksum HASH."
+  ;; elm requires this very specific repository structure and tagging regime
+  (origin
+    (method git-fetch)
+    (uri (git-reference
+          (url (string-append "https://github.com/" elm-name))
+          (commit version)))
+    (file-name (git-file-name (elm->package-name elm-name) version))
+    (sha256 hash)))
+
+(define %elm-build-system-modules
+  ;; Build-side modules imported by default.
+  `((guix build elm-build-system)
+    (guix build json)
+    (guix build union)
+    ,@%gnu-build-system-modules))
+
+(define %elm-default-modules
+  ;; Modules in scope in the build-side environment.
+  '((guix build elm-build-system)
+    (guix build utils)
+    (guix build json)
+    (guix build union)))
+
+(define (default-elm)
+  "Return the default Elm package for builds."
+  ;; Lazily resolve the binding to avoid a circular dependency.
+  (let ((elm (resolve-interface '(gnu packages elm))))
+    (module-ref elm 'elm)))
+
+(define* (lower name
+                #:key source inputs native-inputs outputs system target
+                (implicit-elm-package-inputs? #t)
+                (elm (default-elm))
+                #:allow-other-keys
+                #:rest arguments)
+  "Return a bag for NAME."
+  (define private-keywords
+    '(#:target #:implicit-elm-package-inputs? #:elm #:inputs #:native-inputs))
+  (cond
+   (target
+    ;; Cross-compilation is not yet supported.  It should be easy, though,
+    ;; since the build products are all platform-independent.
+    #f)
+   (else
+    (bag
+      (name name)
+      (system system)
+      (host-inputs
+       `(,@(if source
+               `(("source" ,source))
+               '())
+         ,@inputs
+         ("elm" ,elm)
+         ;; TODO: probably don't need most of (standard-packages)
+         ,@(standard-packages)))
+      (outputs outputs)
+      (build elm-build)
+      (arguments (strip-keyword-arguments private-keywords arguments))))))
+
+(define* (elm-build name inputs
+                    #:key
+                    source
+                    (tests? #t)
+                    (phases '%standard-phases)
+                    (outputs '("out"))
+                    (search-paths '())
+                    (system (%current-system))
+                    (guile #f)
+                    (imported-modules %elm-build-system-modules)
+                    (modules %elm-default-modules))
+  "Build SOURCE using ELM."
+  (define builder
+    (with-imported-modules imported-modules
+      #~(begin
+          (use-modules #$@(sexp->gexp modules))
+          (elm-build #:name #$name
+                     #:source #+source
+                     #:system #$system
+                     #:tests? #$tests?
+                     #:phases #$phases
+                     #:outputs #$(outputs->gexp outputs)
+                     #:search-paths '#$(sexp->gexp
+                                        (map search-path-specification->sexp
+                                             search-paths))
+                     #:inputs #$(input-tuples->gexp inputs)))))
+  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
+                                                  system #:graft? #f)))
+    (gexp->derivation name builder
+                      #:system system
+                      #:guile-for-build guile)))
+
+(define elm-build-system
+  (build-system
+    (name 'elm)
+    (description "The Elm build system")
+    (lower lower)))
diff --git a/guix/build/elm-build-system.scm b/guix/build/elm-build-system.scm
new file mode 100644
index 0000000000..02d7c029dd
--- /dev/null
+++ b/guix/build/elm-build-system.scm
@@ -0,0 +1,380 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix build elm-build-system)
+  #:use-module ((guix build gnu-build-system) #:prefix gnu:)
+  #:use-module (guix build utils)
+  #:use-module (guix build json)
+  #:use-module (guix build union)
+  #:use-module (ice-9 ftw)
+  #:use-module (ice-9 rdelim)
+  #:use-module (ice-9 regex)
+  #:use-module (ice-9 match)
+  #:use-module (ice-9 popen)
+  #:use-module (ice-9 vlist)
+  #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-26)
+  #:use-module (srfi srfi-71)
+  #:export (%standard-phases
+            patch-application-dependencies
+            patch-json-string-escapes
+            read-offline-registry->vhash
+            elm-build))
+
+;;; Commentary:
+;;;
+;;; Elm draws a sharp distinction between "projects" with `{"type":"package"}`
+;;; vs. `{"type":"application"}` in the "elm.json" file: see
+;;; <https://github.com/elm/compiler/blob/master/docs/elm.json/package.md> and
+;;; <https://github.com/elm/compiler/blob/master/docs/elm.json/application.md>.
+;;; For now, `elm-build-system` is designed for "package"s: packaging
+;;; "application"s requires ad-hoc replacements for some phases---but see
+;;; `patch-application-dependencies`, which helps to work around a known issue
+;;; discussed below.  It would be nice to add more streamlined support for
+;;; "application"s one we have more experience building them in Guix.  For
+;;; example, we could incorporate the `uglifyjs` advice from
+;;; <https://github.com/elm/compiler/blob/master/hints/optimize.md>.
+;;;
+;;; We want building an Elm "package" to produce:
+;;;
+;;;   - a "docs.json" file with extracted documentation; and
+;;;
+;;;   - an "artifacts.dat" file with compilation results for use in building
+;;;     "package"s and "application"s.
+;;;
+;;; Unfortunately, there isn't an entry point to the Elm compiler that builds
+;;; those files directly.  Building with `elm make` does something different,
+;;; more oriented toward development, testing, and building "application"s.
+;;; We work around this limitation by staging the "package" we're building as
+;;; though it were already installed in ELM_HOME, generating a trivial Elm
+;;; "application" that depends on the "package", and building the
+;;; "application", which causes the files for the "package" to be built.
+;;;
+;;; Much of the ceremony involved is to avoid using `elm` in ways that would
+;;; make it try to do network IO beyond the bare minimum functionality for
+;;; which we've patched a replacement into our `elm`.  On the other hand, we
+;;; get to take advantage of the very regular structure required of Elm
+;;; packages.
+;;;
+;;; *Known issue:* Elm itself supports multiple versions of "package"s
+;;; coexisting simultaneously under ELM_HOME, but we do not support this yet.
+;;; Sometimes, parallel versions coexisting causes `elm` to try to write to
+;;; built "artifacts.dat" files.  For now, two workarounds are possible:
+;;;
+;;;  - Use `patch-application-dependencies` to rewrite an "application"'s
+;;;    "elm.json" file to refer to the versions of its inputs actually
+;;;    packaged in Guix.
+;;;
+;;;  - Use a Guix package transformation to rewrite your "application"'s
+;;;    dependencies recursively, so that only one version of each Elm
+;;;    "package" is included in your "application"'s build environment.
+;;;
+;;; Patching `elm` more extensively---perhaps adding an `elm guix`
+;;; subcommand`---might let us address these issues more directly.
+;;;
+;;; Code:
+;;;
+
+(define %essential-elm-packages
+  ;; elm/json isn't essential in a fundamental sense,
+  ;; but it's required for a {"type":"application"},
+  ;; which we are generating to trigger the build
+  '("elm/core" "elm/json"))
+
+(define* (target-elm-version #:optional elm)
+  "Return the version of ELM or whichever 'elm' is in $PATH.
+Return #false if it cannot be determined."
+  (let* ((pipe (open-pipe* OPEN_READ
+                           (or elm "elm")
+                           "--version"))
+         (line (read-line pipe)))
+    (and (zero? (close-pipe pipe))
+         (string? line)
+         line)))
+
+(define* (prepare-elm-home #:key native-inputs inputs #:allow-other-keys)
+  "Set the ELM_HOME environment variable and populate the indicated directory
+with the union of the Elm \"package\" inputs.  Also, set GUIX_ELM_VERSION to
+the version of the Elm compiler in use."
+  (let* ((elm (search-input-file (or native-inputs inputs) "/bin/elm"))
+         (elm-version (target-elm-version elm)))
+    (setenv "GUIX_ELM_VERSION" elm-version)
+    (mkdir "../elm-home")
+    (with-directory-excursion "../elm-home"
+      (union-build elm-version
+                   (search-path-as-list
+                    (list (string-append "share/elm/" elm-version))
+                    (map cdr inputs))
+                   #:create-all-directories? #t)
+      (setenv "ELM_HOME" (getcwd)))))
+
+(define* (stage #:key native-inputs inputs  #:allow-other-keys)
+  "Extract the installable files from the Elm \"package\" into a staging
+directory and link it into the ELM_HOME tree.  Also, set GUIX_ELM_PKG_NAME and
+GUIX_ELM_PKG_VERSION to the name and version, respectively, of the Elm package
+being built, as defined in its \"elm.json\" file."
+  (let* ((elm-version (getenv "GUIX_ELM_VERSION"))
+         (elm-home (getenv "ELM_HOME"))
+         (info (match (call-with-input-file "elm.json" read-json)
+                 (('@ . alist) alist)))
+         (name (assoc-ref info "name"))
+         (version (assoc-ref info "version"))
+         (rel-dir (string-append elm-version "/packages/" name "/" version))
+         (staged-dir (string-append elm-home "/../staged/" rel-dir)))
+    (setenv "GUIX_ELM_PKG_NAME" name)
+    (setenv "GUIX_ELM_PKG_VERSION" version)
+    (mkdir-p staged-dir)
+    (mkdir-p (string-append elm-home "/" (dirname rel-dir)))
+    (symlink staged-dir
+             (string-append elm-home "/" rel-dir))
+    (copy-recursively "src" (string-append staged-dir "/src"))
+    (install-file "elm.json" staged-dir)
+    (install-file "README.md" staged-dir)
+    (when (file-exists? "LICENSE")
+      (install-file "LICENSE" staged-dir))))
+
+(define (patch-json-string-escapes file)
+  "Work around a bug in the Elm compiler's JSON parser by attempting to
+replace REVERSE-SOLIDUS--SOLIDUS escape sequences in FILE with unescaped
+SOLIDUS characters."
+  ;; https://github.com/elm/compiler/issues/2255
+  (substitute* file
+    (("\\\\/")
+     "/")))
+
+(define (directory-list dir)
+  "Like DIRECTORY-LIST from 'racket/base': lists the contents of DIR, not
+including the special \".\" and \"..\" entries."
+  (scandir dir (lambda (f)
+                 (not (member f '("." ".."))))))
+
+(define* (make-offline-registry-file #:key inputs #:allow-other-keys)
+  "Generate an \"offline-package-registry.json\" file and set
+GUIX_ELM_OFFLINE_REGISTRY_FILE to its path, cooperating with a patch to `elm`
+to avoid attempting to download a list of all published Elm package names and
+versions from the internet."
+  (let* ((elm-home (getenv "ELM_HOME"))
+         (elm-version (getenv "GUIX_ELM_VERSION"))
+         (registry-file
+          (string-append elm-home "/../offline-package-registry.json"))
+         (registry-alist
+          ;; here, we don't need to look up entries, so we build the
+          ;; alist directly, rather than using a vhash
+          (with-directory-excursion
+              (string-append elm-home "/" elm-version "/packages")
+            (append-map (lambda (org)
+                          (with-directory-excursion org
+                            (map (lambda (repo)
+                                   (cons (string-append org "/" repo)
+                                         (directory-list repo)))
+                                 (directory-list "."))))
+                        (directory-list ".")))))
+    (call-with-output-file registry-file
+      (lambda (out)
+        (write-json `(@ ,@registry-alist) out)))
+    (patch-json-string-escapes registry-file)
+    (setenv "GUIX_ELM_OFFLINE_REGISTRY_FILE" registry-file)))
+
+(define (read-offline-registry->vhash)
+  "Return a vhash mapping Elm \"package\" names to lists of available version
+strings."
+  (alist->vhash
+   (match (call-with-input-file (getenv "GUIX_ELM_OFFLINE_REGISTRY_FILE")
+            read-json)
+     (('@ . alist) alist))))
+
+(define (find-indirect-dependencies registry-vhash root-pkg root-version)
+  "Return the recursive dependencies of ROOT-PKG, an Elm \"package\" name, at
+version ROOT-VERSION as an alist mapping Elm \"package\" names to (single)
+versions.  The resulting alist will not include entries for
+%ESSENTIAL-ELM-PACKAGES or for ROOT-PKG itself.  The REGISTRY-VHASH is used in
+conjunction with the ELM_HOME environment variable to find dependencies."
+  (with-directory-excursion
+      (string-append (getenv "ELM_HOME")
+                     "/" (getenv "GUIX_ELM_VERSION")
+                     "/packages")
+    (define (get-dependencies pkg version acc)
+      (let* ((elm-json-alist
+              (match (call-with-input-file
+                         (string-append pkg "/" version "/elm.json")
+                       read-json)
+                (('@ . alist) alist)))
+             (deps-alist
+              (match (assoc-ref elm-json-alist "dependencies")
+                (('@ . alist) alist)))
+             (deps-names
+              (filter-map (match-lambda
+                            ((name . range)
+                             (and (not (member name %essential-elm-packages))
+                                  name)))
+                          deps-alist)))
+        (fold register-dependency acc deps-names)))
+    (define (register-dependency pkg acc)
+      ;; Using vhash-cons unconditionally would add duplicate entries,
+      ;; which would then cause problems when we must emit JSON.
+      ;; Plus, we can avoid needlessly duplicating work.
+      (if (vhash-assoc pkg acc)
+          acc
+          (match (vhash-assoc pkg registry-vhash)
+            ((_ version . _)
+             ;; in the rare case that multiple versions are present,
+             ;; just picking an arbitrary one seems to work well enough for now
+             (get-dependencies pkg version (vhash-cons pkg version acc))))))
+    (vlist->list
+     (get-dependencies root-pkg root-version vlist-null))))
+
+(define* (patch-application-dependencies #:key inputs #:allow-other-keys)
+  "Rewrites the \"elm.json\" file in the working directory---which must be of
+`\"type\":\"application\"`, not `\"type\":\"package\"`---to refer to the
+dependency versions actually provided via Guix.  The
+GUIX_ELM_OFFLINE_REGISTRY_FILE environment variable is used to find available
+versions."
+  (let* ((registry-vhash (read-offline-registry->vhash))
+         (rewrite-dep-version
+          (match-lambda
+            ((name . _)
+             (cons name (match (vhash-assoc name registry-vhash)
+                          ((_ version) ;; no dot
+                           version))))))
+         (rewrite-direct/indirect
+          (match-lambda
+            ;; a little checking to avoid confusing misuse with "package"
+            ;; project dependencies, which have a different shape
+            (((and key (or "direct" "indirect"))
+              '@ . alist)
+             `(,key @ ,@(map rewrite-dep-version alist)))))
+         (rewrite-json-section
+          (match-lambda
+            (((and key (or "dependencies" "test-dependencies"))
+              '@ . alist)
+             `(,key @ ,@(map rewrite-direct/indirect alist)))
+            ((k . v)
+             (cons k v))))
+         (rewrite-elm-json
+          (match-lambda
+            (('@ . alist)
+             `(@ ,@(map rewrite-json-section alist))))))
+    (with-atomic-file-replacement "elm.json"
+      (lambda (in out)
+        (write-json (rewrite-elm-json (read-json in))
+                    out)))
+    (patch-json-string-escapes "elm.json")))
+
+(define* (configure #:key native-inputs inputs #:allow-other-keys)
+  "Generate a trivial Elm \"application\" with a direct dependency on the Elm
+\"package\" currently being built."
+  (let* ((info (match (call-with-input-file "elm.json" read-json)
+                 (('@ . alist) alist)))
+         (name (getenv "GUIX_ELM_PKG_NAME"))
+         (version (getenv "GUIX_ELM_PKG_VERSION"))
+         (elm-home (getenv "ELM_HOME"))
+         (registry-vhash (read-offline-registry->vhash))
+         (app-dir (string-append elm-home "/../fake-app")))
+    (mkdir-p (string-append app-dir "/src"))
+    (with-directory-excursion app-dir
+      (call-with-output-file "elm.json"
+        (lambda (out)
+          (write-json
+           `(@ ("type" . "application")
+               ("source-directories" "src") ;; intentionally no dot
+               ("elm-version" . ,(getenv "GUIX_ELM_VERSION"))
+               ("dependencies"
+                @ ("direct"
+                   @ ,@(map (lambda (pkg)
+                              (match (vhash-assoc pkg registry-vhash)
+                                ((_ pkg-version . _)
+                                 (cons pkg
+                                       (if (equal? pkg name)
+                                           version
+                                           pkg-version)))))
+                            (if (member name %essential-elm-packages)
+                                %essential-elm-packages
+                                (cons name %essential-elm-packages))))
+                  ("indirect"
+                   @ ,@(if (member name %essential-elm-packages)
+                           '()
+                           (find-indirect-dependencies registry-vhash
+                                                       name
+                                                       version))))
+               ("test-dependencies"
+                @ ("direct" @)
+                  ("indirect" @)))
+           out)))
+      (patch-json-string-escapes  "elm.json")
+      (with-output-to-file "src/Main.elm"
+        ;; the most trivial possible elm program
+        (lambda ()
+          (display "module Main exposing (..)
+main : Program () () ()
+main = Platform.worker
+ { init = \\_ -> ( (), Cmd.none )
+ , update = \\_ -> \\_ -> ( (), Cmd.none )
+ , subscriptions = \\_ -> Sub.none }"))))))
+
+(define* (build #:key native-inputs inputs #:allow-other-keys)
+  "Run `elm make` to build the Elm \"application\" generated by CONFIGURE."
+  (with-directory-excursion (string-append (getenv "ELM_HOME") "/../fake-app")
+    (invoke (search-input-file (or native-inputs inputs) "/bin/elm")
+            "make"
+            "src/Main.elm")))
+
+(define* (check #:key tests? #:allow-other-keys)
+  "Does nothing, because the `elm-test` executable has not yet been packaged
+for Guix."
+  (when tests?
+    (display "elm-test has not yet been packaged for Guix\n")))
+
+(define* (install #:key outputs #:allow-other-keys)
+  "Installs the contents of the directory generated by STAGE, including any
+files added by BUILD, to the Guix package output."
+  (copy-recursively
+   (string-append (getenv "ELM_HOME") "/../staged")
+   (string-append (assoc-ref outputs "out") "/share/elm")))
+
+(define* (validate-compiled #:key outputs #:allow-other-keys)
+  "Checks that the files \"artifacts.dat\" and \"docs.json\" have been
+installed."
+  (let ((base (string-append "/share/elm/"
+                             (getenv "GUIX_ELM_VERSION")
+                             "/packages/"
+                             (getenv "GUIX_ELM_PKG_NAME")
+                             "/"
+                             (getenv "GUIX_ELM_PKG_VERSION")))
+        (expected '("artifacts.dat" "docs.json")))
+    (for-each (lambda (name)
+                (search-input-file outputs (string-append base "/" name)))
+              expected)))
+
+(define %standard-phases
+  (modify-phases gnu:%standard-phases
+    (add-after 'unpack 'prepare-elm-home prepare-elm-home)
+    (delete 'bootstrap)
+    (add-after 'patch-source-shebangs 'stage stage)
+    (add-after 'stage 'make-offline-registry-file make-offline-registry-file)
+    (replace 'configure configure)
+    (delete 'patch-generated-file-shebangs)
+    (replace 'build build)
+    (replace 'check check)
+    (replace 'install install)
+    (add-before 'validate-documentation-location 'validate-compiled
+      validate-compiled)))
+
+(define* (elm-build #:key inputs (phases %standard-phases)
+                    #:allow-other-keys #:rest args)
+  "Builds the given Elm project, applying all of the PHASES in order."
+  (apply gnu:gnu-build #:inputs inputs #:phases phases args))
diff --git a/tests/elm.scm b/tests/elm.scm
new file mode 100644
index 0000000000..96f958f060
--- /dev/null
+++ b/tests/elm.scm
@@ -0,0 +1,97 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (test-elm)
+  #:use-module (guix build-system elm)
+  #:use-module (srfi srfi-64))
+
+(test-begin "elm")
+
+(test-group "elm->package-name and infer-elm-package-name"
+  (test-group "round trip"
+    ;; Cases when our heuristics can find the upstream name.
+    (define-syntax-rule (test-round-trip elm guix)
+      (test-group elm
+        (test-equal "elm->package-name" guix
+                    (elm->package-name elm))
+        (test-equal "infer-elm-package-name" elm
+                    (infer-elm-package-name guix))))
+    (test-round-trip "elm/core" "elm-core")
+    (test-round-trip "elm/html" "elm-html")
+    (test-round-trip "elm-explorations/markdown" "elm-explorations-markdown")
+    (test-round-trip "elm-explorations/test" "elm-explorations-test")
+    (test-round-trip "elm-explorations/foo-bar" "elm-explorations-foo-bar")
+    (test-round-trip "elm/explorations" "elm-explorations")
+    (test-round-trip "terezka/intervals" "elm-terezka-intervals")
+    (test-round-trip "justinmimbs/time-extra" "elm-justinmimbs-time-extra")
+    (test-round-trip "danhandrea/elm-date-format"
+                     "elm-danhandrea-elm-date-format"))
+  (test-group "upstream-name needed"
+    ;; Upstream names that our heuristic can't infer.  We still check that the
+    ;; round-trip behavior of 'infer-elm-package-name' works as promised for
+    ;; the hypothetical Elm name it doesn't infer.
+    (define-syntax-rule (test-upstream-needed elm guix inferred)
+      (test-group elm
+        (test-equal "elm->package-name" guix
+                    (elm->package-name elm))
+        (test-group "infer-elm-package-name"
+          (test-equal "infers other name" inferred
+                      (infer-elm-package-name guix))
+          (test-equal "infered name round-trips" guix
+                      (elm->package-name inferred)))))
+    (test-upstream-needed "elm/virtual-dom"
+                          "elm-virtual-dom"
+                          "virtual/dom")
+    (test-upstream-needed "elm/project-metadata-utils"
+                          "elm-project-metadata-utils"
+                          "project/metadata-utils")
+    (test-upstream-needed "explorations/foo"
+                          "elm-explorations-foo"
+                          "elm-explorations/foo")
+    (test-upstream-needed "explorations/foo-bar"
+                          "elm-explorations-foo-bar"
+                          "elm-explorations/foo-bar")
+    (test-upstream-needed "explorations-central/foo"
+                          "elm-explorations-central-foo"
+                          "elm-explorations/central-foo")
+    (test-upstream-needed "explorations-central/foo-bar"
+                          "elm-explorations-central-foo-bar"
+                          "elm-explorations/central-foo-bar")
+    (test-upstream-needed "elm-xyz/foo"
+                          "elm-xyz-foo"
+                          "xyz/foo")
+    (test-upstream-needed "elm-xyz/foo-bar"
+                          "elm-xyz-foo-bar"
+                          "xyz/foo-bar")
+    (test-upstream-needed "elm-explorations-xyz/foo"
+                          "elm-explorations-xyz-foo"
+                          "elm-explorations/xyz-foo")
+    (test-upstream-needed "elm-explorations-xyz/foo-bar"
+                          "elm-explorations-xyz-foo-bar"
+                          "elm-explorations/xyz-foo-bar"))
+  (test-group "no inferred Elm name"
+    ;; Cases that 'infer-elm-package-name' should not attempt to handle,
+    ;; because 'elm->package-name' would never produce such names.
+    (define-syntax-rule (test-not-inferred guix)
+      (test-assert guix (not (infer-elm-package-name guix))))
+    (test-not-inferred "elm")
+    (test-not-inferred "guile")
+    (test-not-inferred "gcc-toolchain")
+    (test-not-inferred "font-adobe-source-sans-pro")))
+
+(test-end "elm")
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:12:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:12:27 2022
Received: from localhost ([127.0.0.1]:33475 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrO9m-0006HZ-Hz
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:27 -0400
Received: from mail-vk1-f170.google.com ([209.85.221.170]:46700)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrO9f-0006Gy-Nz
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:16 -0400
Received: by mail-vk1-f170.google.com with SMTP id m203so1555893vke.13
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=SjYyUocXdIU5QYNkojc2SO3inmsXXfH9lPDTDjHwW5s=;
 b=LaoJmOY/b3fK29Z6cJ1L4fWTzRR8j77e/1nr1AWMXXrIvXU87bt8xjDc3eRHc1xdvR
 XR/GKvAkm7YDiUX71/9L6jy98201ii9nTdu2maUqTZbbPyFbWWhMzxcs3ko+t6rHrJtR
 vjFuN/oIW3GM/Duhuvi8jHW+HQkPf1AyABM7Bl6U0zQgoOVRFFDp8rfhU9CkfvOh8aNH
 rDTMl93GBTjjM2sdSEJ84PCmgDHtJHafy6ZgduGFuQUiJJeqLyd6Yam9/OsXcbBPaH33
 vUfqGiTkWFH49m5zaq98E+DKYNCMMK6tFx7w00Yia+t3LcguD5PBpfIV+4LmXh5CF0e3
 mTIQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=SjYyUocXdIU5QYNkojc2SO3inmsXXfH9lPDTDjHwW5s=;
 b=cZ6RyJVyMVkLjAyOzvVAaOSCcVzFabA8uSP/moBkGy3dqLMTwAvWwAFLlg/gMUgC7R
 QXObQBaGuRZKcKdQHgomlw/XlZMw4z1xXd3zbzDK9cwNVAzhnVMKDjjTUCDr4UiTf1gU
 XDVZMrtIKpqVvT6vXs7CjHD+awlz/ndQQdSUwCw+iVcoE9YNraDw+ChmWmdDvmAi4Vyi
 gsIETXXKya98I+1zkCSELR4KlgSonMI63ZD7xgkDSC8SQQE5oMy7QVAMkIEQepxbUcAC
 C4diXZYThoSF765r275XWlYZOgxyyOe8zqWw7Ucx5JQMEDmMqrdmQ6aNVrzLlXCMAbAN
 xtpg==
X-Gm-Message-State: AOAM532GLMGhBN1okVzCTvgJtqwVjGRBiYWAijJelzPMVhuBAjC4f9Dj
 UgJ8rYW7uzVjq3jn8bqx9nZJRSdh2WTqHTZh
X-Google-Smtp-Source: ABdhPJxY0lJ4FEpznu6FeLO1Kb0czMQpm0YyQkxWBXmRAkR9lbM22s6ihq0L/LTVQxEJ3gPDyHRsuQ==
X-Received: by 2002:ac5:c890:0:b0:352:1910:1ff5 with SMTP id
 n16-20020ac5c890000000b0035219101ff5mr561144vkl.6.1652897530176; 
 Wed, 18 May 2022 11:12:10 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 h16-20020ac5c290000000b00356dc031857sm253484vkk.46.2022.05.18.11.12.09
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:10 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 02/34] gnu: elm: Rename package to match the command.
Date: Wed, 18 May 2022 14:10:49 -0400
Message-Id: <923649034e32b375843f3772a4d469062cac21f8.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-compiler): Rename to ...
(elm): ... this variable, leaving 'elm-compiler' as a deprecated alias.
[description]: Tweak.
---
 gnu/packages/elm.scm | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 988cc02de1..a3863e6e6f 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -39,9 +39,9 @@ (define-module (gnu packages elm)
 ;; `elm reactor` exit with a useful error message if they aren't there.
 (define %reactor-root-base
   "share/elm/reactor-")
-(define-public elm-compiler
+(define-public elm
   (package
-    (name "elm-compiler")
+    (name "elm")
     (version "0.19.1")
     (source
      (origin
@@ -93,7 +93,11 @@ (define-public elm-compiler
     (home-page "https://elm-lang.org")
     (synopsis "Programming language for Web applications")
     (description
-     "This package provides Elm, a statically-typed functional programming
-language for the browser.  It includes commands for developers such as
-@command{elm make} and @command{elm repl}.")
+     "Elm is a statically-typed, purely-functional programming language for
+the browser.  The @command{elm} exectable includes commands for developers
+such as @command{elm make} and @command{elm repl}.")
     (license license:bsd-3)))
+
+;; The 'elm' package used to be called 'elm-compiler'.
+(define-public elm-compiler
+  (deprecated-package "elm-compiler" elm))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:12:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:12:22 2022
Received: from localhost ([127.0.0.1]:33469 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrO9e-0006HA-Cf
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:22 -0400
Received: from mail-vs1-f43.google.com ([209.85.217.43]:38428)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrO9b-0006Gq-Rm
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:12 -0400
Received: by mail-vs1-f43.google.com with SMTP id a12so903240vsp.5
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=1DnHWxQ4L60DHlXhZD76navw/O+m2vUd+RzGv4NMZw8=;
 b=Rc8cIZcBXowYcY8dx0BuBQQSGwcZpgSUKzEHItvuWSr7t+/IECpZfWEv28HLIwDFs0
 72WE44yuaJmEIZAxu2t99H1dsyGHoOIgdItMQ+tVDMlBxZfNf9v/+eP94Rq2tz0vN5GA
 G5dz4Dqm9zzlrKmzqUiVKjAr9Qon5wUsGnTdKaIs7b1sxBFNK8zgs7VwgjoSJeMbiK5S
 NRpimIqyJunPpdfXBPKcAnZVxUstii5Np23/lpCiksDCVagiLT+kwF170/TMub57R2JJ
 6ek8Wr41rS8x66NO05Dj2OTexnLm6yxANq3Vs177Oo/nM1EpTPhW1wfOcgwrfbilW00w
 N/aQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=1DnHWxQ4L60DHlXhZD76navw/O+m2vUd+RzGv4NMZw8=;
 b=gcwwAcijEXRLMPjaH5HgCkb3X+Flwqc4KPNnHG2LU6Wg+XsJWvSrCrKZ3vOTug2FvY
 LthwCSfR7DBppo4aeMb/PCZa/PatUEq0EbRr8fSbDKKDlGkHHCoeC3JuDfDUcwsXGlqt
 wY22RjA3WN//s9dBeK+XJZRok3cQSiMc6QqNiVFMUbwCdrqp6YcvsgFiPeunmPbfUR2t
 H5qMa5zG9o64GLcCCDNNmdmhMdml0gQtYFlSmd5kcl1kX4Uw0lZBMoGVTKeNa1e76Vxa
 nNr04U0/c+lUS5O0cQZLsxinM1HG5Y3DzJHo66sfQ5Y6i/WvNkIiWZiXyqfL50xOwTwd
 mvFw==
X-Gm-Message-State: AOAM53155CLgDsNxLkpe1Isv8KpIN0Q/EbR9hvKzFKefnOaJp0u7zdDu
 xvdjLRLGdKiQtd7Klywq9CVupc11fwhVcymg
X-Google-Smtp-Source: ABdhPJxNIFEgvEDE40UwAWtWL96/wBW0HqjpMyKXKMCAVmJUxu8zkpHHywVi6441ijVzCXH4ppFejA==
X-Received: by 2002:a05:6102:f96:b0:333:c566:df27 with SMTP id
 e22-20020a0561020f9600b00333c566df27mr685346vsv.44.1652897526169; 
 Wed, 18 May 2022 11:12:06 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 j65-20020a1fa044000000b0034e98f6f2d8sm246038vke.55.2022.05.18.11.12.05
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:12:05 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 01/34] gnu: elm-compiler: Update to 0.19.1.
Date: Wed, 18 May 2022 14:10:48 -0400
Message-Id: <b876244079de101bb3a781e0b0f48fe5f6f7f57c.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <cover.1652890702.git.philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <cover.1652890702.git.philip@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.7 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/patches/elm-compiler-disable-reactor.patch,
gnu/packages/patches/elm-compiler-fix-map-key.patch: Delete files.
* gnu/packages/patches/elm-reactor-static-files.patch: New file.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
* gnu/packages/elm.scm (elm-compiler): Update to 0.19.1.
[origin]<patches>: Remove stale patches. Add new patch.
[arguments]: Use G-expressions. Add #:configure-flags for new patch.
[inputs]: Remove ghc-file-embed. Add ghc-filelock.
---
 gnu/local.mk                                  |   3 +-
 gnu/packages/elm.scm                          |  44 +--
 .../elm-compiler-disable-reactor.patch        |  71 -----
 .../patches/elm-compiler-fix-map-key.patch    |  38 ---
 .../patches/elm-reactor-static-files.patch    | 251 ++++++++++++++++++
 5 files changed, 280 insertions(+), 127 deletions(-)
 delete mode 100644 gnu/packages/patches/elm-compiler-disable-reactor.patch
 delete mode 100644 gnu/packages/patches/elm-compiler-fix-map-key.patch
 create mode 100644 gnu/packages/patches/elm-reactor-static-files.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 79019e8564..de044bdbff 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1024,8 +1024,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/einstein-build.patch			\
   %D%/packages/patches/elfutils-tests-ptrace.patch		\
   %D%/packages/patches/elixir-path-length.patch			\
-  %D%/packages/patches/elm-compiler-disable-reactor.patch	\
-  %D%/packages/patches/elm-compiler-fix-map-key.patch		\
+  %D%/packages/patches/elm-reactor-static-files.patch		\
   %D%/packages/patches/elogind-revert-polkit-detection.patch	\
   %D%/packages/patches/emacs-exec-path.patch			\
   %D%/packages/patches/emacs-git-email-missing-parens.patch	\
diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index ca7c61041b..988cc02de1 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2019 Robert Vollmert <rob@HIDDEN>
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -24,18 +25,24 @@ (define-module (gnu packages elm)
   #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages haskell-web)
   #:use-module (guix build-system haskell)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages))
 
-;; The full elm build calls out to itself via Template Haskell to
-;; compile the elm reactor web app. elm reactor isn't required to
-;; compile elm applications, so we take this part out of this
-;; bootstrap package.
+;; The `elm` build usually calls out to itself via Template Haskell to compile
+;; the `elm reactor` web app (which depends on additional Elm packages) and
+;; embeds the static files into itself.  The reactor isn't required to compile
+;; Elm applications, so we want to skip it for the bootstrap package, but we
+;; also want to be able to enable it once we can build it.  We patch Elm to
+;; instead look for the files on disk relative to the executable and to have
+;; `elm reactor` exit with a useful error message if they aren't there.
+(define %reactor-root-base
+  "share/elm/reactor-")
 (define-public elm-compiler
   (package
     (name "elm-compiler")
-    (version "0.19.0")
+    (version "0.19.1")
     (source
      (origin
        (method git-fetch)
@@ -44,24 +51,29 @@ (define-public elm-compiler
              (url "https://github.com/elm/compiler/")
              (commit version)))
        (sha256
-        (base32 "0s93z9vr0vp5w894ghc5s34nsq09sg1msf59zfiba87sid5vgjqy"))
+        (base32 "1rdg3xp3js9xadclk3cdypkscm5wahgsfmm4ldcw3xswzhw6ri8w"))
        (patches
-        (search-patches "elm-compiler-disable-reactor.patch"
-                        "elm-compiler-fix-map-key.patch"))))
+        (search-patches "elm-reactor-static-files.patch"))))
     (build-system haskell-build-system)
     (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (add-before 'configure 'update-constraints
-           (lambda _
-             (substitute* "elm.cabal"
-               (("(ansi-terminal|containers|network|http-client|language-glsl)\\s+[^,]+" all dep)
-                dep)))))))
+     (list
+      #:configure-flags
+      #~(list (string-append "--ghc-option=-DGUIX_REACTOR_STATIC_REL_ROOT="
+                             "\"../" #$%reactor-root-base
+                             #$(package-version this-package)
+                             "\""))
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-before 'configure 'update-constraints
+            (lambda _
+              (substitute* "elm.cabal"
+                (("(ansi-terminal|containers|network|http-client|language-glsl)\\s+[^,]+" all dep)
+                 dep)))))))
     (inputs
      (list ghc-ansi-terminal
            ghc-ansi-wl-pprint
            ghc-edit-distance
-           ghc-file-embed
+           ghc-filelock
            ghc-http
            ghc-http-client
            ghc-http-client-tls
diff --git a/gnu/packages/patches/elm-compiler-disable-reactor.patch b/gnu/packages/patches/elm-compiler-disable-reactor.patch
deleted file mode 100644
index 9871b55e8d..0000000000
--- a/gnu/packages/patches/elm-compiler-disable-reactor.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-commit 20d80e2323b565a36751c9455e535d8f73fa32f7
-Author: Robert Vollmert <rob@HIDDEN>
-Date:   Fri Jun 14 16:05:47 2019 +0200
-
-    disable reactor
-
-diff --git a/elm.cabal b/elm.cabal
-index c75f9689..ece63c46 100644
---- a/elm.cabal
-+++ b/elm.cabal
-@@ -45,9 +45,6 @@ Executable elm
-         builder/src
-         ui/terminal/src
- 
--    other-extensions:
--        TemplateHaskell
--
-     Main-Is:
-         Main.hs
- 
-@@ -56,8 +53,6 @@ Executable elm
-         Develop
-         Develop.Generate.Help
-         Develop.Generate.Index
--        Develop.StaticFiles
--        Develop.StaticFiles.Build
-         Diff
-         Init
-         Install
-diff --git a/ui/terminal/src/Develop.hs b/ui/terminal/src/Develop.hs
-index 4b2252e1..7ed7716e 100644
---- a/ui/terminal/src/Develop.hs
-+++ b/ui/terminal/src/Develop.hs
-@@ -23,7 +23,6 @@ import Snap.Util.FileServe
- import qualified Elm.Project as Project
- import qualified Develop.Generate.Help as Generate
- import qualified Develop.Generate.Index as Index
--import qualified Develop.StaticFiles as StaticFiles
- import qualified Generate.Output as Output
- import qualified Json.Encode as Encode
- import qualified Reporting.Exit as Exit
-@@ -219,16 +218,7 @@ compileToHtmlBuilder mode file =
- 
- 
- serveAssets :: Snap ()
--serveAssets =
--  do  file <- getSafePath
--      case StaticFiles.lookup file of
--        Nothing ->
--          pass
--
--        Just (content, mimeType) ->
--          do  modifyResponse (setContentType (mimeType <> ";charset=utf-8"))
--              writeBS content
--
-+serveAssets = pass
- 
- 
- -- MIME TYPES
-diff --git a/ui/terminal/src/Main.hs b/terminal/src/Main.hs
-index 7000f3ca..2c76965a 100644
---- a/ui/terminal/src/Main.hs
-+++ b/ui/terminal/src/Main.hs
-@@ -39,7 +39,6 @@ main =
-       complex intro outro
-         [ repl
-         , init
--        , reactor
-         , make
-         , install
-         , bump
diff --git a/gnu/packages/patches/elm-compiler-fix-map-key.patch b/gnu/packages/patches/elm-compiler-fix-map-key.patch
deleted file mode 100644
index 4f05ded530..0000000000
--- a/gnu/packages/patches/elm-compiler-fix-map-key.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-commit e3512d887df41a8162c3e361171c04beca08415b
-Author: Tom Stejskal <tom.stejskal@HIDDEN>
-Date:   Mon Nov 19 20:09:43 2018 +0100
-
-    Fix Map.!: given key is not an element in the map
-
-diff --git a/compiler/src/Elm/Compiler/Type/Extract.hs b/compiler/src/Elm/Compiler/Type/Extract.hs
-index 1aafe1d4..99763392 100644
---- a/compiler/src/Elm/Compiler/Type/Extract.hs
-+++ b/compiler/src/Elm/Compiler/Type/Extract.hs
-@@ -10,6 +10,7 @@ module Elm.Compiler.Type.Extract
- 
- 
- import Data.Map ((!))
-+import qualified Data.Map as Map
- import qualified Data.Maybe as Maybe
- import qualified Data.Set as Set
- 
-@@ -134,11 +135,15 @@ extractUnion interfaces (Opt.Global home name) =
-     else
-       let
-         pname = toPublicName home name
--        unions = I._unions (interfaces ! home)
-+        maybeUnions = I._unions <$> Map.lookup home interfaces
-       in
--      case I.toUnionInternals (unions ! name) of
--        Can.Union vars ctors _ _ ->
--          T.Union pname vars <$> traverse extractCtor ctors
-+      case Map.lookup name =<< maybeUnions of
-+        Just union ->
-+          case I.toUnionInternals union of
-+            Can.Union vars ctors _ _ ->
-+              T.Union pname vars <$> traverse extractCtor ctors
-+        Nothing ->
-+          return $ T.Union pname [] []
- 
- 
- extractCtor :: Can.Ctor -> Extractor (N.Name, [T.Type])
diff --git a/gnu/packages/patches/elm-reactor-static-files.patch b/gnu/packages/patches/elm-reactor-static-files.patch
new file mode 100644
index 0000000000..94c4aa0cd1
--- /dev/null
+++ b/gnu/packages/patches/elm-reactor-static-files.patch
@@ -0,0 +1,251 @@
+From 41d219a29b03f3114af7a0521c8b2dbbb487c3e1 Mon Sep 17 00:00:00 2001
+From: Philip McGrath <philip@HIDDEN>
+Date: Wed, 13 Apr 2022 18:45:58 -0400
+Subject: [PATCH] reactor: look for static files relative to executable
+
+Must built with `-DGUIX_REACTOR_STATIC_REL_ROOT="../path/to/reactor"`.
+
+This lets us build a version of Elm without the `elm reactor` for
+bootstrapping, then simply put the files in place in the final package.
+---
+ elm.cabal                                 |  2 +-
+ terminal/src/Develop.hs                   | 32 +++++++++++----
+ terminal/src/Develop/StaticFiles.hs       | 37 ++++++++++-------
+ terminal/src/Develop/StaticFiles/Build.hs | 50 ++++++++++++++---------
+ 4 files changed, 79 insertions(+), 42 deletions(-)
+
+diff --git a/elm.cabal b/elm.cabal
+index bf1cfcf0..93161072 100644
+--- a/elm.cabal
++++ b/elm.cabal
+@@ -50,6 +50,7 @@ Executable elm
+ 
+     other-extensions:
+         TemplateHaskell
++        CPP
+ 
+     Main-Is:
+         Main.hs
+@@ -211,7 +212,6 @@ Executable elm
+         containers >= 0.5.8.2 && < 0.6,
+         directory >= 1.2.3.0 && < 2.0,
+         edit-distance >= 0.2 && < 0.3,
+-        file-embed,
+         filelock,
+         filepath >= 1 && < 2.0,
+         ghc-prim >= 0.5.2,
+diff --git a/terminal/src/Develop.hs b/terminal/src/Develop.hs
+index 00339364..6855b03e 100644
+--- a/terminal/src/Develop.hs
++++ b/terminal/src/Develop.hs
+@@ -33,6 +33,7 @@ import qualified Reporting.Exit as Exit
+ import qualified Reporting.Task as Task
+ import qualified Stuff
+ 
++import System.Exit as SysExit
+ 
+ 
+ -- RUN THE DEV SERVER
+@@ -45,13 +46,29 @@ data Flags =
+ 
+ 
+ run :: () -> Flags -> IO ()
+-run () (Flags maybePort) =
++run () flags = do
++  frontEnd <- StaticFiles.prepare
++  case frontEnd of
++    Right lookup ->
++      reallyRun lookup flags
++    Left missing ->
++      SysExit.die $ unlines
++      [ "The `reactor` command is not available."
++      , ""
++      , "On Guix, these files are needed for `elm reactor` to work,"
++      , "but they are missing:"
++      , ""
++      , unlines (map (\pth -> "    " ++ (show pth)) missing)
++      ]
++
++reallyRun :: StaticFiles.Lookup -> Flags -> IO ()
++reallyRun lookup (Flags maybePort) =
+   do  let port = maybe 8000 id maybePort
+       putStrLn $ "Go to http://localhost:" ++ show port ++ " to see your project dashboard."
+       httpServe (config port) $
+         serveFiles
+         <|> serveDirectoryWith directoryConfig "."
+-        <|> serveAssets
++        <|> serveAssets lookup
+         <|> error404
+ 
+ 
+@@ -169,16 +186,15 @@ compile path =
+ -- SERVE STATIC ASSETS
+ 
+ 
+-serveAssets :: Snap ()
+-serveAssets =
++serveAssets :: StaticFiles.Lookup -> Snap ()
++serveAssets lookup =
+   do  path <- getSafePath
+-      case StaticFiles.lookup path of
++      case lookup path of
+         Nothing ->
+           pass
+ 
+-        Just (content, mimeType) ->
+-          do  modifyResponse (setContentType (mimeType <> ";charset=utf-8"))
+-              writeBS content
++        Just (fsPath, mimeType) ->
++          serveFileAs (mimeType <> ";charset=utf-8") fsPath
+ 
+ 
+ 
+diff --git a/terminal/src/Develop/StaticFiles.hs b/terminal/src/Develop/StaticFiles.hs
+index 94ee72dc..3227d617 100644
+--- a/terminal/src/Develop/StaticFiles.hs
++++ b/terminal/src/Develop/StaticFiles.hs
+@@ -2,7 +2,8 @@
+ {-# LANGUAGE OverloadedStrings #-}
+ {-# LANGUAGE TemplateHaskell #-}
+ module Develop.StaticFiles
+-  ( lookup
++  ( prepare
++  , Lookup
+   , cssPath
+   , elmPath
+   , waitingPath
+@@ -11,9 +12,7 @@ module Develop.StaticFiles
+ 
+ import Prelude hiding (lookup)
+ import qualified Data.ByteString as BS
+-import Data.FileEmbed (bsToExp)
+ import qualified Data.HashMap.Strict as HM
+-import Language.Haskell.TH (runIO)
+ import System.FilePath ((</>))
+ 
+ import qualified Develop.StaticFiles.Build as Build
+@@ -26,20 +25,29 @@ import qualified Develop.StaticFiles.Build as Build
+ type MimeType =
+   BS.ByteString
+ 
++type Lookup = FilePath -> Maybe (FilePath, MimeType)
+ 
+-lookup :: FilePath -> Maybe (BS.ByteString, MimeType)
+-lookup path =
++prepare :: IO (Either [FilePath] Lookup)
++prepare = do
++  found <- Build.findReactorFrontEnd expectedFiles
++  return $ case found of
++    Left missing ->
++      Left missing
++    Right resolved ->
++      Right (mkLookup (HM.fromList resolved))
++
++mkLookup :: HM.HashMap FilePath (FilePath, MimeType) -> Lookup
++mkLookup dict path =
+   HM.lookup path dict
+ 
+ 
+-dict :: HM.HashMap FilePath (BS.ByteString, MimeType)
+-dict =
+-  HM.fromList
+-    [ faviconPath  ==> (favicon , "image/x-icon")
+-    , elmPath      ==> (elm     , "application/javascript")
+-    , cssPath      ==> (css     , "text/css")
+-    , codeFontPath ==> (codeFont, "font/ttf")
+-    , sansFontPath ==> (sansFont, "font/ttf")
++expectedFiles :: [(FilePath, MimeType)]
++expectedFiles =
++    [ faviconPath  ==> "image/x-icon"
++    , elmPath      ==> "application/javascript"
++    , cssPath      ==> "text/css"
++    , codeFontPath ==> "font/ttf"
++    , sansFontPath ==> "font/ttf"
+     ]
+ 
+ 
+@@ -82,7 +90,7 @@ sansFontPath =
+   "_elm" </> "source-sans-pro.ttf"
+ 
+ 
+-
++{-
+ -- ELM
+ 
+ 
+@@ -121,3 +129,4 @@ sansFont =
+ favicon :: BS.ByteString
+ favicon =
+   $(bsToExp =<< runIO (Build.readAsset "favicon.ico"))
++-}
+diff --git a/terminal/src/Develop/StaticFiles/Build.hs b/terminal/src/Develop/StaticFiles/Build.hs
+index c61fae57..c39b08b0 100644
+--- a/terminal/src/Develop/StaticFiles/Build.hs
++++ b/terminal/src/Develop/StaticFiles/Build.hs
+@@ -1,28 +1,39 @@
+ {-# LANGUAGE OverloadedStrings #-}
++{-# LANGUAGE CPP #-}
+ module Develop.StaticFiles.Build
+-  ( readAsset
+-  , buildReactorFrontEnd
++  ( findReactorFrontEnd
+   )
+   where
+ 
+-
+-import qualified Data.ByteString as BS
+-import qualified Data.ByteString.Builder as B
+-import qualified Data.ByteString.Lazy as LBS
+-import qualified Data.NonEmptyList as NE
+ import qualified System.Directory as Dir
+-import System.FilePath ((</>))
+-
+-import qualified BackgroundWriter as BW
+-import qualified Build
+-import qualified Elm.Details as Details
+-import qualified Generate
+-import qualified Reporting
+-import qualified Reporting.Exit as Exit
+-import qualified Reporting.Task as Task
+-
+-
+-
++import System.FilePath ((</>), takeDirectory)
++import System.Environment (getExecutablePath)
++import Data.Either as Either
++
++reactorStaticRelRoot :: FilePath
++reactorStaticRelRoot = GUIX_REACTOR_STATIC_REL_ROOT
++
++type Resolved a = (FilePath, (FilePath, a))
++
++findReactorFrontEnd :: [(FilePath, a)] -> IO (Either [FilePath] [Resolved a])
++findReactorFrontEnd specs = do
++  exe <- getExecutablePath
++  let dir = takeDirectory exe </> reactorStaticRelRoot
++  dirExists <- Dir.doesDirectoryExist dir
++  files <- sequence (map (findFile dir) specs)
++  return $ case Either.lefts files of
++           [] ->
++             Right (Either.rights files)
++           missing ->
++             Left $ if dirExists then missing else [dir]
++
++findFile :: FilePath -> (FilePath, a) -> IO (Either FilePath (Resolved a))
++findFile dir (rel, rhs) = do
++  let abs = dir </> rel
++  exists <- Dir.doesFileExist abs
++  return $ if not exists then Left abs else Right (rel, (abs, rhs))
++
++{-
+ -- ASSETS
+ 
+ 
+@@ -71,3 +82,4 @@ runTaskUnsafe task =
+                 \\nCompile with `elm make` directly to figure it out faster\
+                 \\n--------------------------------------------------------\
+                 \\n"
++-}
+-- 
+2.32.0
+
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 18 May 2022 18:12:03 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 18 14:12:03 2022
Received: from localhost ([127.0.0.1]:33466 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nrO9S-0006Ga-CY
	for submit <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:03 -0400
Received: from mail-ua1-f43.google.com ([209.85.222.43]:44729)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nrO9Q-0006G2-Db
 for 55030 <at> debbugs.gnu.org; Wed, 18 May 2022 14:12:01 -0400
Received: by mail-ua1-f43.google.com with SMTP id f13so1126741uax.11
 for <55030 <at> debbugs.gnu.org>; Wed, 18 May 2022 11:12:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=VZ5KiVXTpQ91/A3OpXqSqY0BKZJz7GNFRsVHBT4anMA=;
 b=bkRrqfZu/Et+NfqkMBaRHe5azPmsA9ZQzXInGe8xbKZvNl7F7KpcVgc0sr0M+7V6OQ
 0/we6YlPeM6qL/CxxswNvTTCKdJz0c6/PVQZ37rN7Q2qXNONpjNq85NRw/eDaZkNxPTA
 HuVm6Db6nrH6iAlngccwocE3TMliIgC5qs34sn/xhWYGclFA5VMbd6S6tHLyMxyNxaB0
 hOEIxJNQQMUWeimNUdigtei8gUWqKo1rI7IfuSpbVUKrb1ThJ1WnHVqzQjGcu8xV+Wy2
 t4MlRwDWuTQCe+jY45T5uYvq9AKfSvMzzVFS3PGXRVGqh4nYRalubDNwOY2fjuoIWCg/
 OzeQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=VZ5KiVXTpQ91/A3OpXqSqY0BKZJz7GNFRsVHBT4anMA=;
 b=mRbMN5DcQDaVvpmRi0FHzJOc0FIm3ZJLF7bXp3pu4wQaKNbG+ISyVr4pYMSM8vmROc
 8TNoOCXMSEtVp15BzKT0FgLA0vEr1JmamceQhVxOVHhfGRa/6xWjdB2/E/aVx090+nh5
 ePab7fKd2WFmw0OwC081PZZM+WlHciWvaz9dfSquKKp5ouuy3ERBdUBGrq4dFRdVu/E0
 uA8XOyQJqRR3v6jbbdl36TMqVQh8dCj/Xgb8h1aXJvLhERxH822IfZ9bIRf1PMaTlo9x
 9AYX8f+ey0/CTZ72T1mirO/t64euvFVLURcO3T7WN8eSlkucIBWMGrOM8+gcLxp5a1Ty
 +ciA==
X-Gm-Message-State: AOAM531eZdn2P4T6fUaF76Rpv8XFF164e0+Q11RQcU4ZGmo2PH+bo4vL
 2NB3yzOZcGnhLl1vyLJhPBRGDbQRT4ujWOHW
X-Google-Smtp-Source: ABdhPJwDGEHf+ODzmfGDtexnJtaJSw1eP2KLSzf8KjpKyrtflx6XAJ/GY8LwOEIsgkxJAs+lP2qEHA==
X-Received: by 2002:ab0:72d5:0:b0:368:aad4:5ef8 with SMTP id
 g21-20020ab072d5000000b00368aad45ef8mr560858uap.27.1652897514356; 
 Wed, 18 May 2022 11:11:54 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 b3-20020a05610222e300b00335bc2b4042sm254885vsh.28.2022.05.18.11.11.53
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 May 2022 11:11:54 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH v2 00/34] gnu: elm: Update to 0.19.1. Add build system &
 importer.
Date: Wed, 18 May 2022 14:10:47 -0400
Message-Id: <cover.1652890702.git.philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419232736.272970-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

Hi,

Here is v2!

A few notes before the patches:

On 5/1/22 18:17, Philip McGrath wrote:
> Hi,
> 
> On 5/1/22 16:37, Ludovic Courtès wrote:
>> Philip McGrath <philip@HIDDEN> skribis:
>>
>>> +  (package
>>> +    (name "elm-virtual-dom")
>>
>> [...]
>>
>>> +    (properties '((upstream-name . "elm/virtual-dom")))))
>>
>> Could/should the importer infer the upstream name from the Guix name by
>> default?
>>
>> That way, we’d only need to specify that property where the automatic
>> Guix->upstream name mapping wouldn’t work.
> 
> It could, but the heuristics seemed a bit brittle. To pick a few examples:
> 
>   1. elm-virtual-dom -> "elm/virtual-dom"
>   2. elm-explorations-markdown -> "elm-explorations/markdown"
>   2. elm-terezka-intervals -> "terezka/intervals"
> 
> We could add a special case for the "elm-explorations/*" namespace, but 
> at least one of the others would need an explicit property. I *think* 
> most of the packages in the "elm/*" namespace are single-element (e.g. 
> "elm/html"), so maybe we could require the property for e.g. 
> "elm/virtual-dom" and "elm/project-metadata-utils" ...
> 

I think I've come up with an approach to inferring upstream names that handles
most cases (everything in this series but "elm/virtual-dom" and
"elm/project-metadata-utils") while also not adding so much magic that the
behavior would be unpredictable.

I've put the functions going in both directions in `(guix build-system elm)`
rather than `(guix import elm)` (which seemed somewhat more common) because
`elm-package-origin` needs `elm->package-name`, and it seemed better overall
to define the Elm-to-Guix and Guix-to-Elm conversions in the same place.

On 5/1/22 18:03, Philip McGrath wrote:
> Hi,
> 
> On 5/1/22 16:35, Ludovic Courtès wrote:
>> Could you add an entry for the importer under “Invoking guix import”,
>> and one for the build system under “Build Systems” in guix.texi?  You
>> can follow existing entries as a template.
>>
> 
> I will give it a try! I haven't written any Texinfo before.
>

I've added documentation there, and also a section on naming conventions in
contributing.texi. I'm not sure all of my Texinfo is idiomatic (well, I
didn't find equivalents for all of the Scribble cross-reference functions I'm
used to), but it does build and work ok.

>> It would be nice to have tests for the importer.  One way to do that is
>> like ‘tests/cpan.scm’, which spawns an HTTP server that mimics the real
>> registry.
>>
> 
> I'll take a look at that.
>

I've added a number of tests. They seem to be producing more "PASS" lines than
other tests, though. It seems like nested `test-group`s may be handled
differently than I'm used to from RackUnit and (less so) Racket's `srfi/64`
implementation, but I'm not sure what the idiomatic way to structure them
would be, if this isn't it.

>>> +;; COMMENTARY:
>>
>> Nitpick: You can make that literally “;;; Commentary:”.   That’s what
>> (ice-9 documentation) expects.
>>
>>> +;; CODE:
>>
>> Likewise: “;;; Code:”.
>>
> 
> Will do.
>

Ironically, I couldn't find any documentation for `(ice-9 documentation)`
other than the comments in the source file, but I hope I've done this
properly now.

>>
>> The way the importer fiddles with alists isn’t pretty IMO.  :-)
>>
>> How about using ‘define-json-mapping’ (also from Guile-JSON) to “map”
>> JSON data structures to records?  See how pypi.scm and others do it.
>> The resulting code should be clearer.
>>
> 
> I had tried that first, but there were some problems: IIRC, there might 
> have been an issue with potentially-absent fields defaulting to 
> *unspecified*, some alist manipulation was needed anyway for fields that 
> use JSON objects as key--value maps, and, with a view toward being able 
> to process `{"type":"application"}` files some day, there didn't seem to 
> be enough ability to adapt parsing based on the value for the key. I 
> found this code less confusing. But I can try again if it seems important!
>

Most of the problems I'd run into were because I'd gotten the wrong idea from
the grammar of 'define-json-mapping`, and `define-json-mapping` didn't check
its implicit requirements: I've reported the details and potential
improvements at <https://github.com/aconchillo/guile-json/issues/79>.

The remaining, unescapable alist manipulation is for cases when JSON objects
are used as key--value maps, rather than records with some finite set of
potential keys.

>> Also, instead of or in addition to memoizing ‘elm-package-registry’,
>> would it make sense to use ‘http-fetch/cached’ to fetch that file?
>>
> 
> I'll take a look!
>

Using `http-fetch/cached` without duplicating `json-fetch` required a few
additional patches:

 - [PATCH v2 06/34] http-client: Accept '#:headers' in 'http-fetched/cached'.
 - [PATCH v2 07/34] http-client: 'http-fetch/cached' converts strings to URIs.
 - [PATCH v2 08/34] import: json: Accept '#:http-fetch' in 'json-fetch'.

They seemed small enough, and IIUC they don't affect any build-side code or
trigger rebuilds, but OTOH the actuall JSON being fetched is quite small, so
it wouldn't be a problem to drop them if there are any problems.

One other difference is that `elm-virtual-dom` had an upstream release since
the first version of this patch series, so that package is now at 1.0.3.

 -Philip

Philip McGrath (34):
  gnu: elm-compiler: Update to 0.19.1.
  gnu: elm: Rename package to match the command.
  guix: Add elm-build-system.
  gnu: Add elm-core and elm-json.
  build-system/elm: Add implicit Elm inputs.
  http-client: Accept '#:headers' in 'http-fetched/cached'.
  http-client: 'http-fetch/cached' converts strings to URIs.
  import: json: Accept '#:http-fetch' in 'json-fetch'.
  import: Add Elm importer.
  gnu: Add elm-virtual-dom.
  gnu: Add elm-html.
  gnu: Add elm-svg.
  gnu: Add elm-time.
  gnu: Add elm-url.
  gnu: Add elm-browser.
  gnu: Add elm-bytes.
  gnu: Add elm-file.
  gnu: Add elm-http.
  gnu: Add elm-parser.
  gnu: Add elm-project-metadata-utils.
  gnu: Add elm-explorations-markdown.
  gnu: elm: Support 'elm reactor'.
  gnu: Add elm-todomvc.
  gnu: Add elm-debois-elm-dom.
  gnu: Add elm-random.
  gnu: Add elm-explorations-test.
  gnu: Add elm-danhandrea-elm-date-format.
  gnu: Add elm-danhandrea-elm-time-extra.
  gnu: Add elm-justinmimbs-date.
  gnu: Add elm-justinmimbs-time-extra.
  gnu: Add elm-myrho-elm-round.
  gnu: Add elm-ryannhg-date-format.
  gnu: Add elm-terezka-intervals.
  gnu: Add elm-terezka-elm-charts.

 Makefile.am                                   |   5 +
 doc/contributing.texi                         |  82 ++
 doc/guix.texi                                 |  80 ++
 gnu/local.mk                                  |   4 +-
 gnu/packages/elm.scm                          | 749 +++++++++++++++++-
 .../elm-compiler-disable-reactor.patch        |  71 --
 .../patches/elm-compiler-fix-map-key.patch    |  38 -
 .../elm-offline-package-registry.patch        |  71 ++
 .../patches/elm-reactor-static-files.patch    | 251 ++++++
 guix/build-system/elm.scm                     | 206 +++++
 guix/build/elm-build-system.scm               | 380 +++++++++
 guix/http-client.scm                          |  24 +-
 guix/import/elm.scm                           | 210 +++++
 guix/import/json.scm                          |   9 +-
 guix/scripts/import.scm                       |   3 +-
 guix/scripts/import/elm.scm                   | 107 +++
 tests/elm.scm                                 | 268 +++++++
 17 files changed, 2414 insertions(+), 144 deletions(-)
 delete mode 100644 gnu/packages/patches/elm-compiler-disable-reactor.patch
 delete mode 100644 gnu/packages/patches/elm-compiler-fix-map-key.patch
 create mode 100644 gnu/packages/patches/elm-offline-package-registry.patch
 create mode 100644 gnu/packages/patches/elm-reactor-static-files.patch
 create mode 100644 guix/build-system/elm.scm
 create mode 100644 guix/build/elm-build-system.scm
 create mode 100644 guix/import/elm.scm
 create mode 100644 guix/scripts/import/elm.scm
 create mode 100644 tests/elm.scm


base-commit: 665dd8211cb5c7556f0fb83944d33215accf957a
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 8 May 2022 21:35:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 08 17:35:05 2022
Received: from localhost ([127.0.0.1]:55375 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nnoYT-0006j6-HH
	for submit <at> debbugs.gnu.org; Sun, 08 May 2022 17:35:05 -0400
Received: from eggs.gnu.org ([209.51.188.92]:47928)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1nnoYR-0006iY-Ce
 for 55030 <at> debbugs.gnu.org; Sun, 08 May 2022 17:35:03 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:39658)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nnoYM-0003zd-41; Sun, 08 May 2022 17:34:58 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To:
 From; bh=vSbj2pz76KpDoQkNjcU0c2ZkuGkIz0GBKPT1mF02FMs=; b=UkGtG0DhYMmUUopo6dHg
 nquCQfzy0K+3m4cbEK4EGne73dXCDq/1khG9dRCfohyJ/LMXP07oWcQ5xEgZ+BYgAk6yUh5urUQVr
 UPHaBiJoszh9gf7yAb4jp4GRBfDdnhdfxFUI/qjEXuqRN4x6SrRVMwTB9gwIo0XsDo0n+z9Z0ugk0
 5NJfl5ITVGCgd72InCZ/h2/lErAOaj54S8JMIpZWNlEw8CJhIABAyiT4ZJIdSNrcPp8qwmOqEypcd
 u4bayqt5XRDqJK5II2vm/a8tOSsm3EcfyR4TS0aYfZxfPCmkM53iLPbw4/Zd1oGCm1cLo0cTYno9X
 9uxVx8VGY3ConA==;
Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:64340
 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nnoYL-0007hh-Nl; Sun, 08 May 2022 17:34:57 -0400
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: Philip McGrath <philip@HIDDEN>
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
References: <20220419232736.272970-1-philip@HIDDEN>
 <87k0b52ec3.fsf@HIDDEN>
 <8bb2cf89-ae0e-cdcd-5149-a2d62aa3bbcc@HIDDEN>
Date: Sun, 08 May 2022 23:34:56 +0200
In-Reply-To: <8bb2cf89-ae0e-cdcd-5149-a2d62aa3bbcc@HIDDEN> (Philip
 McGrath's message of "Sun, 1 May 2022 17:26:17 -0400")
Message-ID: <87ee13wvwf.fsf_-_@HIDDEN>
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: -2.3 (--)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -3.3 (---)

Hi Philip,

Philip McGrath <philip@HIDDEN> skribis:

> Elm basically takes the view that the existing JavaScript/NPM thicket
> should be considered harmful. It imposes a lot of very strict=20
> requirements on Elm "packages" (vs. "applications") to avoid whole
> classes of problems. Not all of them are precisely the requirements I=20
> would have chosen, but I like them better than the alternative chaos.
>
> (One reason I gave this a try was to get some hands-on experience
> writing a build system and importer in a simplified context before=20
> trying to write `racket-build-system`.)
>
> In particular, allowing arbitrary JavaScript would defeat the strong
> guarantees Elm wants to offer as a statically-typed, purely-functional=20
> language with compiler-enforced semantic versioning (well, for a
> decidable subset of "semantics") that can make runtime errors=20
> vanishingly rare in practice. To that end, Elm requires that
> "packages"---the things `elm-build-system` knows how to build---be=20
> written in pure Elm, with no JavaScript at all. For "applications",
> interop is limited to asynchronous message passing.[1] The only two=20
> "applications" in this series, the `elm reactor` frontend and
> `elm-todomvc`, don't use any message passing.
>
> Of course, Elm needs some way to implement primitives. These are
> provided by modules in the `Elm.Kernel.*` namespace, which are written=20
> in JavaScript with the undocumented, unsafe conventions expected by
> the Elm compiler. The Elm compiler only allows kernel modules in
> packages in the `elm/*` and `elm-explorations/*` namespaces, so users
> can know that third-party packages won't break Elm's guaranteed, and
> the compiler is free to change its internal APIs without breaking
> anything. (This is free software, so you could patch the compiler to
> do whatever you want: it's just a community norm so strong it's
> expressed in code.) Even this is all source code with whitespace and
> comments: it's written in a very stylized way, as an ASM file in
> another compiler implementation might be, but it isn't generated code.
>
> For people who want to "minify", Elm suggests flags for UglifyJS that
> can also do otherwise-unsafe whole-program optimization of the
> compiled "application".[2] (Compiling "packages" emits only an
> internal representation, not JavaScript.) In my own projects, I've
> also done other post-processing, like adding LibreJS comments and
> converting the output to an ES6 module. I haven't tried to make
> `elm-build-system` do any of those kinds of things for "applications":
> I think we should find more examples of Elm applications people would
> want to package for Guix first, rather than trying to guess what they
> might need.

Thanks for explaining!  Elm is fascinating in many ways.

Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 1 May 2022 22:22:19 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 01 18:22:18 2022
Received: from localhost ([127.0.0.1]:34452 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nlHxK-0007l3-MK
	for submit <at> debbugs.gnu.org; Sun, 01 May 2022 18:22:18 -0400
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:56731)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nlHxI-0007kq-Ns
 for 55030 <at> debbugs.gnu.org; Sun, 01 May 2022 18:22:17 -0400
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id A88DA5C009B;
 Sun,  1 May 2022 18:22:11 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Sun, 01 May 2022 18:22:11 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 philipmcgrath.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:sender:subject
 :subject:to:to; s=fm1; t=1651443731; x=1651530131; bh=7iOWwP5Y9I
 j8h+UmEnk09z8zmDWaHNOKGuD4NmrKfng=; b=bWmwkDtQzbMDpfM3gqjmisMfw/
 4KVvSk+WIGfwUzTftYL2vgKE7ylSNhtMpSS2rJLQcpFJAo0k3S9estUF77gn2+ML
 4++3pUNJxmFYdGaYhtE83E/9ToaRYoDIWvwGhtHvCnxWyj85+/y6RnoZWCyfiTCG
 /4+vh1bq5OstVnzy8lb195OJrZbqIi0BjFkCHnkzqlyTmCHtJZvdjhG9K4x3tUhp
 HTI/XToGVd74pKHPVgo+myg5vdNJ08V1V5+DtMu8H4v0KBYcERFyfxE1ugOcr8p1
 hui4VL1yxeclYJjS8VSlLHqmQn3bvaNu0WTe+jiCEyats8XqkH68SdNkjSag==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:sender:subject
 :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
 :x-sasl-enc; s=fm1; t=1651443731; x=1651530131; bh=7iOWwP5Y9Ij8h
 +UmEnk09z8zmDWaHNOKGuD4NmrKfng=; b=crXy+afZ8ZzeCWlh3PcOGx20lH6io
 xCA1hOLFfcrNux9yfUvzm8Yr4xXtoO6/S5UNhmyd4UcvOSyKoQ8JBn2wzjFEtV4q
 452FNrYvPrTZo9endXcpPgRA9zAn2HwcT86hYqrCSfEIX91hIN5Hks66wr98l/uX
 Lzygs9K8+CV46Hhn+TXtKdk7yuzYJfI6srKKY4clOyk+11tFWyt237WZ9KqtTii3
 7Jkvk5sal4vVJcmhE24xp9nxdvrDTnz84GhP2XzbASHBuds5G/5jTy43vAbiqF9u
 +LRgpEnMWKypP/iO01+D3ZkA6sgxt86JahePdsvyF/4m8FD7q0yxxijLQ==
X-ME-Sender: <xms:EwhvYoS-G3Wgs7VstjnWXC9e2I3y7yO8VkJxADmSgc6aH7hyuwTHvA>
 <xme:EwhvYlzSoCsbd1uaUsoQEEEcyEsrznPZEmtkDzErVOPLMFy9y6UIVRHgqQ1rWM6oY
 2KduGh45Uzi9czE_oE>
X-ME-Received: <xmr:EwhvYl2RqLw6VD6nK5i1mxs0uwYieScfF_Vn4HdCXYkr0nkfr1YTeyCRZpgd0BdzTopf-SxiDNOldgbTcYX-YOMKcTqpwRByFp0DMw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrvdeggddtlecutefuodetggdotefrodftvf
 curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
 uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
 fjughrpefkffggfgfuvfevfhfhjggtgfesthekredttdefjeenucfhrhhomheprfhhihhl
 ihhpucfotgfirhgrthhhuceophhhihhlihhpsehphhhilhhiphhmtghgrhgrthhhrdgtoh
 hmqeenucggtffrrghtthgvrhhnpeetgfdvudfgtdeihedutdfgueelteegffffgeegjeei
 udetleefieduudethfdvueenucffohhmrghinhepghhithhhuhgsrdgtohhmnecuvehluh
 hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepphhhihhlihhpsehp
 hhhilhhiphhmtghgrhgrthhhrdgtohhm
X-ME-Proxy: <xmx:EwhvYsDe_rIVhy4-VX4sm5h_8TtLVPdLHGE-95Ie68Tx-GHjWZ8BPg>
 <xmx:EwhvYhgc6UcRfZnu28Y3A0xxHsuMwRpGYf5DuzD0LXn-3AMfyZnhUg>
 <xmx:EwhvYooihUSjGycCnoTkFiDQsYkuUb89o4fYyrrrRH4esmGsk6yufQ>
 <xmx:EwhvYhfSuQ5ZTNtcbIU3vtOzC5TMECqlzOK7TEoa8WvFNLhyg2WF3A>
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun,
 1 May 2022 18:22:11 -0400 (EDT)
Message-ID: <c9fcf5ff-59e3-dfac-1b5e-18b95f467780@HIDDEN>
Date: Sun, 1 May 2022 18:22:10 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
 Thunderbird/91.8.1
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
Content-Language: en-US
To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= <ludo@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <87k0b52ec3.fsf@HIDDEN> <87v8up0yv4.fsf_-_@HIDDEN>
From: Philip McGrath <philip@HIDDEN>
In-Reply-To: <87v8up0yv4.fsf_-_@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -1.7 (-)

Hi,

On 5/1/22 16:41, Ludovic Courtès wrote:
> I sent a few comments to individual patches that probably warrant a v2,
> but overall I think the patch series is almost ready to go.
> 
> Thanks!
> 
> Ludo’.

Thanks for taking a look! I have a few other things to wrap up before I 
return to this, but I'll put together a v2 relatively soon.

Tangentially, I learned after sending this series about a Rust-based 
runner [1] for "elm-explorations/test" tests, which may be easier for us 
to package than the Node.js-based runner.[2] Still, I'd probably save 
that for some future patch series.

-Philip

[1]: https://github.com/mpizenberg/elm-test-rs
[2]: https://github.com/rtfeldman/node-test-runner




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 1 May 2022 22:17:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 01 18:17:13 2022
Received: from localhost ([127.0.0.1]:34435 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nlHsO-0007c1-P9
	for submit <at> debbugs.gnu.org; Sun, 01 May 2022 18:17:12 -0400
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:40819)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nlHsN-0007bh-Qu
 for 55030 <at> debbugs.gnu.org; Sun, 01 May 2022 18:17:12 -0400
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id C2ED65C00B2;
 Sun,  1 May 2022 18:17:06 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Sun, 01 May 2022 18:17:06 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 philipmcgrath.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:sender:subject
 :subject:to:to; s=fm1; t=1651443426; x=1651529826; bh=KkdBhtWjB6
 4U9iVwvqV3e58g4OuXuSE+DLwSf6/YSDA=; b=H1EKM++Vok8Ptp250Cdt8OO6op
 +VIdUpfjCylePWZK+dF8b9XPtGHTZ+6cnOJdWTmcNaY73D7jSz6HBYTTfn1cyDBC
 0NaOODo1uTojoNVF1loHkmE7A4Z+U+axL78XCiOn/aQhrgEhr63fXYmRz4bTcFP1
 /3hP5Wt4rcsbIsGUvEyEye9sCgp/YyaOkL4e9iKnnSLOLrIATS3+63hmwzHAXR8j
 xvOVsgTjciyWS2dvmFUHuePMp2jbZoDAlr9dYb7dI/c6ZxBNhra6jpKHAE6YcjMy
 H4VjEBPkWXAGhtfQ/ClvHRfAROa8UDtYHl4KChBEL0/Gk6F8tgK23IEECbpA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:sender:subject
 :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
 :x-sasl-enc; s=fm1; t=1651443426; x=1651529826; bh=KkdBhtWjB64U9
 iVwvqV3e58g4OuXuSE+DLwSf6/YSDA=; b=UHvUi8sBKXSnQHYE75+IP4BOeFjBz
 zda48+v8CvXGIOAWam3IaEa/TnhvspFPMRNq1n82Bhv3OAh9RLVemwDNhXTvWRz3
 gDAO59LegVKyI0A5UceM1SviL7FFeu36mAjjORtw72/IavRhpJFK+sB5AT0i4S7u
 2jw+uDzKou7bi3pk62Tj9Kb66wM7f1wLQ8PMzNXuEcG1naIEBccBb8eVkJ6FGsmp
 KXnpHRVxd9kFZx1Nkot7dwF6jIjDo1WJVgPWnvX4PV5py4sag4WnZOTAhVIFwWIT
 /CzCLEZ3MA9SnH3cyiBFkP882OnW/0xWlsKzcRDY4fdrj1n4tpkY0YGqg==
X-ME-Sender: <xms:4gZvYh4SqTxsqXMBUB48LbAAgZlSK9eYIz7foc2pHzdRt_Mznx-ZSQ>
 <xme:4gZvYu7G4blp_jjrE2a7XV7qJ2MSvAnK8e7PgAfYShjdUvuAVz02vGcksenaccjF-
 9YGMNAPMtXa1WNN5jQ>
X-ME-Received: <xmr:4gZvYoffo7yIGcykpAU5mqowXMPfbA_bmBnCEb0FNpud0Fxfo8gNWlxe2dxXGXL9crm3uR6gXJFbXoohGANz7HoQwWiAU-OO_t72XA>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrvdeggddtkecutefuodetggdotefrodftvf
 curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
 uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
 fjughrpefkffggfgfuvfevfhfhjggtgfesthekredttdefjeenucfhrhhomheprfhhihhl
 ihhpucfotgfirhgrthhhuceophhhihhlihhpsehphhhilhhiphhmtghgrhgrthhhrdgtoh
 hmqeenucggtffrrghtthgvrhhnpeetfedtkefgieejveegheejteehtdefhfefgeduieeh
 fefftdekleegieeigeelleenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmh
 grihhlfhhrohhmpehphhhilhhiphesphhhihhlihhpmhgtghhrrghthhdrtghomh
X-ME-Proxy: <xmx:4gZvYqLi8PM4WNYnP524ulTm8mNZsXOZCQngIN6iUcQEmu9YrP8pRQ>
 <xmx:4gZvYlLPye6MmnOQE8GrErxIsdps3_3-CRhc0_r5OIpbccTOmvmFrw>
 <xmx:4gZvYjyOr7hKLMaVb2HKZgOFiZwio6xx_khLgLcJxIydlu4iXoa24g>
 <xmx:4gZvYiHohYb54pkaPkiLvLCnrHEonUh1dlDYS3akQ-7kYW2XWf0ygw>
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun,
 1 May 2022 18:17:06 -0400 (EDT)
Message-ID: <1752ba0e-1808-a587-049b-cb46dba6f65c@HIDDEN>
Date: Sun, 1 May 2022 18:17:05 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
 Thunderbird/91.8.1
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
Content-Language: en-US
To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= <ludo@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
 <20220419233214.275789-6-philip@HIDDEN>
 <87zgk10z2o.fsf_-_@HIDDEN>
From: Philip McGrath <philip@HIDDEN>
In-Reply-To: <87zgk10z2o.fsf_-_@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -1.7 (-)

Hi,

On 5/1/22 16:37, Ludovic Courtès wrote:
> Philip McGrath <philip@HIDDEN> skribis:
> 
>> +  (package
>> +    (name "elm-virtual-dom")
> 
> [...]
> 
>> +    (properties '((upstream-name . "elm/virtual-dom")))))
> 
> Could/should the importer infer the upstream name from the Guix name by
> default?
> 
> That way, we’d only need to specify that property where the automatic
> Guix->upstream name mapping wouldn’t work.

It could, but the heuristics seemed a bit brittle. To pick a few examples:

  1. elm-virtual-dom -> "elm/virtual-dom"
  2. elm-explorations-markdown -> "elm-explorations/markdown"
  2. elm-terezka-intervals -> "terezka/intervals"

We could add a special case for the "elm-explorations/*" namespace, but 
at least one of the others would need an explicit property. I *think* 
most of the packages in the "elm/*" namespace are single-element (e.g. 
"elm/html"), so maybe we could require the property for e.g. 
"elm/virtual-dom" and "elm/project-metadata-utils" ...

-Philip




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 1 May 2022 22:03:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 01 18:03:11 2022
Received: from localhost ([127.0.0.1]:34412 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nlHep-0007G4-FV
	for submit <at> debbugs.gnu.org; Sun, 01 May 2022 18:03:11 -0400
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:50729)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nlHen-0007Fl-HV
 for 55030 <at> debbugs.gnu.org; Sun, 01 May 2022 18:03:10 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 4B0605C0042;
 Sun,  1 May 2022 18:03:04 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute5.internal (MEProxy); Sun, 01 May 2022 18:03:04 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 philipmcgrath.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:sender:subject
 :subject:to:to; s=fm1; t=1651442584; x=1651528984; bh=kw5OlER3cX
 EFPrl5DCWLfsMzPkfBXOsYAyI6YM6ItKQ=; b=XautkdnjFbjyRFc5T6I6uYT0gK
 VPW9G7tzxPZ8twzCQdpYRUGZc0noNTyDSG4olcNyx6lVnY3e+BcHL2YopY39Ey2e
 LVcYBQ7p+P9wmmYEw41eTgoWTWLMxOOnAxAQy1ykeWwSf+aJgaJRSi7F1v6IrMpy
 rVnSh+II86Ih4hLKmd8Meo4u2gzd2jWfA5ytfpnzAXcMkZc+njwvTCwiGFZjsZrR
 QWSDAR0lWHU+IaC6/AKGfMunsqsBT+V7yFS7jzXo5XplV1EXfzKBm7BD9XG4St1U
 I5OZEfdkZ7VivZ/FEvOQwARwSIETSFDlqDIm+Vebi/4T0Npg0duysX8hq2zQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:sender:subject
 :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
 :x-sasl-enc; s=fm1; t=1651442584; x=1651528984; bh=kw5OlER3cXEFP
 rl5DCWLfsMzPkfBXOsYAyI6YM6ItKQ=; b=fRM3lSzSRulqmuhw4hsvyFIPV0oiB
 +dMFMVwMIx0wuLIp15lx4RT3En4Py93HeAcL66VqYZUFtgjlA2/IX4uebwRCe2cC
 qwR9ZRxPCkjoITsmO7RWndNlR3Ei7VZ8+QmdkdNiEQVlhk1kxUmCxb8YcgJGHyOY
 EC6Sz3tgLJN5cGCFTuuJkI3HlGYbIg0NWvREH5kE/r41TnEqWNlmApHoOptZFoS1
 t0LjA569300SgIPNRrOCMBubLMRacFQ2C8CM6BhyOBs3KtuVSPg59YR/YOiDO1Uj
 FJI30w9o+sTgZQWDW03Qy2SK8FThQ3olHjuetz8nRzE4YBRxoa7UY/I4Q==
X-ME-Sender: <xms:mANvYrzsWcXJGPt9T6yYs4KIWt2q3LezBZc4B4ivQw6HLlx07LyXIg>
 <xme:mANvYjTQQF9br4dvTxjyqtr_cJos6VUsdFG3YIiaAGSh98xwrwOJ-nqoqv1uUzqxU
 TOQ7dAvxI4YYqFjNOk>
X-ME-Received: <xmr:mANvYlW298gEbUbKA014FbihM2V3LN-XjXDKPpphdjGDFAj3JTG7dCHY_zTA-xqzlXy3xxF4LMRspau_trT-pLbJgYSGiPaNxdt2Xw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrvdeggddthecutefuodetggdotefrodftvf
 curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
 uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
 fjughrpefkffggfgfuvfevfhfhjggtgfesthekredttdefjeenucfhrhhomheprfhhihhl
 ihhpucfotgfirhgrthhhuceophhhihhlihhpsehphhhilhhiphhmtghgrhgrthhhrdgtoh
 hmqeenucggtffrrghtthgvrhhnpeehueekvdfgtdejhfeifffhfefhheejtddvvdetkeev
 ffehvdetkeeggfefleejueenucffohhmrghinhepvghlmhdqlhgrnhhgrdhorhhgpdhgih
 hthhhusgdrtghomhenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhl
 fhhrohhmpehphhhilhhiphesphhhihhlihhpmhgtghhrrghthhdrtghomh
X-ME-Proxy: <xmx:mANvYlhsiDBH6GBxS9sbg6xD0DDLiqjzkXZIpspf3US8r9hRYpmr1Q>
 <xmx:mANvYtD10KiUsF-ofViDehCVvtGuWUBQ_QhR0cO3vtTMhRSOXJk5tQ>
 <xmx:mANvYuIleBpySEGYOuIusePNiR_A6Gng6FHQVP2SlDF7LVai4W4ZpA>
 <xmx:mANvYo9lKQ4w8khQ1S5_V3TkZhjjhR4crffkJIzMDZMGto5wu8eEAQ>
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun,
 1 May 2022 18:03:03 -0400 (EDT)
Message-ID: <1cf62d38-77f7-b50c-6137-a345a255826c@HIDDEN>
Date: Sun, 1 May 2022 18:03:03 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
 Thunderbird/91.8.1
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
Content-Language: en-US
To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= <ludo@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
 <20220419233214.275789-3-philip@HIDDEN>
 <874k292dpq.fsf_-_@HIDDEN>
From: Philip McGrath <philip@HIDDEN>
In-Reply-To: <874k292dpq.fsf_-_@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -1.7 (-)

Hi,

On 5/1/22 16:35, Ludovic Courtès wrote:
> Philip McGrath <philip@HIDDEN> skribis:
> 
>> * gnu/packages/patches/elm-offline-package-registry.scm: New file.
>> * gnu/local.mk (dist_patch_DATA): Add it.
>> * gnu/packages/elm.scm (elm): Use it.
>> * guix/build-system/elm.scm, guix/build/elm-build-system.scm,
>> guix/import/elm.scm, guix/scripts/import/elm.scm: New files.
>> * guix/scripts/import.scm (importers): Add "elm".
> 
> I think the custom would be to add the importer in a separate commit; if
> you can do that, that’s great.
> 

I certainly can split it that way. I did it like this because I actually 
wrote the importer before the build system.

> Could you add an entry for the importer under “Invoking guix import”,
> and one for the build system under “Build Systems” in guix.texi?  You
> can follow existing entries as a template.
> 

I will give it a try! I haven't written any Texinfo before.

> It would be nice to have tests for the importer.  One way to do that is
> like ‘tests/cpan.scm’, which spawns an HTTP server that mimics the real
> registry.
> 

I'll take a look at that.

>> +;; COMMENTARY:
> 
> Nitpick: You can make that literally “;;; Commentary:”.   That’s what
> (ice-9 documentation) expects.
> 
>> +;; CODE:
> 
> Likewise: “;;; Code:”.
> 

Will do.

>> +(define elm-package-registry
>> +  ;; It is much nicer to fetch this small (< 40 KB gzipped)
>> +  ;; file once than to do many HTTP requests.
>> +  (mlambda ()
>> +    "Fetch the Elm package registry, represented as a vhash mapping package
>> +names to lists of available versions, sorted from latest to oldest."
>> +    (let ((url "https://package.elm-lang.org/all-packages"))
>> +      (cond
>> +       ((json-fetch url)
>> +        => (lambda (alist)
>> +             (fold (lambda (entry vh)
>> +                     (match entry
>> +                       ((name . vec)
>> +                        (vhash-cons name
>> +                                    (sort (vector->list vec) version>?)
>> +                                    vh))))
>> +                   vlist-null
>> +                   alist)))
>> +       (else
>> +        (raise (formatted-message
>> +                (G_ "error downloading Elm package registry from ~a")
>> +                url)))))))
>> +
>> +(define (make-elm-package-sexp name version)
>> +  "Return two values: the `package' s-expression for the Elm package with the
>> +given NAME and VERSION, and a list of Elm packages it depends on."
>> +  (define-values (checkout _commit _relation)
>> +    ;; Elm requires that packages use this very specific format
>> +    (update-cached-checkout (string-append "https://github.com/" name)
>> +                            #:ref `(tag . ,version)))
>> +  (define info
>> +    (call-with-input-file (string-append checkout "/elm.json")
>> +      json->scm))
>> +  (define (get-deps key)
>> +    (cond
>> +     ((assoc-ref info key)
>> +      => (cut map car <>))
>> +     (else
>> +      '())))
> 
> The way the importer fiddles with alists isn’t pretty IMO.  :-)
> 
> How about using ‘define-json-mapping’ (also from Guile-JSON) to “map”
> JSON data structures to records?  See how pypi.scm and others do it.
> The resulting code should be clearer.
> 

I had tried that first, but there were some problems: IIRC, there might 
have been an issue with potentially-absent fields defaulting to 
*unspecified*, some alist manipulation was needed anyway for fields that 
use JSON objects as key--value maps, and, with a view toward being able 
to process `{"type":"application"}` files some day, there didn't seem to 
be enough ability to adapt parsing based on the value for the key. I 
found this code less confusing. But I can try again if it seems important!

> Also, instead of or in addition to memoizing ‘elm-package-registry’,
> would it make sense to use ‘http-fetch/cached’ to fetch that file?
> 

I'll take a look!

> Nitpick: Guile has multiple-value truncation, so you can write:
> 
>    (define checkout
>      (update-cached-checkout …))
> 

I saw that some places in Guix relied on that already, but I also saw 
that `info guile values` says that:

 > The effect of passing no
 > value or more than one value to continuations that were not created
 > by ‘call-with-values’ is unspecified.

... so I wasn't sure what to do.

-Philip




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 1 May 2022 21:27:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 01 17:27:58 2022
Received: from localhost ([127.0.0.1]:34382 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nlH6k-0006K2-9J
	for submit <at> debbugs.gnu.org; Sun, 01 May 2022 17:27:58 -0400
Received: from out2-smtp.messagingengine.com ([66.111.4.26]:57039)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nlH6i-0006Jp-VI
 for 55030 <at> debbugs.gnu.org; Sun, 01 May 2022 17:27:57 -0400
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id DCBDC5C0090;
 Sun,  1 May 2022 17:27:51 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute3.internal (MEProxy); Sun, 01 May 2022 17:27:51 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 philipmcgrath.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:sender:subject
 :subject:to:to; s=fm1; t=1651440471; x=1651526871; bh=duNbZUezPN
 iTEReK7ROn7pn1O2OuaqYRJlgYm8+Phxc=; b=s/Wr9hASgyWbwYaZkGJda9eN48
 PUuNKlQCFvTc80Nkj8bJHlGctNwypRu2b5SgZcqmYRDhVDdaGjoqAYxQ/a5Fn0Od
 UvywfAD9rfsWLZryt3mltAQd1a718vPmzAvxbRCkmahf/zyRMgl9B52ysB3Y0aSE
 6T4ZthhkhUBJbtQ+evsarJV9gzqAmEnjQ59x18P/cnKypPv8Gq4TpBu79r9SzO//
 ndPEpL5TOPjlIZPI5RtPuC1csTVi9Qtsm9ZaXebN65UZ1hHpKUGEVz69Mbelwdqv
 rPYPSm/fRlclgizJUPE65b3SmNn1JzqwX/5QeIS8MQl2RL3P6VT3tnPfm5QQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:sender:subject
 :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
 :x-sasl-enc; s=fm1; t=1651440471; x=1651526871; bh=duNbZUezPNiTE
 ReK7ROn7pn1O2OuaqYRJlgYm8+Phxc=; b=hx5TNaD3tRtd2S3GIMJKlCm+r4xGy
 t7/ZB9O79BDGaT6JzXHI24GZx5a14P8fXENYWViBrj4znXM5IiP8uEh37atzBtSI
 F8HsV/UwGYMbH9B2ZEwaNERBkxp/3BKgaiPUEkCs4f8Oxh7oarPdhmFG3IZBM6BL
 n1TmksMm1Z/n3VNJakAGxy9crP6mX8H5IKVVvMSYDIOoJ/4hla0fGl3dOGkTHLpz
 n16fSEkLQ9peuL8s8VgUAgmbQJym2HehMfiGd02B2lSEQTxGVVeBovazTjgNGQ6s
 /eVa/iScCV32wNulAGEphtzWJjuE75xlzHL0lsFkXa4MY5+FZpyi+v8lA==
X-ME-Sender: <xms:V_tuYm4Z87sQ0CRMxD6V_EC327Wcvuxsh8USnTWU-G0iN8a2j5039w>
 <xme:V_tuYv7DuIwH_3G2FA368XiNYoA9zjjlYwd-aj4UlUX1V849NRMHJb-AOYc0C5btf
 qdZF2SHk00cG4Vwycs>
X-ME-Received: <xmr:V_tuYlf_SdQypmK1LZLx2O4NDzgXrFW5UcZZuOwVTZO_XfwMNmR4YDEOBUjGRXFQd3mXhe340josJoJfQZY2XDbOezlp1YcdD5QD6w>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrvdefgdduiedvucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtkeertddtfeejnecuhfhrohhmpefrhhhi
 lhhiphcuofgtifhrrghthhcuoehphhhilhhiphesphhhihhlihhpmhgtghhrrghthhdrtg
 homheqnecuggftrfgrthhtvghrnhepteeftdekgfeijeevgeehjeethedtfefhfeegudei
 heefffdtkeelgeeiieegleelnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpe
 hmrghilhhfrhhomhepphhhihhlihhpsehphhhilhhiphhmtghgrhgrthhhrdgtohhm
X-ME-Proxy: <xmx:V_tuYjJOAfq_fq7oXJTfzrtix3y2cRQnTbRgOQDu_Iw_lDEfEY1GTA>
 <xmx:V_tuYqL7Kk0YccyC5HQ1Nrfami-z4LSzDOFT4HbzahwzcRRsPyDsJw>
 <xmx:V_tuYkxMn29BEFbaYWLBNzKR3Tggn3MildsKqXAjgrc5n88GU1bvBA>
 <xmx:V_tuYvH-qny2reVf8wUOfv9nDRpQt-xNusZQIbJQO6D6C93QLv6VwA>
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun,
 1 May 2022 17:27:48 -0400 (EDT)
Message-ID: <d9b42ca6-22c1-0bc2-3249-316c451c8405@HIDDEN>
Date: Sun, 1 May 2022 17:27:45 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
 Thunderbird/91.8.1
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
Content-Language: en-US
To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= <ludo@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
 <20220419233214.275789-2-philip@HIDDEN>
 <87fslt2eb0.fsf_-_@HIDDEN>
From: Philip McGrath <philip@HIDDEN>
In-Reply-To: <87fslt2eb0.fsf_-_@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -1.7 (-)

On 5/1/22 16:22, Ludovic Courtès wrote:
> Philip McGrath <philip@HIDDEN> skribis:
> 
>> * gnu/packages/elm.scm (elm-compiler): Rename to ...
>> (elm): ... this variable.
>> [description]: Tweak.
> 
> Could you add a deprecated alias, with ‘deprecated-package’?

Yes, will do. (Though it will be at least a few days before I circle 
back to this.)




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 1 May 2022 21:26:26 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 01 17:26:26 2022
Received: from localhost ([127.0.0.1]:34376 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nlH5F-0006Ho-PO
	for submit <at> debbugs.gnu.org; Sun, 01 May 2022 17:26:26 -0400
Received: from out2-smtp.messagingengine.com ([66.111.4.26]:36009)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1nlH5E-0006Hc-Cg
 for 55030 <at> debbugs.gnu.org; Sun, 01 May 2022 17:26:24 -0400
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id 49FD55C00BD;
 Sun,  1 May 2022 17:26:19 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute4.internal (MEProxy); Sun, 01 May 2022 17:26:19 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 philipmcgrath.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:sender:subject
 :subject:to:to; s=fm1; t=1651440379; x=1651526779; bh=HSXPPYXMEW
 /F1vEybPUciNuFyLTUxTH+yGVeLV1CdJY=; b=mGWTzgJxIkFjjZq2RVS6KdG8gA
 ymwHE5QcWISa4fjhR+eqcykOXO3m2B9Ni8Ri8ZuaWaT3gbRxZUPlxW+ePOrtfZ1V
 6W6KsEZhhxpswYyIaiMZ6dFWM7p0zFs7Zu/a32wBWtia1YYvse7RvFHgQYdk0hCm
 tFgmy6jCtrHCBlhpbYUwYaEPx+g+7NQloNa7WMv6G67tCvqeIG9I+LoOO9u3i3mR
 jfqdh2dlb2LrI065g5qweXqQ1TH7YLYGW4PE/1k9dpRXHFH09jaVNDpFGyeBkFn9
 m2sPbpALhTWSKO0pg7PVSY90VTE0VeFFbqrGTd9zkqKxFUMX+uV2FTnc7bjA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:date:date:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:sender:subject
 :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
 :x-sasl-enc; s=fm1; t=1651440379; x=1651526779; bh=HSXPPYXMEW/F1
 vEybPUciNuFyLTUxTH+yGVeLV1CdJY=; b=wDCutnukv84iBJ3kgd+JhSWsMQLJf
 BJ4Bl4u8Rr8MSBNwaCqYjKb4MVh5uTL6FBBrV+AP3exmv+oEPBZVVFjfkDJqhiGP
 x2S19/4bXJ6PQigLPA2glTsiYC9FgKk8LBSb+NIXTmvqBRntyNBOAKpZGUKEupNl
 LWSDbtgPmipm1zbRprabiMrD0JXnHIZJ+D4hWs3Ln7WCMISycsI0qrN2a9deJQGs
 MQRCH151UNjO0iksum3kwigOC+WsXSekF5CeuSP/hHQnLmUt7KBflGYkSXZCy9AQ
 NNT8MVeOsmodr2icswjNSKNUTJmALZYgvQJx99Pff7sN4FopOe8gxmokQ==
X-ME-Sender: <xms:-vpuYkREsKmkdspz1DnjgKgccY_FiRTlJTDq-u9aDOVPnzBxHTQLQw>
 <xme:-vpuYhxFCMwH4aLvqcga8GT9jpjZ7XPoFA3nvgjyZ6o9yDNkF58Tff_Cy_9UVoCnl
 HIDUl1xF3Oixas7Pog>
X-ME-Received: <xmr:-vpuYh3tzELKTRuR_eg0nzuYLVESwhfwFM12JWsz475EsvLsHgN2QXwPnJEArebDENEOlDAzzD3GLYSDGkfbQItruDvoJRg4ToScsg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrvdefgdduiedvucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtkeertddtfeejnecuhfhrohhmpefrhhhi
 lhhiphcuofgtifhrrghthhcuoehphhhilhhiphesphhhihhlihhpmhgtghhrrghthhdrtg
 homheqnecuggftrfgrthhtvghrnhepkedtffehtddvhedvtdetkeelgfeivedugeffgeev
 tdefgfduueetgfdvgfdtgeefnecuffhomhgrihhnpegvlhhmqdgthhgrrhhtshdrohhrgh
 dpvghlmhdqlhgrnhhgrdhorhhgpdhgihhthhhusgdrtghomhdpohhpthhimhhiiigvrdhm
 ugenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehphh
 hilhhiphesphhhihhlihhpmhgtghhrrghthhdrtghomh
X-ME-Proxy: <xmx:-_puYoBv6I9qicZ3NwcU8Z2Oid8k-8oFUqPnS-y2DGVRAd5x7lsm1g>
 <xmx:-_puYtg9aCAIbq-lpDc_ez-xay1-oQHpidH92AN5NFjDsy1c6SmSLg>
 <xmx:-_puYkoB-UcZb1a0ZUiEtpsKWUAvT2nWXIYmJzhg8z_qhgm3tR9rzw>
 <xmx:-_puYtdhO1joYVC9-A8_lFPN1Lso_DcIyOOYbfQVu8rQEPyYDfDJ3A>
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun,
 1 May 2022 17:26:18 -0400 (EDT)
Message-ID: <8bb2cf89-ae0e-cdcd-5149-a2d62aa3bbcc@HIDDEN>
Date: Sun, 1 May 2022 17:26:17 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
 Thunderbird/91.8.1
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
Content-Language: en-US
To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= <ludo@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <87k0b52ec3.fsf@HIDDEN>
From: Philip McGrath <philip@HIDDEN>
In-Reply-To: <87k0b52ec3.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -1.7 (-)

Hi,

Hi,

On 5/1/22 16:22, Ludovic Courtès wrote:
> Hi Philip,
> 
> Philip McGrath <philip@HIDDEN> skribis:
> 
>> This patch series updates Elm to version 0.9.1, then adds an
>> 'elm-build-system' and a 'guix import elm' command.
> 
> Impressive!
> 

Thanks!

>> To exercise the new features, this patch series then:
>>
>>    * Build the front-end for the `elm reactor` command (which is written in Elm)
>>      and adds a variant of Elm to Guix with the command enabled;
>>
>>    * Builds 'elm-todomvc', an official example of a basic Elm application; and
>>
>>    * Builds a feature-rich third-party package, "terezka/elm-charts":
>>      <https://elm-charts.org>.
> 
> Woow, neat.
> 
> Annoying question that I have to ask: do these packages bundle
> JavaScript libraries?  If yes, is it source or is it “minified”?
> 
> (My take is that we could tolerate some level of bundling if “doing the
> right thing” is impractical, but it’d rather be source.)
> 

Short answer: no, they don't!

Longer answer:

Elm basically takes the view that the existing JavaScript/NPM thicket 
should be considered harmful. It imposes a lot of very strict 
requirements on Elm "packages" (vs. "applications") to avoid whole 
classes of problems. Not all of them are precisely the requirements I 
would have chosen, but I like them better than the alternative chaos.

(One reason I gave this a try was to get some hands-on experience 
writing a build system and importer in a simplified context before 
trying to write `racket-build-system`.)

In particular, allowing arbitrary JavaScript would defeat the strong 
guarantees Elm wants to offer as a statically-typed, purely-functional 
language with compiler-enforced semantic versioning (well, for a 
decidable subset of "semantics") that can make runtime errors 
vanishingly rare in practice. To that end, Elm requires that 
"packages"---the things `elm-build-system` knows how to build---be 
written in pure Elm, with no JavaScript at all. For "applications", 
interop is limited to asynchronous message passing.[1] The only two 
"applications" in this series, the `elm reactor` frontend and 
`elm-todomvc`, don't use any message passing.

Of course, Elm needs some way to implement primitives. These are 
provided by modules in the `Elm.Kernel.*` namespace, which are written 
in JavaScript with the undocumented, unsafe conventions expected by the 
Elm compiler. The Elm compiler only allows kernel modules in packages in 
the `elm/*` and `elm-explorations/*` namespaces, so users can know that 
third-party packages won't break Elm's guaranteed, and the compiler is 
free to change its internal APIs without breaking anything. (This is 
free software, so you could patch the compiler to do whatever you want: 
it's just a community norm so strong it's expressed in code.) Even this 
is all source code with whitespace and comments: it's written in a very 
stylized way, as an ASM file in another compiler implementation might 
be, but it isn't generated code.

For people who want to "minify", Elm suggests flags for UglifyJS that 
can also do otherwise-unsafe whole-program optimization of the compiled 
"application".[2] (Compiling "packages" emits only an internal 
representation, not JavaScript.) In my own projects, I've also done 
other post-processing, like adding LibreJS comments and converting the 
output to an ES6 module. I haven't tried to make `elm-build-system` do 
any of those kinds of things for "applications": I think we should find 
more examples of Elm applications people would want to package for Guix 
first, rather than trying to guess what they might need.

[1]: https://guide.elm-lang.org/interop/
[2]: https://github.com/elm/compiler/blob/master/hints/optimize.md

-Philip




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 1 May 2022 20:41:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 01 16:41:43 2022
Received: from localhost ([127.0.0.1]:34309 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nlGNy-0002w1-RE
	for submit <at> debbugs.gnu.org; Sun, 01 May 2022 16:41:42 -0400
Received: from eggs.gnu.org ([209.51.188.92]:33558)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1nlGNx-0002vp-Tz
 for 55030 <at> debbugs.gnu.org; Sun, 01 May 2022 16:41:42 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:43560)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nlGNs-0002V5-Lq; Sun, 01 May 2022 16:41:36 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To:
 From; bh=9OCVQIIV/9DfGp3UyLt8NLS9pwZ6iuVDJsYAXEgXC7g=; b=nKImm8F4ngrJ617YcGWB
 eQKjeeTX2n5He8yLCnUX8/WAjKjxLjH4CsrUkKu1DipU44XH6shlbCSMUzLCmha3fdHS7rM/kMxBg
 XAdqA9IT0KBYb1Ph+yrkD/rpt6FjceXnZtgRHXqfIbbtvt8q127uwejpom+k0j6qi0eusWCo94b6I
 N6Uo3eCrnMsJ3LXoNfdobvMYT6obTU6zZauTGEacSFtP/J86+YxqQGi9K15RY3l/iQKxf9C7EeC+x
 c29lc6G7gWFJwVo3/gdeul2a5zgCudQfkQF8ZgREMveWDgG6hIhdjaYLgJPt8DuQ3154/alkbjhCP
 D7+KD1KZL0zWGw==;
Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:63678
 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nlGNs-0001gZ-9r; Sun, 01 May 2022 16:41:36 -0400
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: Philip McGrath <philip@HIDDEN>
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
References: <20220419232736.272970-1-philip@HIDDEN>
 <87k0b52ec3.fsf@HIDDEN>
Date: Sun, 01 May 2022 22:41:35 +0200
In-Reply-To: <87k0b52ec3.fsf@HIDDEN> ("Ludovic =?utf-8?Q?Court=C3=A8s=22'?=
 =?utf-8?Q?s?= message of "Sun, 01 May 2022 22:22:04 +0200")
Message-ID: <87v8up0yv4.fsf_-_@HIDDEN>
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: -2.3 (--)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -3.3 (---)

I sent a few comments to individual patches that probably warrant a v2,
but overall I think the patch series is almost ready to go.

Thanks!

Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 1 May 2022 20:37:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 01 16:37:12 2022
Received: from localhost ([127.0.0.1]:34303 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nlGJc-0002pX-A2
	for submit <at> debbugs.gnu.org; Sun, 01 May 2022 16:37:12 -0400
Received: from eggs.gnu.org ([209.51.188.92]:33016)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1nlGJa-0002pK-QV
 for 55030 <at> debbugs.gnu.org; Sun, 01 May 2022 16:37:11 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:43516)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nlGJV-00021v-I8; Sun, 01 May 2022 16:37:05 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To:
 From; bh=IJxiDLCBt37h1CpB2BPfxYH9skWUxKf7jfWU2Q7qAQs=; b=sPO1+4A772CzqY0L8iIS
 KCejNhckqs6kQZ1jGG1s9QNJ685uGB5CqQ+LKAKyFB8rnnLayhskP8wqc0eTPvZsb+O8nz5bv9tt7
 yI3K809l2lumbl0+r0HRgUHZKpOylpaV3KZdHRBm9HnLQhTB1o6WkNImkPWqAI2ff/R/rsx2mrbq1
 Ck21BcTgfQPtXuunIEyBt3om5uSxf0MVYMKB4QLrSzoC2hUZvy9JlaM4JNGYhKp42zo0aDkevhFl0
 lH+FY7X1Hhaz7uLLWYZjm/vVf3fTGptyEssBBxf12FwqPIHjJkxgdSXw/qCay0GletlYZLPIPhjL8
 6ueFUDCXB6oTYg==;
Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:63089
 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nlGJV-0001Mv-5z; Sun, 01 May 2022 16:37:05 -0400
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: Philip McGrath <philip@HIDDEN>
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
 <20220419233214.275789-6-philip@HIDDEN>
Date: Sun, 01 May 2022 22:37:03 +0200
In-Reply-To: <20220419233214.275789-6-philip@HIDDEN> (Philip
 McGrath's message of "Tue, 19 Apr 2022 19:31:50 -0400")
Message-ID: <87zgk10z2o.fsf_-_@HIDDEN>
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: -2.3 (--)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -3.3 (---)

Philip McGrath <philip@HIDDEN> skribis:

> +  (package
> +    (name "elm-virtual-dom")

[...]

> +    (properties '((upstream-name . "elm/virtual-dom")))))

Could/should the importer infer the upstream name from the Guix name by
default?

That way, we=E2=80=99d only need to specify that property where the automat=
ic
Guix->upstream name mapping wouldn=E2=80=99t work.




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 1 May 2022 20:35:40 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 01 16:35:40 2022
Received: from localhost ([127.0.0.1]:34298 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nlGI7-0002n8-Pe
	for submit <at> debbugs.gnu.org; Sun, 01 May 2022 16:35:40 -0400
Received: from eggs.gnu.org ([209.51.188.92]:32894)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1nlGI6-0002mv-0j
 for 55030 <at> debbugs.gnu.org; Sun, 01 May 2022 16:35:38 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:43498)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nlGI0-0001sP-Jq; Sun, 01 May 2022 16:35:32 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To:
 From; bh=3Qrx9yxkL7EDWCjeG9ggGaQ9dSA630nPcfJWekIR7+M=; b=pvZTGDQ+ayOfC97WhoIk
 UpogXsk9Y55Wcm50XJscSNO3WpgyUzMvtStH/OvzNFZKaANBzIxQRwn1RBhRQL2vWrJk6KgI39teD
 MeFQUpSiuNocvFJx+p3mLHpvz5ct4P0pOB5FrJDcumA4pXUQKUQKwDqa8YM+VKU6hQAtXFZX2oCnB
 njMQ0gQ4DmkoPgPEJuhLxXUURZtgmiIge/PfVxAtSXRyFuPVPnOjstSXflN3G5HGJ6gnyMTGr4AjM
 iaNgP5vRW98UfCWCQSOUBebH8vkNygHjD2DbyFf58PKqGv7cnBoR91Y1hzqxfieS6K0utNyZscFwE
 WGrYu6BlhnGYeg==;
Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:51353
 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nlGHz-0001DF-JR; Sun, 01 May 2022 16:35:32 -0400
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: Philip McGrath <philip@HIDDEN>
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
 <20220419233214.275789-3-philip@HIDDEN>
Date: Sun, 01 May 2022 22:35:29 +0200
In-Reply-To: <20220419233214.275789-3-philip@HIDDEN> (Philip
 McGrath's message of "Tue, 19 Apr 2022 19:31:47 -0400")
Message-ID: <874k292dpq.fsf_-_@HIDDEN>
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: -2.3 (--)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -3.3 (---)

Philip McGrath <philip@HIDDEN> skribis:

> * gnu/packages/patches/elm-offline-package-registry.scm: New file.
> * gnu/local.mk (dist_patch_DATA): Add it.
> * gnu/packages/elm.scm (elm): Use it.
> * guix/build-system/elm.scm, guix/build/elm-build-system.scm,
> guix/import/elm.scm, guix/scripts/import/elm.scm: New files.
> * guix/scripts/import.scm (importers): Add "elm".

I think the custom would be to add the importer in a separate commit; if
you can do that, that=E2=80=99s great.

Could you add an entry for the importer under =E2=80=9CInvoking guix import=
=E2=80=9D,
and one for the build system under =E2=80=9CBuild Systems=E2=80=9D in guix.=
texi?  You
can follow existing entries as a template.

It would be nice to have tests for the importer.  One way to do that is
like =E2=80=98tests/cpan.scm=E2=80=99, which spawns an HTTP server that mim=
ics the real
registry.

> +;; COMMENTARY:

Nitpick: You can make that literally =E2=80=9C;;; Commentary:=E2=80=9D.   T=
hat=E2=80=99s what
(ice-9 documentation) expects.

> +;; CODE:

Likewise: =E2=80=9C;;; Code:=E2=80=9D.

> +(define elm-package-registry
> +  ;; It is much nicer to fetch this small (< 40 KB gzipped)
> +  ;; file once than to do many HTTP requests.
> +  (mlambda ()
> +    "Fetch the Elm package registry, represented as a vhash mapping pack=
age
> +names to lists of available versions, sorted from latest to oldest."
> +    (let ((url "https://package.elm-lang.org/all-packages"))
> +      (cond
> +       ((json-fetch url)
> +        =3D> (lambda (alist)
> +             (fold (lambda (entry vh)
> +                     (match entry
> +                       ((name . vec)
> +                        (vhash-cons name
> +                                    (sort (vector->list vec) version>?)
> +                                    vh))))
> +                   vlist-null
> +                   alist)))
> +       (else
> +        (raise (formatted-message
> +                (G_ "error downloading Elm package registry from ~a")
> +                url)))))))
> +
> +(define (make-elm-package-sexp name version)
> +  "Return two values: the `package' s-expression for the Elm package wit=
h the
> +given NAME and VERSION, and a list of Elm packages it depends on."
> +  (define-values (checkout _commit _relation)
> +    ;; Elm requires that packages use this very specific format
> +    (update-cached-checkout (string-append "https://github.com/" name)
> +                            #:ref `(tag . ,version)))
> +  (define info
> +    (call-with-input-file (string-append checkout "/elm.json")
> +      json->scm))
> +  (define (get-deps key)
> +    (cond
> +     ((assoc-ref info key)
> +      =3D> (cut map car <>))
> +     (else
> +      '())))

The way the importer fiddles with alists isn=E2=80=99t pretty IMO.  :-)

How about using =E2=80=98define-json-mapping=E2=80=99 (also from Guile-JSON=
) to =E2=80=9Cmap=E2=80=9D
JSON data structures to records?  See how pypi.scm and others do it.
The resulting code should be clearer.

Also, instead of or in addition to memoizing =E2=80=98elm-package-registry=
=E2=80=99,
would it make sense to use =E2=80=98http-fetch/cached=E2=80=99 to fetch tha=
t file?

Nitpick: Guile has multiple-value truncation, so you can write:

  (define checkout
    (update-cached-checkout =E2=80=A6))

I haven=E2=80=99t looked into much detail at the build system, but I=E2=80=
=99m sure you
know what you=E2=80=99re doing.  :-)

Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 1 May 2022 20:22:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 01 16:22:52 2022
Received: from localhost ([127.0.0.1]:34289 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nlG5k-0002TV-L0
	for submit <at> debbugs.gnu.org; Sun, 01 May 2022 16:22:52 -0400
Received: from eggs.gnu.org ([209.51.188.92]:59714)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1nlG5j-0002TJ-4J
 for 55030 <at> debbugs.gnu.org; Sun, 01 May 2022 16:22:51 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:43328)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nlG5d-0000F5-Tb; Sun, 01 May 2022 16:22:45 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To:
 From; bh=+pazW96IbK0rzyv+jssy1odNI6Gy2nMyR8OWDYi6CUY=; b=qNaGB/OTYvYCdMhQ/IYr
 JrSwNslH2thulSVVQ55RC9XeEhrvHf/O1iGIhDhoHpAOL7PRJNYI799t6fv6FxGVd24d07jO/K9vA
 SOZG/toKHbs/xmImhZlMh3qkK3YQXfCpYk4Hok5cp9Fnfn71ETKJPxavrQntXwyHRe4LKFfu6iVWJ
 RsTveQKu3n4PM+urV/K/UqtbQM9juRD49iUmVgfyxz4I6roG0Z+hdi7lGBDEZcR1vGJ11ca2zcsZw
 bbn4oWV7T8SP8EqthZ2QePKew42m8JC6jJFzoH6yclQ7gr4EdZuWwK9wTBGdEPAfPn8nuIX1OpkIk
 KYsh/EXH7nkXFQ==;
Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:49817
 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nlG5d-00017v-Hf; Sun, 01 May 2022 16:22:45 -0400
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: Philip McGrath <philip@HIDDEN>
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
 <20220419233214.275789-2-philip@HIDDEN>
Date: Sun, 01 May 2022 22:22:43 +0200
In-Reply-To: <20220419233214.275789-2-philip@HIDDEN> (Philip
 McGrath's message of "Tue, 19 Apr 2022 19:31:46 -0400")
Message-ID: <87fslt2eb0.fsf_-_@HIDDEN>
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: -2.3 (--)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -3.3 (---)

Philip McGrath <philip@HIDDEN> skribis:

> * gnu/packages/elm.scm (elm-compiler): Rename to ...
> (elm): ... this variable.
> [description]: Tweak.

Could you add a deprecated alias, with =E2=80=98deprecated-package=E2=80=99?




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 1 May 2022 20:22:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 01 16:22:27 2022
Received: from localhost ([127.0.0.1]:34285 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1nlG5L-0002So-A7
	for submit <at> debbugs.gnu.org; Sun, 01 May 2022 16:22:27 -0400
Received: from eggs.gnu.org ([209.51.188.92]:59656)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1nlG5K-0002Sc-BD
 for 55030 <at> debbugs.gnu.org; Sun, 01 May 2022 16:22:26 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:43326)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nlG54-0000Ch-TT; Sun, 01 May 2022 16:22:20 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To:
 From; bh=Jb8ef3rlTICMMH0o691i75hmhbExRQ0qXP5iGmgwPRA=; b=GLoM4a78sGbQTzqgztQn
 VVD5Gqlpf1PTIAi44ROyvkVJ3XdCHdWU5Eq93lhLeiqm9wGDCt+7fJOhgbx4fGYcZTptWpWvDSMKl
 7JLk6y2TJ3Lcs5H82OVTPK4O/WJbWXkIBmYSyVsHJRJN2XKoIxlE73/F6p6rMIY//qKUfeOxxkka6
 fL+2+k8SmMzlAZhl4OMb5TQejBqVPsJsKYZ9/iNJfxoCAvFzUuoPQ6/IMk+LzkROdlIevj0mdcph0
 O6yaraecDBRApNaQ51DzfwSMhbwqai1dETnlXpdkuPYZdLVzxUYTgS4RY1n15qH7ZTjUfA9FT++jc
 uO1Rgr8DMcQy7Q==;
Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:53297
 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1nlG4z-00010R-86; Sun, 01 May 2022 16:22:07 -0400
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: Philip McGrath <philip@HIDDEN>
Subject: Re: bug#55030: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build
 system & importer.
References: <20220419232736.272970-1-philip@HIDDEN>
Date: Sun, 01 May 2022 22:22:04 +0200
In-Reply-To: <20220419232736.272970-1-philip@HIDDEN> (Philip
 McGrath's message of "Tue, 19 Apr 2022 19:27:36 -0400")
Message-ID: <87k0b52ec3.fsf@HIDDEN>
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: -2.3 (--)
X-Debbugs-Envelope-To: 55030
Cc: 55030 <at> debbugs.gnu.org
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: -3.3 (---)

Hi Philip,

Philip McGrath <philip@HIDDEN> skribis:

> This patch series updates Elm to version 0.9.1, then adds an
> 'elm-build-system' and a 'guix import elm' command.

Impressive!

> To exercise the new features, this patch series then:
>
>   * Build the front-end for the `elm reactor` command (which is written i=
n Elm)
>     and adds a variant of Elm to Guix with the command enabled;
>
>   * Builds 'elm-todomvc', an official example of a basic Elm application;=
 and
>
>   * Builds a feature-rich third-party package, "terezka/elm-charts":
>     <https://elm-charts.org>.

Woow, neat.

Annoying question that I have to ask: do these packages bundle
JavaScript libraries?  If yes, is it source or is it =E2=80=9Cminified=E2=
=80=9D?

(My take is that we could tolerate some level of bundling if =E2=80=9Cdoing=
 the
right thing=E2=80=9D is impractical, but it=E2=80=99d rather be source.)

Thanks,
Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:35:16 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:35:16 2022
Received: from localhost ([127.0.0.1]:44539 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxNM-00069Z-5e
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:35:16 -0400
Received: from mail-vk1-f175.google.com ([209.85.221.175]:43950)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxNK-000695-Pm
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:35:15 -0400
Received: by mail-vk1-f175.google.com with SMTP id bi49so23733vkb.10
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:35:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=DYuUWqfIt3wQ3oTQUzDWYdKlcInLM+iDvXPptcPcTjc=;
 b=N/YH+iMZCm/a0voWLjDeFRD5yLQ6xd6tZfvD/LwR2u/NO1vNcjJElM+U7FsbhJ+ikf
 mnBnNH1MakMJ/j030LB3gg/C6Dde0/99IIH2yOA0F7k8dvKxwpnCehAJEICgtK52lFgG
 m/KQ66Zwv8pbc8cliY9eRP+JPenbbccINafryBVaLdSZPU4RtXbe1VOXGNiTLVJ9/ILW
 g+5wRjPUgXtln6hX+88yhtNFYCBa0pTfxp7T67Xblvm5y84VtQsrCGFquasxAlGGQFG9
 N5xYZICGWV67Hv/DIvQN53Bh1qIOJ14xvIbGwK26OgKXVYQLErDsPxb+nxqs4ixzUIQO
 c9KA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=DYuUWqfIt3wQ3oTQUzDWYdKlcInLM+iDvXPptcPcTjc=;
 b=WqNN1fNhN1YjC2snYhkqb85yFTF6PVT8LBt8VsCbdEkjlIZg6zfk8Gqk20egtg9p++
 1AokFw/C6EAkGAja867x9/E6NQHmDdmI7wYteaKGJQKDveKGj21O3eHluzv05rrkaqaI
 5TNnHnksmwcHBiX5wTigw1Y90NBgdosqNVyzNK606Lq+C84BQMN5DH7cf+J0rELuud3p
 TIHjvRrxzlGCb4HKilrJBNnKOmY7jdxpRtlMhxi5cmSaEjLO+7xc+JrWDQiWT4Mo/LUz
 sIocnTksjjIxDJsV+Ac48/r86rcjKB/rSj9THjxyjmKztSNkr8bIRmuTuIOCPWygTaJ6
 I//A==
X-Gm-Message-State: AOAM532/gi12mD5QrxZPkzlOjA1N+QC9meYk9AdWD7JgMGtR+iBl2w9L
 uZdLba9rCUQKSTSTWdUN663RvkPcoaylOz4X
X-Google-Smtp-Source: ABdhPJw73yWUgP6p2HgqpB0VTkTF3AFc3OmQvrtTkp/MlR+FMLhYUJbsyEaa3EzLkRLbsJiNkiRGJA==
X-Received: by 2002:a1f:1ccd:0:b0:349:439a:5c51 with SMTP id
 c196-20020a1f1ccd000000b00349439a5c51mr4678099vkc.2.1650411309124; 
 Tue, 19 Apr 2022 16:35:09 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 q16-20020a056122003000b00348d87e1a40sm177338vkd.22.2022.04.19.16.35.07
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:35:07 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 30/30] gnu: Add elm-terezka-elm-charts.
Date: Tue, 19 Apr 2022 19:32:14 -0400
Message-Id: <20220419233214.275789-30-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-terezka-elm-charts): New variable.
---
 gnu/packages/elm.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 186af9d768..1e9cbd4a30 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -777,3 +777,36 @@ (define-public elm-terezka-intervals
 hit whole days, weeks, and months or hours, minutes, and seconds.")
     (license license:bsd-3)
     (properties '((upstream-name . "terezka/intervals")))))
+
+(define-public elm-terezka-elm-charts
+  (package
+    (name "elm-terezka-elm-charts")
+    (version "3.0.0") ;; NOTE! Tags like 5.1.0 are from an OLDER version
+    (source
+     (elm-package-origin
+      "terezka/elm-charts"
+      version
+      (base32 "17syq73jwldc7fk7snm5k8s85nsvxyprb34rs1rwjsapc1vii7hc")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-terezka-intervals
+           elm-ryannhg-date-format
+           elm-time
+           elm-svg
+           elm-json
+           elm-html
+           elm-core
+           elm-debois-elm-dom))
+    (home-page
+     "https://elm-charts.org")
+    (synopsis "SVG chart components in Elm")
+    (description
+     "Make SVG charts in all Elm.  The package can draw charts at a variety of
+different levels of customization, from basic charts with standard features to
+very custom styles.  The library also allows including your very own SVG
+elements while still easily utilizing the coordinate system calculated from
+your data, as well as editing the SVGs made by the package.  It has great
+support for interactivity, layering different charts, and adding irregular
+details.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "terezka/elm-charts")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:35:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:35:12 2022
Received: from localhost ([127.0.0.1]:44536 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxNH-00069F-Q6
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:35:12 -0400
Received: from mail-vk1-f175.google.com ([209.85.221.175]:44717)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxNF-00067j-GJ
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:35:09 -0400
Received: by mail-vk1-f175.google.com with SMTP id o132so22395vko.11
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:35:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=gQTW1u2lRQQYG1x6kKwsYQ2tDQcxDcyGfO2W/eG5Igc=;
 b=bVCcDcDCz83wk4eMsoWs7xUJiJBSFRHxjrHGWVsvSa/wWr8a1q6+PtDcQpCQGz0T3v
 dCZ5lzwJtbVticy2am+9ayhs+cgc2vPCXnyOYrvN5mtV/5jRt0bTsJaaUNI8ucW1PgS/
 /d52HBWc1XTlAYdaJuTRxVx3PqE+9z0h7sGUovHmVVS+S8lLZdYFny6VxFSnSqt5uR19
 Dw99cbsXK+O3BF5bYqrKMpVHfhGJRvnINrdi/R2Z3nBsqilS/CSPuOLAzQcxB9ZRgIH4
 JeitXdmmPOiVkBaojrWbTE7DZhnLxncSvFKWNv8D7ZFy1yud8CvPUGiAetHMwKB3YdTS
 j2TA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=gQTW1u2lRQQYG1x6kKwsYQ2tDQcxDcyGfO2W/eG5Igc=;
 b=gUDS26/9t/yTjR+eeUfQMtrG7N3FXSrXlC4+mSe0rBVrMEHeg2LsOaPvhTnEefvdpT
 GZiG9PJDjxfH7dpXl7n1S0iHMoVILcSodt6SPfknN5BpKX7vhEgCgOeqfv2kEd1R6JQt
 Z3tv3qmQS6g5IYpVjLbpYrskXMH62952sKMtGGhfIOkYu+xfGdb9+odWwnkhitDONNMv
 mMVi+fDZhatTMlZx9kepJyOROy+vsgi6gEbbwGFrFi4LstsiuOejU6XUonUl831BQImU
 mI/WcqWkvTXfcwUv7KMtf3vMhx8V3/wwLMAspwKQXkT9xX/a8TZILQaJmguWh9U7ZfzV
 fHxA==
X-Gm-Message-State: AOAM530KWTFWLcGegEPvsrzxZq7eU5dyZTxDJcRcBeZaBFIkY0c2TtoI
 66UPbvDAtahPQ3ZNLEbtXm24clZhVMkqqJ/o
X-Google-Smtp-Source: ABdhPJxwJaFiFF/BzOD1XspKcMupJcbzN4I++dTkfcXwRU+I4zQz0miWNbnlGbzV0UMcDZQR2aCpjw==
X-Received: by 2002:a1f:1ccd:0:b0:349:439a:5c51 with SMTP id
 c196-20020a1f1ccd000000b00349439a5c51mr4678009vkc.2.1650411303978; 
 Tue, 19 Apr 2022 16:35:03 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 s21-20020ab03735000000b0035d2d4bb0b6sm179387uag.2.2022.04.19.16.35.03
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:35:03 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 29/30] gnu: Add elm-terezka-intervals.
Date: Tue, 19 Apr 2022 19:32:13 -0400
Message-Id: <20220419233214.275789-29-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-terezka-intervals): New variable.
---
 gnu/packages/elm.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 4f1b093165..186af9d768 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -745,3 +745,35 @@ (define-public elm-ryannhg-date-format
 at compile time.")
     (license license:bsd-3)
     (properties '((upstream-name . "ryannhg/date-format")))))
+
+(define-public elm-terezka-intervals
+  (package
+    (name "elm-terezka-intervals")
+    (version "2.0.1")
+    (source
+     (elm-package-origin
+      "terezka/intervals"
+      version
+      (base32 "0h3im58sa6awyppch1v8ppcrzwc5h48yn45crx98m8zs4isx91lj")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-ryannhg-date-format
+           elm-myrho-elm-round
+           elm-justinmimbs-time-extra
+           elm-time
+           elm-svg
+           elm-json
+           elm-html
+           elm-core
+           elm-danhandrea-elm-time-extra))
+    (inputs (list elm-explorations-test))
+    (home-page "https://package.elm-lang.org/packages/terezka/intervals/2.0.1")
+    (synopsis "Produce nice intervals for Elm charts")
+    (description
+     "This package provides an Elm library for producing nice intervals for
+charts.  It's useful in combination with @code{terezka/elm-charts}.  When I
+say ``nice'', I just mean that I try to calculate intervals which begin with
+10, 5, 3, 2, or 1 (adjusted to magnitude, of course!).  For dates, I try to
+hit whole days, weeks, and months or hours, minutes, and seconds.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "terezka/intervals")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:35:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:35:06 2022
Received: from localhost ([127.0.0.1]:44528 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxNC-00068I-9p
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:35:06 -0400
Received: from mail-vs1-f49.google.com ([209.85.217.49]:41652)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxNB-00066h-0U
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:35:05 -0400
Received: by mail-vs1-f49.google.com with SMTP id t202so36872vst.8
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:35:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=HRfBr0vh+OGJTX/O8kWhZPcsbABgmHqgfI6PGmNsil0=;
 b=Zy98Z8JEKnUwmZfnUKLKKkloXgCT2htZDJOdc0EnP540VjeG+EyHnflAqyjlAw0KjL
 Wb3Nrnf5h7yyEHzj16/Or4WjXhPrnwlCO73VKLhDXkG6EfyKAdNu/0u+PMk2/u0/VaoG
 1Za6FOuGGdcTnN0KItidP3IHwy/bI3PEb8Pgtrd5Q/roDTstoV4wJFFaQov05otpiOPb
 1AhmjYaD/uLmMMMmDsHjM/4piN67M+Id+mYZ3Vy6RjFzx+sAVMHge25IihE0YOL24IBb
 E5hoT0D9TbpqLVc+FZbLHLEH3A+HwnncFnSwE2om19b8FgTmNHS1Dv+rTMkHQQ8A3shc
 M/bg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=HRfBr0vh+OGJTX/O8kWhZPcsbABgmHqgfI6PGmNsil0=;
 b=B6YWYX56e3V5qj6QyWC/BjWkr13zz0KxKsPvNCltSVL+Pe5LcIBO+N6frRWWLyxmBU
 0p4wIxwcTxPhIuSOC2RDwpRKNQ/2hBoxYZLkPx2OCDMxp9DMFIpeZNUWryDippsa9M/a
 2w5jyRQ2ZIjJgIW1pCDVlPrG0ZkkaTP8s0Kkngaq9xG34iYkLNyWX1PeQVXUmzDKzKRo
 HY7MLe7ZG1PEnoYh8ktz1HWJudWYj6cgHNEwlD0I1bOLWuoW9qIOY12WBukdpVaw89Yp
 qGIYKaC2JS/gjjN1fF+Jk8sdKdpu0UhicAWU+RheMJJyn6e4ViBI8DFp5HC/2f021zrN
 jjKA==
X-Gm-Message-State: AOAM532xhrXM3IZOa0XJD7nWH/tximU5u1d7BFQvBGT/aPMIuxDMrHSf
 zUc88vQiqBQtdyiOPYNe9rHe8FjUO5tFHPpT
X-Google-Smtp-Source: ABdhPJxW8YFcwXsVN1tW6jvmFiQYbmi/hAdT18rAVk4rj5bL/DET84KEU9XdbRwjeaOWJga89ZUU+g==
X-Received: by 2002:a05:6102:219:b0:32a:1b2f:395b with SMTP id
 z25-20020a056102021900b0032a1b2f395bmr5399171vsp.36.1650411299472; 
 Tue, 19 Apr 2022 16:34:59 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 z1-20020ab02241000000b0035d3ea88e1bsm179142uan.23.2022.04.19.16.34.58
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:58 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 28/30] gnu: Add elm-ryannhg-date-format.
Date: Tue, 19 Apr 2022 19:32:12 -0400
Message-Id: <20220419233214.275789-28-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-ryannhg-date-format): New variable.
---
 gnu/packages/elm.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index cdbc7e14a5..4f1b093165 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -722,3 +722,26 @@ (define-public elm-myrho-elm-round
 way (i.e. half up) or the @dfn{commerical} way (ie. half away from zero).")
     (license license:bsd-3)
     (properties '((upstream-name . "myrho/elm-round")))))
+
+(define-public elm-ryannhg-date-format
+  (package
+    (name "elm-ryannhg-date-format")
+    (version "2.3.0")
+    (source
+     (elm-package-origin
+      "ryannhg/date-format"
+      version
+      (base32 "0razh6im5qwmla10knk67j8w11mqlqlyfnclykbfl06kaksfm3sp")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-time elm-core))
+    (inputs (list elm-explorations-test))
+    (home-page
+     "https://package.elm-lang.org/packages/ryannhg/date-format/2.3.0")
+    (synopsis "Reliable advanced dates formatting for Elm")
+    (description
+     "This package provides Elm programs with reliable, powerful tools for
+formatting dates and times.  It uses Elm's type system instead of format
+strings, which makes formatting code more readable and can catch some errors
+at compile time.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "ryannhg/date-format")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:35:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:35:02 2022
Received: from localhost ([127.0.0.1]:44517 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxN7-000674-TF
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:35:02 -0400
Received: from mail-vk1-f170.google.com ([209.85.221.170]:43938)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxN6-00066Q-Mt
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:35:00 -0400
Received: by mail-vk1-f170.google.com with SMTP id bi49so23557vkb.10
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:35:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=MDwb7QRZUuL8DPo4/pe3EpqaYBf0Q6NsnuvUKmeqE4A=;
 b=Ba/y0i7VCI0E8wKBrSHtzPLF4pGFJM9Q5bG1iW8eyLh5XJJDNaHDP15O0SvWljAs8/
 ku/IJEUeO+jfYJN4rRRubRB8aJ60Alyw7giJICW60sYtRnfI/if3GkDN2vst99F2/C6Z
 e6z3YzFT0LlElidHaKLuHkLYWPf9bomdCpWNFN+VvKnWSfZbh1Qb50g3m/FbRYl+n6rs
 ilTLDRqMIvA/pSUMzVdpBMZfV+0e7FpMbThPVF7EDW6lK6gwpolg5rOs3dFOETzaSACK
 FRpRKUFnQa8AJbALD6y/MlsLENfiAtwQoTKnYjVBBkvT95OnPlA2zH9yr0jUGCRW1F7s
 Jcig==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=MDwb7QRZUuL8DPo4/pe3EpqaYBf0Q6NsnuvUKmeqE4A=;
 b=Lw0BU2ObMDRAo/eKcPpuFSnGbJxVxh8FJHD1VNuWh95TaDkidNQrXO0RZYE4LTluGr
 i0lhaT0r2mRzrLV9vhPP8VIuuCbJxbqLzJJ1LxCXno2jBt/jpZQZNvbyG5HTC5Su3gBh
 Fnu70H6DuMQurMs/T85IxXNWOWymiFZU6M72WZeQJ2FrouyLEXyrXN8dfyriAsw31GGX
 ei6mOE10ApA39hV5sOp9RRb+1SfPZw8FKnY63nQiuDyi2lOwBA1HUKu7u8wL4J3c46S9
 BUzLvRYWKR2j8tZQ6LwT6yvtwoSP/vfq9knFNKkBr4PUPDPcv0gnVWbiUq1l6Kr7oUCA
 iT1w==
X-Gm-Message-State: AOAM53013ua+/l6he+VxLQylOLGNNTQOdSmpKqyOFgjeH2+94nctsTlY
 gZ7dBhFOGunxrRx+sxU1/Ye0HALTA1oKqhnt
X-Google-Smtp-Source: ABdhPJyqWITYDrZ2k0Y6iHm0GdOJb8xoKuM9FcvzY71m8vL8jl/3z0TmeFsfPkbp5+Tu7iu+0ow6/A==
X-Received: by 2002:a1f:9dca:0:b0:349:6bb2:1c1a with SMTP id
 g193-20020a1f9dca000000b003496bb21c1amr4095701vke.1.1650411294936; 
 Tue, 19 Apr 2022 16:34:54 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 l20-20020ab07194000000b0035d2b6f3616sm177327uao.3.2022.04.19.16.34.53
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:54 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 27/30] gnu: Add elm-myrho-elm-round.
Date: Tue, 19 Apr 2022 19:32:11 -0400
Message-Id: <20220419233214.275789-27-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-myrho-elm-round): New variable.
---
 gnu/packages/elm.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 8992112e13..cdbc7e14a5 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -700,3 +700,25 @@ (define-public elm-justinmimbs-time-extra
 times from @code{elm/time}.")
     (license license:bsd-3)
     (properties '((upstream-name . "justinmimbs/time-extra")))))
+
+(define-public elm-myrho-elm-round
+  (package
+    (name "elm-myrho-elm-round")
+    (version "1.0.4")
+    (source
+     (elm-package-origin
+      "myrho/elm-round"
+      version
+      (base32 "0y3j43wr815cvwz5310zalnqzpg3hw8h127zjjlf6x8ynapc2mdb")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (inputs (list elm-explorations-test))
+    (home-page "https://package.elm-lang.org/packages/myrho/elm-round/1.0.4")
+    (synopsis "Flexible rounding of Elm @code{Float}s")
+    (description
+     "This library converts a @code{Float} to a @code{String} with ultimate
+control how many digits after the decimal point are shown and how the
+remaining digits are rounded.  It rounds, floors and ceils the @dfn{common}
+way (i.e. half up) or the @dfn{commerical} way (ie. half away from zero).")
+    (license license:bsd-3)
+    (properties '((upstream-name . "myrho/elm-round")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:57 2022
Received: from localhost ([127.0.0.1]:44513 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxN3-00066Y-Jf
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:57 -0400
Received: from mail-ua1-f48.google.com ([209.85.222.48]:36784)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxN1-000660-VQ
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:56 -0400
Received: by mail-ua1-f48.google.com with SMTP id w21so22456uan.3
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=n+IiwxvRKEFBSeHBijL1oRnvBvQyrfc0MattVRFy2Jc=;
 b=ahoIUgieuppL9TgituzaFn6loq9G55AL4gGh535/VFcTu6MDp5DpjCWhrTko64cfU0
 vnOFDuqodKdK3ulYcNRGJ37TYwf+1ejnldVM6cqRYV5sSgRQYtidHB6Bd1ydW7wFZWvH
 NsV/OJPG9kuAboyH4h6OXmf1IGX3NSWcml39E07gR07MET9jruUeXLKYDf/MCr3anWzH
 XaQPv8dZAPBN2e23Ye5r3PpzaGfQ9m4qhnA7w1delyRVcPBB+gfiWnbawos+WMVn4HHF
 8i4PIhG2WCnFQqp01rsaRr57MJ6etj+rfI086tVTQPzBVXvGAUuIfjYiV6sLRFf43w4D
 X43Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=n+IiwxvRKEFBSeHBijL1oRnvBvQyrfc0MattVRFy2Jc=;
 b=r4dapL8oFcXyUvK/Fps2WulW7POTKowOoznr4+1C2Jcfm1Pzs7lNwisiFZhWzNpAsA
 wfXTgLnXH4wYLBlBwFcWwvHcQl1knjkdu+LXYKl8ymzqz2YPtBPAj+kTtZtwngbuYrx4
 MhTjiSErq6XkPY9BqaHabMa7W162rJ5Zx3hH9xZe5HVpntLUnGnoItoikL2vk73Jp39g
 vbWnYG4Bpmioh6BxpE5R9wo2gtxnw6WcdCdYmRsI/wRohyBl7edkZ316lmzlvJOy1EyN
 5MJvWAs+HjqyZKk6Emvr5H24QNwyt/hfCJDq46cTF7fiBpxlt4M4JoIooD2MKuBeN15Y
 +rlA==
X-Gm-Message-State: AOAM531cPhTMpVrTYoEQMRpZVzhKlVKEu0sge+XwC++ANerSnLozR81C
 NTqhS0oMCsAvEh5Jn9GYgzJ5AH1IwoqTEgFq
X-Google-Smtp-Source: ABdhPJw/bNbGy9lZiVuuuNMwblrt+GK4F/HTp0/8WK7Alv7iLQbVOcsT4BCR8xYFlat8jIOv57M0aw==
X-Received: by 2002:ab0:654b:0:b0:35d:2f7c:d362 with SMTP id
 x11-20020ab0654b000000b0035d2f7cd362mr4782459uap.69.1650411290335; 
 Tue, 19 Apr 2022 16:34:50 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 k14-20020a67c28e000000b0032a1f619ca4sm185110vsj.2.2022.04.19.16.34.49
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:49 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 26/30] gnu: Add elm-justinmimbs-time-extra.
Date: Tue, 19 Apr 2022 19:32:10 -0400
Message-Id: <20220419233214.275789-26-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-justinmimbs-time-extra): New variable.
---
 gnu/packages/elm.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 9f8d74f695..8992112e13 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -677,3 +677,26 @@ (define-public elm-justinmimbs-date
 dates without times or zones.")
     (license license:bsd-3)
     (properties '((upstream-name . "justinmimbs/date")))))
+
+(define-public elm-justinmimbs-time-extra
+  (package
+    (name "elm-justinmimbs-time-extra")
+    (version "1.1.1")
+    (source
+     (elm-package-origin
+      "justinmimbs/time-extra"
+      version
+      (base32 "1gmgvzlpzkysvm86d0md75ply10pz28bg699m4763frss0jvrngh")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-justinmimbs-date
+           elm-time
+           elm-core))
+    (home-page
+     "https://package.elm-lang.org/packages/justinmimbs/time-extra/1.1.1")
+    (synopsis "Extra functions for POSIX times in Elm")
+    (description
+     "This package provides extra functions for working with @code{Posix}
+times from @code{elm/time}.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "justinmimbs/time-extra")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:52 2022
Received: from localhost ([127.0.0.1]:44510 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMy-000668-Bo
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:52 -0400
Received: from mail-vk1-f175.google.com ([209.85.221.175]:38801)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMx-00065i-5t
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:51 -0400
Received: by mail-vk1-f175.google.com with SMTP id i27so31373vkr.5
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=LBj/ZI59WRYDFDwjqtek2yCy+ZL3BCNKD/GxXf+FZws=;
 b=VSLtVVWnV4TGap2ag0424kTfQxS5mamcN/4jPUiDlWzwwYMUi9omWq078X608SZ3LO
 B+dr8oalZecGDHqtUZcaFkGfdmDR3iPOZ1zmGqlgNaQVRkQFeWObH2MHD8o0c7PwfE7p
 kSfeE2dPjyb+W1Joabag/gPhs4WaL+DIzlHPnxgQs5GnV3PhozdSUbaYHy4YZzapstlH
 nv9aOvDEMzq3ER4ocKnckBk6z2gL2VfY9zRzHJDTIr9wZF10S0BJE/Y2AlKMp3aVObL7
 p2LGNJlI7IgRQ1zq0pcpeKajRcdAhu4B0sZ5wpwz69wkP55lbmRdmmxTto6etbX+1osR
 gIjg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=LBj/ZI59WRYDFDwjqtek2yCy+ZL3BCNKD/GxXf+FZws=;
 b=35bzszt+5Y5NcgNhRnoBYaSaKTdwwDNCMUq+EXcD/upEflFpuF/xUo9S+QjYuPd1o+
 a181op6Cy7xc6QZv5jaJNepeWurJPU2ZVWj8wWQe/gUcCiAlE6HQgyHda8KGqe6X6JeD
 huY2/Op9sk7faBd+m6s5wAXnadoFd3rrvc+FTAqRVem7JkDeJSnQ71D+GSF+EgftAbgn
 1It0/qlBccFuI5F+MJxLjbS1YI1AklcHHPwOETcck3g4IPBCUKy5UU9Qho4iyvDgdN/Q
 kL1cnSEZa0qm8s+pFfrwxyR+Efx70pG3f63IIdCMVNhSeu97yHuSb+6taHeMjSVGuGYq
 aGjw==
X-Gm-Message-State: AOAM530WRRGRTFWOqiPLh9B38DYsgrRjFEYrZt9BYUV+qNWZlY+47/LZ
 oxYiUA9NEIuBtUZDNHC80ylPdn5zCa4zjMbb
X-Google-Smtp-Source: ABdhPJzhDCaHRnMfmUUANYd81tjJYiH1cICxHR3pcdAHuFGPUbweFr7Xa0hYw6rGN86YFgTpis5nxA==
X-Received: by 2002:a1f:2d56:0:b0:339:578b:471d with SMTP id
 t83-20020a1f2d56000000b00339578b471dmr5304606vkt.7.1650411285723; 
 Tue, 19 Apr 2022 16:34:45 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 v13-20020ab0678d000000b0035ce198a740sm176378uar.5.2022.04.19.16.34.44
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:45 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 25/30] gnu: Add elm-justinmimbs-date.
Date: Tue, 19 Apr 2022 19:32:09 -0400
Message-Id: <20220419233214.275789-25-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-justinmimbs-date): New variable.
---
 gnu/packages/elm.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 9e398403e4..9f8d74f695 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -655,3 +655,25 @@ (define-public elm-danhandrea-elm-time-extra
 for working with POSIX times.")
     (license license:bsd-3)
     (properties '((upstream-name . "danhandrea/elm-time-extra")))))
+
+(define-public elm-justinmimbs-date
+  (package
+    (name "elm-justinmimbs-date")
+    (version "4.0.1")
+    (source
+     (elm-package-origin
+      "justinmimbs/date"
+      version
+      (base32 "13mf97137f0yb3gx1mxbya2y70qciah4hp5bcnpj8166vgzb7l3l")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-time
+           elm-parser
+           elm-core))
+    (home-page "https://package.elm-lang.org/packages/justinmimbs/date/4.0.1")
+    (synopsis "Work with dates without times or zones in Elm")
+    (description
+     "This Elm package provides a simple @code{Date} type for working with
+dates without times or zones.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "justinmimbs/date")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:48 2022
Received: from localhost ([127.0.0.1]:44507 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMu-00065q-0J
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:48 -0400
Received: from mail-vk1-f174.google.com ([209.85.221.174]:34318)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMs-00065E-In
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:46 -0400
Received: by mail-vk1-f174.google.com with SMTP id b81so39203vkf.1
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=cU36scn4yxxu+A7Pg5nR8rXWHOGWxzgIv8OYUBJtRpk=;
 b=HsbJEe/9y+ISQsdtzAnGmlxfYFvvm9/HceCyzpJiiKRhykNc8GB22e8wO9QGCPlHPY
 cpj5GsbsTVGn5fLBH6Fd7cSmathwGHd3KGwLD4VyXwnVRGdwI8TBLt9RvC/Oye0pjQdW
 VSjh2aEaQhowVh9cYeJNltNfW8pEyuV45x++Qk/L3w6MW1BU20fb1GuBRuACq4IKDQlS
 hga1jFa9Zz0JgZBnuPQnAT22BiKftpb8ij0HAwF6AIcwDV3n11G1v+8U5EkxB8759bw9
 tRNOJwXLraB/1g2XcQ6ll5Ur4zv3eFDbpDzY1ukQ6u8COWphJv45SZiAbFw/Ot4oiCi/
 j7AQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=cU36scn4yxxu+A7Pg5nR8rXWHOGWxzgIv8OYUBJtRpk=;
 b=8MPePc8EClWp4YBVAGIRpwe8WWipPXgayD48q9aJ5j/w2Zz7foiG5Naqcqsp5VNIFM
 7eFagG9tscIYEWr4f5H6yZgMOoVJfvuMiEx7rZpweYYU9Cb3zf5lGpmg8dUwoPw2sz3b
 6pnU8IX3/+epVcxvFQ73lzCQkvMOiCBXMcwbK35Mb+GuJ8SgptDKE3NkQmziVR3stjQy
 es0bUx5w0amHilHZeXt12NS1HNPb1sOspbcXq01UFKlMrvNrWEEBcJ3U6c9rvmzIX/fg
 /owkdgsysMKArBNs0P5zuE/nxGT+0JYkZO5wIPzDk9QmRz9bMFTPxN6Dmio/9wPhLA1W
 D3xQ==
X-Gm-Message-State: AOAM531hlzlclRysY1fMZNG+xaZhF3Xrtp2mbrqhHU0jU1rm5bjoX8tM
 sxjb7IbWFMD+4STznOjbHZ424LxVHvym8WXh
X-Google-Smtp-Source: ABdhPJxykoZlglDYLYpRkh2IahAsvzBgwbyZqQT2VBonfkYu/ofBGKY3LHRpEi32Sw8JZxywW0szaA==
X-Received: by 2002:a1f:2bcf:0:b0:345:74f7:e41a with SMTP id
 r198-20020a1f2bcf000000b0034574f7e41amr5354382vkr.36.1650411281097; 
 Tue, 19 Apr 2022 16:34:41 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 o11-20020ab0150b000000b0035ccb91e501sm171033uae.36.2022.04.19.16.34.40
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:40 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 24/30] gnu: Add elm-danhandrea-elm-time-extra.
Date: Tue, 19 Apr 2022 19:32:08 -0400
Message-Id: <20220419233214.275789-24-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-danhandrea-elm-time-extra): New variable.
---
 gnu/packages/elm.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index d21feef89e..9e398403e4 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -633,3 +633,25 @@ (define-public elm-danhandrea-elm-date-format
 format strings and internationalization of dates.")
     (license license:bsd-3)
     (properties '((upstream-name . "danhandrea/elm-date-format")))))
+
+(define-public elm-danhandrea-elm-time-extra
+  (package
+    (name "elm-danhandrea-elm-time-extra")
+    (version "1.1.0")
+    (source
+     (elm-package-origin
+      "danhandrea/elm-time-extra"
+      version
+      (base32 "0z13q8x148d5amcc89f846yzql89n9gyan8fr48y91dhhn7vxibf")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-time elm-core))
+    (inputs
+     (list elm-explorations-test
+           elm-danhandrea-elm-date-format))
+    (home-page
+     "https://package.elm-lang.org/packages/danhandrea/elm-time-extra/1.1.0")
+    (synopsis "Extra utilities for POSIX time in Elm")
+    (description "This package enhances @code{elm/time} with extra utilities
+for working with POSIX times.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "danhandrea/elm-time-extra")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:44 2022
Received: from localhost ([127.0.0.1]:44504 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMp-00065Z-NV
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:43 -0400
Received: from mail-vs1-f45.google.com ([209.85.217.45]:39668)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMo-000652-FF
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:42 -0400
Received: by mail-vs1-f45.google.com with SMTP id i34so42480vsv.6
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=Koss1u+NC9gZR3V419oxsrhy8ODCJ9iE/6SmdISU5Dg=;
 b=Soxf3FHy+dHqewaXtwEE5H95utbg2BcBrgGy3J6jjkCiazif4BDrG6RD45CGtJ/A18
 lxulkpGOwWp9pNh2Oa3HqOhyA13s0+gz2sDjQEkLLxoSFo20Bv4AO6VIUo+sbHgoSf7U
 DxG8hOTkaa3KKnEmZR9k1AEP35vHQTFRTtL0OPt1XGqrEO9H3wk8THuKu44TR9/w0LUI
 9rA0MO1FqdEP8WQn9drx00C6p/4gSpre+JZvlERSjq3YJmgZfmCCLP8Z3DSRULSHsd3L
 EDvemPGQPH8JVzN1XliTkphJPwOJB1mBUduboYsxYjaStPomU3n9J1q4o5QOc3r/cZ9o
 FBqQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=Koss1u+NC9gZR3V419oxsrhy8ODCJ9iE/6SmdISU5Dg=;
 b=dj2ii8Q3bt4bqhLgenwhXPoAoqT5uoEUMndbmTGiAaV4B8D/6j75iIXiaPN4MZ+Hes
 Wtkavl9mdXZ46GNPcrUmH7/kWnItaqfDE/T8ZQVt9MDJ1iKsNF7eC2wDF2HLNDyovLIf
 mIoxEGALpD5M+s8rus+j6J7pzh/kvx+XbuvY2HK79rdwK75khkcQ3UBpWgKy6YYuXz77
 jvGU1vT0GDEfM6Vqy5G3RfrZ/67dxqqlWRVS3QPOjyyOVs8QTWPVkSucFqYbtWXTbQc3
 y/fTKMF6sZzedNob2N9D5gLZ0uTbh7U08/FdDerpxKNvj2NAAhulwpvylFfaH4qO1qMX
 KmSw==
X-Gm-Message-State: AOAM530TG7+RHb6b2X4A2yzgJOvEMvv1ZmMVPs6nM5H5DfDwmcATIonR
 vG2EIfdYOAS8jX2Pn8pGRCTM6+T+jzk770hR
X-Google-Smtp-Source: ABdhPJwdF1zrvBcXmxr+X+cJ2gg8mZhTHtBdSJ3MDhtVU7gX4oFmmYm7lixmOU7xQQ7ppxpXBl9uaQ==
X-Received: by 2002:a67:e3a5:0:b0:32a:31a6:8257 with SMTP id
 j5-20020a67e3a5000000b0032a31a68257mr5416269vsm.62.1650411276932; 
 Tue, 19 Apr 2022 16:34:36 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 f11-20020a67d88b000000b0032a2667dd74sm182814vsj.9.2022.04.19.16.34.36
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:36 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 23/30] gnu: Add elm-danhandrea-elm-date-format.
Date: Tue, 19 Apr 2022 19:32:07 -0400
Message-Id: <20220419233214.275789-23-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-danhandrea-elm-date-format): New variable.
---
 gnu/packages/elm.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 3498516b82..d21feef89e 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -613,3 +613,23 @@ (define-public elm-explorations-test
 packaged for Guix.")
     (license license:bsd-3)
     (properties '((upstream-name . "elm-explorations/test")))))
+
+(define-public elm-danhandrea-elm-date-format
+  (package
+    (name "elm-danhandrea-elm-date-format")
+    (version "2.0.1")
+    (source
+     (elm-package-origin
+      "danhandrea/elm-date-format"
+      version
+      (base32 "03mglzyywij5sm56m7q2jhhbsv7f9rdirgwmq0q41ghir81bzpv6")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-time elm-core))
+    (inputs (list elm-explorations-test))
+    (home-page
+     "https://package.elm-lang.org/packages/danhandrea/elm-date-format/2.0.1")
+    (synopsis "Date formatting for Elm")
+    (description "This package enhances @code{elm/time} with support for
+format strings and internationalization of dates.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "danhandrea/elm-date-format")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:42 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:42 2022
Received: from localhost ([127.0.0.1]:44501 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMo-00065H-D7
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:42 -0400
Received: from mail-vk1-f179.google.com ([209.85.221.179]:38797)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMj-00064r-R0
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:38 -0400
Received: by mail-vk1-f179.google.com with SMTP id i27so31225vkr.5
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=BuvgLpCbGRZnhuRZ4ogRWE1faI2zH+CObARsV/rAoFM=;
 b=h97uYe35Aos31MXTORmkz+mrgKTekTh4tseGpDrBQT5SKAvo76GZtGtCa+gVCmIAqT
 p8r2pNmw4bcOkeR7vPugecfzb8urY4UmptWPXoIff58D80ijjpGmIyJJFl9WTFmEp+9B
 Fh7YaF5FOCxgpinS28T/9JJpkGo8Sxv/lGfw4gfr0oAdB3F92+0rDzOFblZFNQG8s5+a
 a7Cc8aJAMqAZYjypqwv32+AbcMc1dUAN64EbJM1zFRIaGmxhMLTUCkzWDn5CA2T/J20T
 xuscpTdnO8oZ2pEdm3Z8u28DXHrldriKyzMYZkYzXtmyZFpRsmGNBcdrHKAGTxQe1ClF
 sq0g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=BuvgLpCbGRZnhuRZ4ogRWE1faI2zH+CObARsV/rAoFM=;
 b=qtMHhn+Tq/xSvTeEebSFa1fAVvqaPAWShuUflvcMeoqpDFFYQfYxLawfVF+/2GeZpK
 eNSRp5yc+RbRFe+P+mu+vgmzCOcVzkHWhglOO2sW4Hv8EXreENHcOCt1rCN7JuyTgVdM
 eptbgH/4PZvkMOAtn8UBQzLNR8JrF6O3t/97JkFyG/iRii1g2WeKX9+5z2rxFcpVdRQL
 8LurNLBbuvHFQO8Imev2eF2D4ahWjlAkvleaxV7EqGdOZYX4gIAsyZ5kSl4EMPuFkDJA
 O0isltRh+27JLcBGrUcOtjED7so3ihnps3afSg9BzSILaHXLtg1JD+4SkrFs1pQb4lgK
 E7bA==
X-Gm-Message-State: AOAM530YKAPN+bjHSLYZ7MAfCwMe9C0c9XGw9J48tLlviHa1bf4U2exf
 X5c2NPs2HtX3kce6ZnyNve4l70kUWHY2RcTX
X-Google-Smtp-Source: ABdhPJyY0Fov55QTuhXWgHahPmP1WSML1m5CHzWNoY5mbCfnkO1K23ZZ4oaJGkdMEzcBFoJA08KhFg==
X-Received: by 2002:a1f:300b:0:b0:349:7d46:3ca4 with SMTP id
 w11-20020a1f300b000000b003497d463ca4mr3966559vkw.10.1650411272260; 
 Tue, 19 Apr 2022 16:34:32 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 q187-20020a675cc4000000b0032a352f80dasm178832vsb.15.2022.04.19.16.34.31
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:31 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 22/30] gnu: Add elm-explorations-test.
Date: Tue, 19 Apr 2022 19:32:06 -0400
Message-Id: <20220419233214.275789-22-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-explorations-test): New variable.
---
 gnu/packages/elm.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 940c456e14..3498516b82 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -587,3 +587,29 @@ (define-public elm-random
 random positions in 3D space?  This is the package for you!")
     (license license:bsd-3)
     (properties '((upstream-name . "elm/random")))))
+
+(define-public elm-explorations-test
+  (package
+    (name "elm-explorations-test")
+    (version "1.2.2")
+    (source
+     (elm-package-origin
+      "elm-explorations/test"
+      version
+      (base32 "0kw32x0lr6nh5j9xk56vgg7x7c705g38grghh7cdp49frwdd6w3l")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-virtual-dom
+           elm-random
+           elm-json
+           elm-html
+           elm-core))
+    (home-page
+     "https://package.elm-lang.org/packages/elm-explorations/test/1.2.2")
+    (synopsis "Testing framework for Elm")
+    (description "This package enables writing unit and fuzz tests for Elm
+code.  To actually run the tests, you need the command-line tool from
+@url{https://github.com/rtfeldman/node-test-runner}, which has not yet been
+packaged for Guix.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm-explorations/test")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:42 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:42 2022
Received: from localhost ([127.0.0.1]:44498 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMh-000650-AO
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:42 -0400
Received: from mail-ua1-f52.google.com ([209.85.222.52]:45910)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMf-00064a-6r
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:33 -0400
Received: by mail-ua1-f52.google.com with SMTP id g22so10117uam.12
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=ha/uwVgJkQglvXT2chWOJbrg8lC3wvAexf4LRjkduOs=;
 b=UC68TfI0Kfy812rxoiWElXPR8DqUN0E1a58tl9BPnmv+/uqzL9+20DE51wpO8Xn5b9
 B3Ttiw5Ys1q7PRAd6TP4IjyNZABqSXGM7/ixrfIf2tnWSKSz4jPJDL7EjfPvvfQUko0l
 ludX++zkb99517v1SPw9CET3eXRLpNkIqxxSh9i6Zn1rl2eteAUgGdWzZhKeZUboqDIY
 WOGma8yED4pziCaUtEUUwKXuCVVt/zMiNYnbTNl7r4k/loA9w942qykTbu5/x3JUhdgW
 XBVhNDC2JG3AeH4XC6+tF4Pa9UOTWXbEOqCFjS1MWL61m7m8TAXFvYhAl1X9mEtU2m+G
 qhSg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=ha/uwVgJkQglvXT2chWOJbrg8lC3wvAexf4LRjkduOs=;
 b=kpia7CK0QBVYtVlp/JMPIyFin6d1feqWkqRApKWs8eV0XKZaCWcPm7bc42mZKivOVU
 wIo0KWUciPaR+yobC5Q16qg/lLwNuIQjwWWIichkSyA8UbPQOx6ptEJ+juQtuuZFeHE4
 uhnY7DCgJZ3+7FYAdwznHmOxhqmyXN651OxmyL1BJaRFpnC7ne/g8K6SI0fF0PyMSED5
 mV/+VycZFTxptOYIFZXNbf7bYbjAoH55xHipPJYhvh1mOc2Id2U2Ao5CeAY9PtJMa0vE
 cuWvFz/TbPDelraT/Z70KCbRLMCoYhuy9EYgmXMgOAsziWsfHcu5crdiALhyXKk5Rkk6
 bVAg==
X-Gm-Message-State: AOAM531ncxWVbIbNM2yW4BsJndAI5tkvVFTOzO+Set6BmMQLVKx+KM76
 DHGPBdNsRXLeFdxWiMrThwIkxIkb54FsbZd9
X-Google-Smtp-Source: ABdhPJz7qoEFMAJsbBFoo9jAcW0qZRd3f7P+5othlKGl8KKd9IwkYl2XuZwcA8vIw2K9zBrL8MRxTA==
X-Received: by 2002:ab0:5b4d:0:b0:35d:2f9c:f01 with SMTP id
 v13-20020ab05b4d000000b0035d2f9c0f01mr4878511uae.86.1650411267799; 
 Tue, 19 Apr 2022 16:34:27 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 s21-20020ab03735000000b0035d2d4bb0b6sm179166uag.2.2022.04.19.16.34.26
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:27 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 21/30] gnu: Add elm-random.
Date: Tue, 19 Apr 2022 19:32:05 -0400
Message-Id: <20220419233214.275789-21-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.3 (/)

* gnu/packages/elm.scm (elm-random): New variable.
---
 gnu/packages/elm.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 81fe54bf39..940c456e14 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -568,3 +568,22 @@ (define-public elm-debois-elm-dom
 of rendered elements.")
     (license license:asl2.0)
     (properties '((upstream-name . "debois/elm-dom")))))
+
+(define-public elm-random
+  (package
+    (name "elm-random")
+    (version "1.0.0")
+    (source
+     (elm-package-origin
+      "elm/random"
+      version
+      (base32 "0z0znkwfs35xiabk6pa9yqwsq03jssgd7jmsj1kk000mikfm7f39")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-time elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/random/1.0.0")
+    (synopsis "Generate random numbers and values in Elm")
+    (description
+     "Need to generate random numbers?  How about random game boards?  Or
+random positions in 3D space?  This is the package for you!")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/random")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:30 2022
Received: from localhost ([127.0.0.1]:44495 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMc-00064i-1Z
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:30 -0400
Received: from mail-vk1-f174.google.com ([209.85.221.174]:37717)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMa-00064I-9p
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:28 -0400
Received: by mail-vk1-f174.google.com with SMTP id r8so32434vkq.4
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:28 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=LOdf07Es4J2yM9EWkdpmVYgzb6BD5mCtH5louo/f3Z8=;
 b=cy00cplOW5Rhme/FVZCXc1IzTQ4aYL6whq2C0nchO36NEx78WHF0yB7UKEM+ShnMDb
 GNGsVSyxGfFWHoc4U2Ied5McD6a52bVNi8F7/DZAsZy17o02KX3jj3EWTXKmCCjySHTk
 1gAqiOtIgKaLaUvbKJBhNEjwb+S14lqq7MUP6yBaJr/go6l8TVIXfSXyYUx/bbKEKZN7
 Gv+ZHQS2GgdeBZhoAXDonT4n2AJm1jGmo8mlAAnlRLM9yCKOMDzBzfyLrLynd3ZkKyYk
 KuMGsaB6+Xzhn7DUxNV8hOtqFN3estuRraNKag9iOx/zCm0Ixz06d37NjKdX4/eWC+Qd
 ZMaA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=LOdf07Es4J2yM9EWkdpmVYgzb6BD5mCtH5louo/f3Z8=;
 b=AVJnv/XS2a/oBD5VWiKmwiYkvcNOL/WGT0ov0UMhTRdwqvrjYUAnFWPNXFHwGyL8rA
 0F2/oTn4YUfzM0fag4TUa+zy10+3zFeF/52XSSjLm5NSEfGL8c5kkfB9jmhy10qFgf6a
 7gWNDusQALxtnKm5D6tiuCQ12UaXDAjyrJ84NtRvXh/ZcZlWrkiLAxY7JXGdLNWQ6NNh
 qVywlU91xGWXhRVx9k4yiuMPLxxYAYsdUrAtuL2fQs5VZUkih2X3w9pyVI0jguN5iCEC
 bnly1mp5r942PPjZvYlhcTZrRyEppQQO4ik4eYSNVgf4ScM1Csz+8AKT4kPsORiNGJcq
 JxVQ==
X-Gm-Message-State: AOAM531ytlqZRT0rj11XKJd/53/tMjY1abu0Boe1hVtANpznHQr//79m
 nkUGL/QmDmsXwEv2w/QqELDP1OPKQH1VNDiU
X-Google-Smtp-Source: ABdhPJxhxu7zhT9qBTUrlszXbrtmGy8S4Ldwlafzrm1K0sasNGhF8Fb3g8tOOe2qi4u6Sw6mfmANNg==
X-Received: by 2002:a1f:1e45:0:b0:345:ad09:8ba0 with SMTP id
 e66-20020a1f1e45000000b00345ad098ba0mr5258534vke.12.1650411262909; 
 Tue, 19 Apr 2022 16:34:22 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 w8-20020a9f2c88000000b0035ca7402552sm170265uaj.30.2022.04.19.16.34.22
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:22 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 20/30] gnu: Add elm-debois-elm-dom.
Date: Tue, 19 Apr 2022 19:32:04 -0400
Message-Id: <20220419233214.275789-20-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-debois-elm-dom): New variable.
---
 gnu/packages/elm.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index e4cae693c4..81fe54bf39 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -547,3 +547,24 @@ (define-public elm-todomvc
 @url{https://todomvc.com,TodoMVC}, a simple to-do--list application used to
 compare front-end web frameworks.")
       (license license:bsd-3))))
+
+(define-public elm-debois-elm-dom
+  (package
+    (name "elm-debois-elm-dom")
+    (version "1.3.0")
+    (source
+     (elm-package-origin
+      "debois/elm-dom"
+      version
+      (base32 "0w4z4w6ip118lk5g80w6mbbfxhfmivbmdkdm6wsmk63x85gscmqx")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-json elm-html elm-core))
+    (home-page "https://package.elm-lang.org/packages/debois/elm-dom/1.3.0")
+    (synopsis "DOM traversal for Elm event-handlers")
+    (description
+     "This package provides a library for reading information off the DOM.
+Use this if you need to discover geometry information (width, position, etc.)
+of rendered elements.")
+    (license license:asl2.0)
+    (properties '((upstream-name . "debois/elm-dom")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:26 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:26 2022
Received: from localhost ([127.0.0.1]:44492 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMX-00064Q-OD
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:26 -0400
Received: from mail-vs1-f51.google.com ([209.85.217.51]:40771)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMW-000641-1C
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:24 -0400
Received: by mail-vs1-f51.google.com with SMTP id v133so38299vsv.7
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=YJ64RR9TLHTqL6doGQbhek0NeaRQ3MMYDT9kRH09Bdo=;
 b=dqMLrutdh2/t6OgeWeFeu67i1mifw445+gVYzHsEt3KwdfZrpB6ydhuZqQmmAU5m+e
 PpdNQSZ1wll9RqQc38/m5jecVe1k9GfimNOwXKO2CbUs+exA1FDElJWGStWsl8Mb9bPA
 wudpq0PgTbp68jEKyL0tO6FUrZz89AY5x2cI1DQpw6Jx13momWHUpUy3bhVdDnQfZAuf
 vKpJIZsMtHyPIgP0MUMnS96Ga1hsuO+eEuL8u1QqNFaFWcoN/rvwpfmd/dVhBWCskHRV
 BB94JgTJTRBWGRBCxmFkEKiBusBerSfVi3x8R189i4XV7ZbHIe9VpbpzTfmC17UDRy0n
 74Lg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=YJ64RR9TLHTqL6doGQbhek0NeaRQ3MMYDT9kRH09Bdo=;
 b=C2XP4HH8/i/FgPOdXlCqHZIxAPlF3ufMGAcQ7l6wfr4vkF66cCAnkUhtwzudnA5Pm2
 Zce0uK4VZD0SmLQdbwA7pikLW4sLKtE20q/bQiLdsYdBVY4y8axWfsntTLcomdxtbGXw
 AXDwp02+o45sotHiBld4cxuqhNuvLldVdJL8JB9dCt6Tf9zMjsp/XQg9J1FuvIMo+TqB
 24+9gjOeaDjjEwnaCsOmocrJtfbewKfhC8MnpDA7yjDLRhmRa3mvfSn1aAFCayk45bf6
 JbsURmL44OeFo7nTe6ipnB51sExo30lOR9M2KZb2WZZijfXswLXvWUdURfz4oDjGvlWa
 vLqw==
X-Gm-Message-State: AOAM5326zsQdCxYdmMLuE5btUYNRfbLnPCEC8RPpFYlPL9TRF61E9UlT
 gVxKF39N5Hs3aKYs4euFerC5EUUPx11vhMBa
X-Google-Smtp-Source: ABdhPJxoUXmr/tsU21gsPFlbYdxJdMqKtSYaSrwnzQXTx1QupfBmCln0TaD0Ro4QwUXdcdazfYf28A==
X-Received: by 2002:a67:eec9:0:b0:324:c32c:dbdd with SMTP id
 o9-20020a67eec9000000b00324c32cdbddmr5691571vsp.33.1650411258498; 
 Tue, 19 Apr 2022 16:34:18 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 a1-20020ab03441000000b003545e4b2449sm171762uaq.34.2022.04.19.16.34.17
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:18 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 19/30] gnu: Add elm-todomvc.
Date: Tue, 19 Apr 2022 19:32:03 -0400
Message-Id: <20220419233214.275789-19-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-todomvc): New variable.
---
 gnu/packages/elm.scm | 53 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 4181322393..e4cae693c4 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -494,3 +494,56 @@ (define-public elm-explorations-markdown
     (license license:bsd-3)
     (properties '((upstream-name . "elm-explorations/markdown")))))
 
+(define-public elm-todomvc
+  (let ((commit "f236e7e56941c7705aba6e42cb020ff515fe3290")
+        (revision "1"))
+    (package
+      (name "elm-todomvc")
+      (version (git-version "1" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/evancz/elm-todomvc")
+               (commit commit)))
+         (sha256
+          (base32 "0g37bglzshkf79s4n7aq9ib44h5qn8ng7n72sh2xslgd20h05nfw"))
+         (file-name (git-file-name name version))))
+      (inputs (list elm-browser elm-core elm-html elm-json))
+      (build-system elm-build-system)
+      (arguments
+       (list
+        #:modules
+        `((srfi srfi-26)
+          ,@%elm-default-modules)
+        #:phases
+        #~(modify-phases %standard-phases
+            (delete 'stage)
+            (replace 'configure
+              patch-application-dependencies)
+            (replace 'build
+              (lambda* (#:key native-inputs inputs #:allow-other-keys)
+                (invoke (search-input-file (or native-inputs inputs)
+                                           "/bin/elm")
+                        "make"
+                        "src/Main.elm"
+                        "--output=elm.js")))
+            (replace 'install
+              (lambda args
+                (let* ((out-dir #$output)
+                       (dest-dir
+                        (string-append out-dir
+                                       "/share/"
+                                       (strip-store-file-name out-dir))))
+                  (for-each (cut install-file <> dest-dir)
+                            `("elm.js"
+                              "index.html"
+                              "style.css"
+                              "README.md")))))
+            (delete 'validate-compiled))))
+      (home-page "https://github.com/evancz/elm-todomvc")
+      (synopsis "TodoMVC in Elm")
+      (description "This is the official Elm implementation of
+@url{https://todomvc.com,TodoMVC}, a simple to-do--list application used to
+compare front-end web frameworks.")
+      (license license:bsd-3))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:21 2022
Received: from localhost ([127.0.0.1]:44489 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMT-000649-CD
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:21 -0400
Received: from mail-vk1-f174.google.com ([209.85.221.174]:42552)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMR-00063e-4K
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:19 -0400
Received: by mail-vk1-f174.google.com with SMTP id c4so24347vkq.9
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=gw9YjJ+KwmvB6S3vZj70ONpdT4D1gMkaDHIdaVQUayo=;
 b=MRFztm7uziS3pRwMAx/bF4G0tegaYBXLVuCfIc+63ADZar8LFqUihAX91FCzk+zcvi
 AoiMpG/0uvHiNUCxbTemaDiJMrtLcN4yB6eJ3W5bMLU84BH4PAqvoGKICAs4J4/L90fu
 fh2DIpFIumyxhCGYR0ubr9sRJqu99cw5HACXdlwQm7Wbx1f1lYHfYn8WtE6yBVZZCgo3
 6UB7eczr0/U5j5jHy/i0YDALBgYAw6x8W7vcD1ld0TAJpz1gsR9j811bExB36Kmndgx7
 hChqQjYNvZgG0b/vaRuqd8Tp3ZDIxFPqf6riBrsh+4Dn24XnCPvPQ4eYyaQ8Ht0wqUqV
 vGxg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=gw9YjJ+KwmvB6S3vZj70ONpdT4D1gMkaDHIdaVQUayo=;
 b=Y7ugfY9wGQUN4NOD9lCqLa54UT5TqC3TcNeu1079ukydCuG6rbBRm8AMpyxrwFl/pq
 Q10mhUiAYOrbFM7pzCwuaE/7Vr9TFRUOcTTdUCO+pgn2JLB1c5HZnQJEKuoTXU9KQDgL
 AvczgrixwGVG8drb9NsTdimljdlp2jZM2OPrYGYn0oha3iYeVTTRWxrN9CEnQvX7q68q
 TZSGTgoNMSiaToRctzKGfopiDz2jjj+p44EsyR2WI4qlmRvvTVgfs4e5dZjRUwyi4tTS
 N7OPkXJA4nZrhOUktkkeLL1lg6sxaJRW/UKqav5/NeVixSwYc2ZPK9X/L3ZKhY+Pcxa+
 oGYg==
X-Gm-Message-State: AOAM530Fqk1kLiZPPqc2AAEwAAgTml+tFBkVm3zVG9/LL9dnafcJxauD
 vuR5U2a9GnyRRTCgg6MVQpOhWE+NMwh6M8XQ
X-Google-Smtp-Source: ABdhPJwJzDP53FTaVKVrvDGRSIBcN6LlfV/GIcuYY/re3tD+C9f47ZkFQgPJLImD2WAUADhkJBOrmg==
X-Received: by 2002:a1f:9c09:0:b0:344:fe68:fa84 with SMTP id
 f9-20020a1f9c09000000b00344fe68fa84mr5559134vke.8.1650411253593; 
 Tue, 19 Apr 2022 16:34:13 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 16-20020a056122089000b0033226f398e6sm178389vkf.33.2022.04.19.16.34.12
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:12 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 18/30] gnu: elm: Support 'elm reactor'.
Date: Tue, 19 Apr 2022 19:32:02 -0400
Message-Id: <20220419233214.275789-18-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm): Rename to ...
(elm-sans-reactor): ... this new variable.
[synopsis, description]: Tweak.
(elm): New variable.
* guix/build-system/elm.scm (default-elm): Use elm-sans-reactor.
---
 gnu/packages/elm.scm      | 75 +++++++++++++++++++++++++++++++++++++--
 guix/build-system/elm.scm |  2 +-
 2 files changed, 74 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 53e250ee22..4181322393 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -40,9 +40,9 @@ (define-module (gnu packages elm)
 ;; `elm reactor` exit with a useful error message if they aren't there.
 (define %reactor-root-base
   "share/elm/reactor-")
-(define-public elm
+(define-public elm-sans-reactor
   (package
-    (name "elm")
+    (name "elm-sans-reactor")
     (version "0.19.1")
     (source
      (origin
@@ -93,6 +93,77 @@ (define-public elm
            ghc-vector
            ghc-zip-archive))
     (home-page "https://elm-lang.org")
+    (synopsis "Minimal variant of @command{elm}")
+    (description
+     "This package provides a version of the Elm compiler without support for
+the @command{elm reactor} development command.")
+    (license license:bsd-3)))
+
+(define-public elm
+  (package
+    (name "elm")
+    (version (package-version elm-sans-reactor))
+    (source (package-source elm-sans-reactor))
+    (native-inputs (list elm-sans-reactor))
+    (inputs (list elm-sans-reactor
+                  elm-browser
+                  elm-core
+                  elm-html
+                  elm-http
+                  elm-json
+                  elm-project-metadata-utils
+                  elm-svg
+                  elm-explorations-markdown))
+    (build-system elm-build-system)
+    (arguments
+     (list
+      #:modules
+      `((srfi srfi-26)
+        ,@%elm-default-modules)
+      #:phases
+      #~(modify-phases %standard-phases
+          (delete 'stage)
+          (replace 'configure
+            (lambda* (#:key native-inputs inputs #:allow-other-keys)
+              (with-directory-excursion "reactor"
+                (patch-application-dependencies))))
+          (replace 'build
+            (lambda* (#:key native-inputs inputs #:allow-other-keys)
+              (with-directory-excursion "reactor"
+                (invoke (search-input-file (or native-inputs inputs)
+                                           "/bin/elm")
+                        "make"
+                        "--optimize"
+                        "src/NotFound.elm"
+                        "src/Errors.elm"
+                        "src/Index.elm"))))
+          (replace 'install
+            (lambda* (#:key inputs #:allow-other-keys)
+              (let* ((out-dir #$output)
+                     (bin-dir (string-append out-dir "/bin"))
+                     (reactor-dir (string-append out-dir
+                                                 "/"
+                                                 #$%reactor-root-base
+                                                 (getenv "GUIX_ELM_VERSION")))
+                     (reactor-subdir (string-append reactor-dir "/_elm")))
+                ;; We can't use a symlink here because Haskell's
+                ;; `getExecutablePath` follows all symlinks.
+                ;; Guix can make it a hard link later.
+                (install-file (search-input-file inputs ;; NOT native-inputs
+                                                 "/bin/elm")
+                              bin-dir)
+                (install-file "reactor/assets/favicon.ico" reactor-dir)
+                (for-each (cut install-file <> reactor-subdir)
+                          '("reactor/elm.js"
+                            "reactor/assets/styles.css"
+                            ;; TODO: these are source-code-pro v1.017 and
+                            ;; source-sans-pro v1.050: there may be breaking
+                            ;; changes in Guix's existing
+                            ;; font-adobe-source-{code,sans}-pro packages
+                            "reactor/assets/source-code-pro.ttf"
+                            "reactor/assets/source-sans-pro.ttf")))))
+          (delete 'validate-compiled))))
+    (home-page "https://elm-lang.org")
     (synopsis "Programming language for Web applications")
     (description
      "Elm is a statically-typed, purely-functional programming language for
diff --git a/guix/build-system/elm.scm b/guix/build-system/elm.scm
index 046e6e0a1f..5e2db3b052 100644
--- a/guix/build-system/elm.scm
+++ b/guix/build-system/elm.scm
@@ -73,7 +73,7 @@ (define (default-elm)
   "Return the default Elm package for builds."
   ;; Lazily resolve the binding to avoid a circular dependency.
   (let ((elm (resolve-interface '(gnu packages elm))))
-    (module-ref elm 'elm)))
+    (module-ref elm 'elm-sans-reactor)))
 
 (define (default-elm-core)
   "Return the default elm-core package."
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:16 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:16 2022
Received: from localhost ([127.0.0.1]:44486 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMO-00063q-3X
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:16 -0400
Received: from mail-vk1-f175.google.com ([209.85.221.175]:34811)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMM-00063M-0Q
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:14 -0400
Received: by mail-vk1-f175.google.com with SMTP id b81so38770vkf.1
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=DcSBaSzoIXpBvQm3r+GC0U+2kg+ngtc8s65D1tWjwl0=;
 b=A0mST4yx4k4RRtLph9gGXT4gz5HpIU3cCHXAiKs3dgZqA3Tprnl5cuhohsrlF3xf2k
 W8svPXIawRVWHN6CBmN/3HOAiB2mTiEc7Fw+NIxSGXfpiJWMnuAxTODIklaNlR7W8Qpk
 9yOgoDwIj0VKF6Hd5KwYg1u1KjdzQjjYAp5X8v/RMnK+4K45oERiCOSrGbva51y/v+kM
 W26YhI6CUMQD1uHAJjyhqwhbTPD2AioFOQJmvI25h3E/loPEFtXl3yCUidZbzoj5JN/M
 OcB9+JegHBA51c5QTEl0XIIM0gdjIFMexRA5iG2jf7tUskJK7e26kXzAQzR/F2JbFJCN
 UuWQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=DcSBaSzoIXpBvQm3r+GC0U+2kg+ngtc8s65D1tWjwl0=;
 b=rnFOj0XGQ5+NmTv4wUkh04sBW5uQHXSSfUlIYr0eLkXmQVw9/f/RlEuj3CHdZSWnjo
 D/29z3yP9MP0gq1O/d8foEfzmn8uk0yCusltyUwKv60e6tEJPmSIiv8JJjQAa3sJ2hu6
 FEx6E45jaxC2FbXu9Bw9pQjTcDj5XlXoCaJ8MCxH3KX1UYKBYnxJOwEyilvJU8AqO7pe
 biHjRJgNMgErLEQU5iDnJAYQl0xirG4jYb+PIDqfy7DnNw/nypl2rgETKtYufBFkYEOl
 hhmWo0QAf1bZ/7Jg5EnXw3sekPgfxkGCuZv6rW6x4V8c97a6g9SyVwk3KyRoWDx/T6iI
 dfMw==
X-Gm-Message-State: AOAM531KqgUq84qNnYJDEnEbkwbgy3h/Ti33bfC9QvTpfbAfAKZYUElf
 wRmXKjQ8zVsz81cpTwWCJPerNkOdp+78nBuu
X-Google-Smtp-Source: ABdhPJz7ZWUcxCyyY4kgrInqpItBz0g1T6gv14drt+u47mq7MVK8CIOmIDQxntqsvEGbogdfPjlizg==
X-Received: by 2002:a05:6122:2229:b0:32d:1642:b58b with SMTP id
 bb41-20020a056122222900b0032d1642b58bmr5204322vkb.27.1650411248417; 
 Tue, 19 Apr 2022 16:34:08 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 v13-20020ab0678d000000b0035ce198a740sm176175uar.5.2022.04.19.16.34.07
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:08 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 17/30] gnu: Add elm-explorations-markdown.
Date: Tue, 19 Apr 2022 19:32:01 -0400
Message-Id: <20220419233214.275789-17-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-explorations-markdown): New variable.
---
 gnu/packages/elm.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 58bcf322d9..53e250ee22 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -403,3 +403,23 @@ (define-public elm-project-metadata-utils
     (license license:bsd-3)
     (properties '((upstream-name . "elm/project-metadata-utils")))))
 
+(define-public elm-explorations-markdown
+  (package
+    (name "elm-explorations-markdown")
+    (version "1.0.0")
+    (source
+     (elm-package-origin
+      "elm-explorations/markdown"
+      version
+      (base32 "1f57ikdpbbhchcpwj32216gxjxijrc3sdpg27s1cgzia9pnkqk6p")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-html elm-core))
+    (home-page
+     "https://package.elm-lang.org/packages/elm-explorations/markdown/1.0.0")
+    (synopsis "Fast markdown parsing and rendering in Elm")
+    (description
+     "This package is for markdown parsing and rendering in Elm.  It is based
+on the @code{marked} project, which focuses on speed.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm-explorations/markdown")))))
+
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:11 2022
Received: from localhost ([127.0.0.1]:44483 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMI-00063U-Qz
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:11 -0400
Received: from mail-vs1-f51.google.com ([209.85.217.51]:38471)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMH-000627-Ln
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:09 -0400
Received: by mail-vs1-f51.google.com with SMTP id v15so44744vsm.5
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=BIKq3L3K3Y0IgZOnG/0MQvUlZfFMfxkvhZvcPCmo2Bg=;
 b=Ox6WVupacNY3Dljs0ZCEeL/P/kkLGMP5ttbawtwfEdToqWSmjh4HZ/n8w9r1BWxbPr
 pQomshLc0CdBydT+z8HVmaSuJt2AeXyCsqPykMvBydnEO/LwZChE9W0ROdpigjv9ND0J
 IoNdARiIELWT25QdFp9KNyNgA+fkrZz9jkEAtYCjzlpIpYWiFExn4EswNjdN1Bq9yq9U
 AcsCXtNNPiC7+9F3qPTCLqMhlvSjKXBHyD0NoPJCclv1MzDhkKBMZYVbVbSG9wY0LOX2
 Ek7kQXMfRqiFNhNrTJmWUqUDQPk1vG67MjIt9QIoHJCgOAlDjkyEoN33/KXibLysYkhP
 JLWA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=BIKq3L3K3Y0IgZOnG/0MQvUlZfFMfxkvhZvcPCmo2Bg=;
 b=pqxler1GHRyjsW51/+yJGCMuYzEWe4FVoFuvHFbCIaEkLoXN+WMjk58kACFPFBare2
 qDv3LtOkfFu29vBdfGQnmGlHHVSGWl1B/b87/U/bipo8WQsLMzet+Ww5PUu4tw3gyFOl
 3G3vU/MVc4xSgVewlMycTOD8PPDiZ64fKL4tBcSod2uF0zQ2G4bOZTXeCn1uSBhqngVi
 ckaXK/MwVjmPWA3Y1iAHzDWvZPzosjYb4xVWQrpxTPfbm+i3bIXqdB/yd5PRNak9LWGJ
 /pYf7nAOBY2GmERsDV1a/Ck2fPYQCu74GgoufdZbNost9Z2h1PSxDIdHpwTakW7D621J
 Wl+Q==
X-Gm-Message-State: AOAM530FVow1FiMXnOMjO5TdZBwr6bpfY1egJ+4yzZ99gwVtenlSKZ+S
 aW6BrpQ85BHrqBfFqkOhTg1d+X/T8OAHBxKs
X-Google-Smtp-Source: ABdhPJyUkUAQdhtpcYNVv2u7kKJbAtS008Fh6CJSVyniGIUW8LipJnOUkqT4kf94fgoNH70DtQNweQ==
X-Received: by 2002:a67:ec0b:0:b0:32a:355c:c633 with SMTP id
 d11-20020a67ec0b000000b0032a355cc633mr5412665vso.37.1650411244230; 
 Tue, 19 Apr 2022 16:34:04 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 j3-20020a05612212a300b003497d7b77ecsm177050vkp.14.2022.04.19.16.34.02
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:34:03 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 16/30] gnu: Add elm-project-metadata-utils.
Date: Tue, 19 Apr 2022 19:32:00 -0400
Message-Id: <20220419233214.275789-16-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-project-metadata-utils): New variable.
---
 gnu/packages/elm.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 512b4fc01c..58bcf322d9 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -379,3 +379,27 @@ (define-public elm-parser
     (license license:bsd-3)
     (properties '((upstream-name . "elm/parser")))))
 
+(define-public elm-project-metadata-utils
+  (package
+    (name "elm-project-metadata-utils")
+    (version "1.0.2")
+    (source
+     (elm-package-origin
+      "elm/project-metadata-utils"
+      version
+      (base32 "1wj7chfy4knwwyc3k0hy431c80hs7hc686qsr34ayn8gip73x2jj")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-parser
+           elm-json
+           elm-core))
+    (home-page
+     "https://package.elm-lang.org/packages/elm/project-metadata-utils/1.0.2")
+    (synopsis "Work with @file{elm.json} and @file{docs.json} files in Elm")
+    (description
+     "This package is meant for people creating Elm tooling, like editor
+plugins.  If you just want to make stuff in Elm, there is nothing here for
+you.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/project-metadata-utils")))))
+
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:05 2022
Received: from localhost ([127.0.0.1]:44475 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxMD-00062S-HM
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:05 -0400
Received: from mail-vs1-f41.google.com ([209.85.217.41]:40736)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxMC-00060u-Ag
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:04 -0400
Received: by mail-vs1-f41.google.com with SMTP id v133so37621vsv.7
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:34:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=FMNRiHy7fqXIgdCFNllTL0izsg9EEvzpD1E6BPR5gjc=;
 b=DqoDcAjhA2k9lnzO4o6FAtPGsYkPdegrckACday6rjduRmOsnY+lZakYORruvsO/SI
 KajeyZDIQEq6t1eM0GLWIpVzD2wuMWPl0GLMGsMSOjUOtoQ5MLjyG0Urgmn3/d2l9K3i
 hVYAdxk+g9IqWUxnI85tL/5n963OLHwsx1ETOqHBH9SFIk5g1UymjgDdBKjvfoeuz94l
 rALinggFDBhaEzLwW0YGXO/bnNVS+bjBJkdHry4XMDXdOlAQeTjVuh2K1ZR0T1HjcGd1
 ebV1os+O0nAzC3ofAuws3aGzi680g0oe8Gmds4hGOKykMXDdsTZEQaUBr9QVCWmVaG/L
 VQVg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=FMNRiHy7fqXIgdCFNllTL0izsg9EEvzpD1E6BPR5gjc=;
 b=3lvtUNLYS+PisE1x+hKOBbh2HD7YZfc7+gMcvhx/IDFmpRMCchRP6RGZxnU18HW2Ls
 hyPUJ89jVbOg5pUEDQ+T42/6MsqJkA09Kv9r5B9qlH6B4vB5r/Co9+u4fe+T4/Rzzdce
 qJZrxKxWw81bWAPjA6zU2NEide0OGrbwX8amdY//maigniVpT1vdXWENqzfTNh2bwlif
 ZOUcDx7VC9FK57TNBZTH303tGEV/WdFBkKSx8sEo4oo6FXBlKgwEhs2feqUNQqRTa1aS
 7UL3cXO9fZqyzAfMNIOigpnBKT+8w01GztgnrGbXc3oH3nqxm5N6+C7vSEfkOPeNPFUy
 VBdA==
X-Gm-Message-State: AOAM531SN6Z2mCaWkLaDGZeGi0qTsglhyNJZmi6SldV3BuNcCORKmd3F
 EY20zu6YM/vLXed9cBmSnsXCDFg0ESLeZrEA
X-Google-Smtp-Source: ABdhPJzfRdmyyiVQcFwiWiguc6AwBWc6GId7xc2P7O8Z/JN5pqUJmhXxee+WBnydfJNmmITSEQ5N5w==
X-Received: by 2002:a05:6102:1176:b0:32a:3b0f:2419 with SMTP id
 k22-20020a056102117600b0032a3b0f2419mr5156965vsg.35.1650411238797; 
 Tue, 19 Apr 2022 16:33:58 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 v24-20020a67f6d8000000b003208cfd16d5sm181351vso.33.2022.04.19.16.33.57
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:57 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 15/30] gnu: Add elm-parser.
Date: Tue, 19 Apr 2022 19:31:59 -0400
Message-Id: <20220419233214.275789-15-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-parser): New variable.
---
 gnu/packages/elm.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 6a9cac8553..512b4fc01c 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -358,3 +358,24 @@ (define-public elm-http
     (license license:bsd-3)
     (properties '((upstream-name . "elm/http")))))
 
+(define-public elm-parser
+  (package
+    (name "elm-parser")
+    (version "1.1.0")
+    (source
+     (elm-package-origin
+      "elm/parser"
+      version
+      (base32 "06xx29rmagc5r45qfpvrd393lz83ylngidfp08432f1qc8y6r3lh")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/parser/1.1.0")
+    (synopsis
+     "Parsing library for Elm")
+    (description
+     "Regular expressions are quite confusing and difficult to use.  This
+library provides a coherent alternative that handles more cases and produces
+clearer code.  It is focused on simplicity and great error messages.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/parser")))))
+
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:34:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:34:01 2022
Received: from localhost ([127.0.0.1]:44463 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxM9-000612-9D
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:01 -0400
Received: from mail-vs1-f47.google.com ([209.85.217.47]:42621)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxM7-00060d-Do
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:34:00 -0400
Received: by mail-vs1-f47.google.com with SMTP id i186so30854vsc.9
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=CkpbTW1lqx1X62V9JaR43rWwlm4jKUhO6z6eTGiyxy0=;
 b=etVzjUrz0hE9LHsq9Lf19J0UVLcS1PAebpsu5J32l8ssZQUzSnAz8hOO9fLZUK85WY
 SQ2Vm5uqgsCbvb+QZwrsMJrZWF8PeJW+pUWxS7LBrQcEEMQforFGSt+T54JiSDnM8DnV
 fFgPzQE4HGMzUUjGBw4UZo+Dj6SdK9X3CntrsbWvpow+zBJuUmmqIbL3jAmNJVKnWohF
 DkuB8G/3PJRTg9qFkNZy8BwCZSs5HT4uku4jnuY6rnIf4RsH2caxJITEVkv3bEOi5d61
 uaFYdtVKxXbBt5Pifz4gfF0WkogMQwcxBJZ9YugUDRQssBJjAYHFszc4n66NBNLqRZxW
 zhtQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=CkpbTW1lqx1X62V9JaR43rWwlm4jKUhO6z6eTGiyxy0=;
 b=XBwPZbJOxanj5JZNf2kfvV6K04fb8GBgB5/r7+ruQjZd0XFyht8rWKI7DfjMHQnVi7
 6jloMIi38RN44U2Huvso4TmQfRhmvX9Zh53pTaK9WcRx0gcm14JLacsNaoT9jAiP9tKK
 ZNMTgIHIbMaM03mTcwvqDzDbA710mTqtHuMpxu9WFaFw1OF0nWlR0SBy4gk4+dZH4mxE
 iXCzuDNdaZHbzk44TNNClu2dg6L2TrdGz1xcjMZaOESmq4AXHrWaYpU7GmKFoFkeOZUB
 ruWumjWyaiqYtMcIVUtENHWyI2S2ZiImmGIEUTw03/v40X+zmmFX79zoOnQWkm89hUr9
 79/g==
X-Gm-Message-State: AOAM533WG+pkWdEu2S5kWOUPuCI0jl9x+5YN9GnUAxtby0XmiLOKwVCD
 /ZnuVwGBbGrwbZP9ugMQ6nRYR/APgvDSwJXM
X-Google-Smtp-Source: ABdhPJwKGlalB6ytP/OQbSkl11fm9ZYKD5eaNuiU/t+PS1ba0dhvvOQRqNQw3BcMSgT7qNX6BagaNQ==
X-Received: by 2002:a05:6102:309c:b0:32a:4f43:9b84 with SMTP id
 l28-20020a056102309c00b0032a4f439b84mr4428376vsb.31.1650411233895; 
 Tue, 19 Apr 2022 16:33:53 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 i2-20020ab03742000000b00360062f041csm222657uat.32.2022.04.19.16.33.52
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:52 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 14/30] gnu: Add elm-http.
Date: Tue, 19 Apr 2022 19:31:58 -0400
Message-Id: <20220419233214.275789-14-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-http): New variable.
---
 gnu/packages/elm.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 0099adca90..6a9cac8553 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -335,3 +335,26 @@ (define-public elm-file
 files, and work with file content.")
     (license license:bsd-3)
     (properties '((upstream-name . "elm/file")))))
+
+(define-public elm-http
+  (package
+    (name "elm-http")
+    (version "2.0.0")
+    (source
+     (elm-package-origin
+      "elm/http"
+      version
+      (base32 "0mfbz0lkfidmq5xpv5csw8943q0yrpvj0rwd2vb0gc8rbsfc9dg8")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-json
+           elm-file
+           elm-core
+           elm-bytes))
+    (home-page "https://package.elm-lang.org/packages/elm/http/2.0.0")
+    (synopsis "Make HTTP requests in Elm")
+    (description "This package enables Elm programs to make HTTP requests and
+talk to servers.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/http")))))
+
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:57 2022
Received: from localhost ([127.0.0.1]:44460 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxM5-00060l-0i
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:57 -0400
Received: from mail-vs1-f45.google.com ([209.85.217.45]:38448)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxM2-00060M-Sg
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:55 -0400
Received: by mail-vs1-f45.google.com with SMTP id v15so44326vsm.5
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=FRdFmp/p6AxJ4f2K0L++QoWVgA0LR2cesoqkWEIHVXM=;
 b=TVSktGLPY1YCMvDwtGhE7s4x6KeW2EWT2/XU9vWn7/xDFfv335C8hXgrsemcPEIRS+
 rsQo7sfsB6y8zKxEohY+aJC5hLctbEloQAY862/a29IKM9oKXKqB2TRuKyfdXNPGaac+
 T/wu76ZkjcE1XZLKS9VX1c6xlbRl8krRROwta6zN9z+QmDMrbVq/BYiERFAG03bdHU97
 fepN3h6hcxZMDDmDvBWrReCppEW0ctSxKFPYVgRrYaPrqvhemb13rMalfnOwNsE6Uz8G
 LkZ0NoFrjeQNJLCYwa5WXCIXLSAbL1T1yzoGqVrYrm9GvHXH+bLeF1oIwnx+8b5Crr2R
 lwig==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=FRdFmp/p6AxJ4f2K0L++QoWVgA0LR2cesoqkWEIHVXM=;
 b=eVYf796f3srJWdMGNua6HtmkDnsdsNo1QyK3aqRI4Vhd8SgX0F5/qce4S60vU4XVf8
 PkIEG90qAxcA1qYmx/ErJ2sprY7wH0Wl9KaR2KQhhTx120Qzd5aLHsFhwrJCVwlTpVCh
 6i7zMsKDu+a68ZY+bYLewP5RJcwcwu1bGXZ9NWwUYevFNmEBOSprTPwC9UdxQybYhT3w
 x9w9ditc4CDWJzvsktmR+MFP4FCB/r+SbmmKEzSETu4mu3vR3ZJtVPES9eNAyuhNJzyo
 tz8M1G3cbtVXDgkrkIQABMsLa/Alj3VCqauNQV+QvX9m2ogRGFtooZBSgpaRpSkkye+k
 kaFg==
X-Gm-Message-State: AOAM532FEGkBTAsDiI26CHpwCWBhfoMY5sm3Gp4+rVFPtqj77ALsuZST
 LPcnN1ExUFYxsrgLPVp+rqIoH3g0QOLRdyBl
X-Google-Smtp-Source: ABdhPJzlfKX+Vl1ypyuWNX41l7LlDUH/rQ7CycLIoDWYrpEw7TreLMRigpRuxkPNy3vPpZi1NKIRyw==
X-Received: by 2002:a67:f842:0:b0:32a:492e:332e with SMTP id
 b2-20020a67f842000000b0032a492e332emr5120382vsp.47.1650411229026; 
 Tue, 19 Apr 2022 16:33:49 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 m6-20020a0561023e8600b0031bb1803345sm184068vsv.6.2022.04.19.16.33.47
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:48 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 13/30] gnu: Add elm-file.
Date: Tue, 19 Apr 2022 19:31:57 -0400
Message-Id: <20220419233214.275789-13-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-file): New variable.
---
 gnu/packages/elm.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 8d6a98962e..0099adca90 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -313,3 +313,25 @@ (define-public elm-bytes
 and @code{DataView}.")
     (license license:bsd-3)
     (properties '((upstream-name . "elm/bytes")))))
+
+(define-public elm-file
+  (package
+    (name "elm-file")
+    (version "1.0.5")
+    (source
+     (elm-package-origin
+      "elm/file"
+      version
+      (base32 "0aimgicrdpys0v89m2wjx413561zil14cczjh6mkn9jcgckx6yng")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-time
+           elm-json
+           elm-core
+           elm-bytes))
+    (home-page "https://package.elm-lang.org/packages/elm/file/1.0.5")
+    (synopsis "Work with files in Elm")
+    (description "This package enables Elm programs to select files, download
+files, and work with file content.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/file")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:53 2022
Received: from localhost ([127.0.0.1]:44457 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxM0-00060U-N0
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:52 -0400
Received: from mail-ua1-f53.google.com ([209.85.222.53]:37687)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLx-000603-OD
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:51 -0400
Received: by mail-ua1-f53.google.com with SMTP id f7so19802uap.4
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=0dh5cejmeJJA7ns5XiG+OtoM+K4N+i8o+yGGMjWNSPo=;
 b=FdQD8tiMaz5CmF1RRZKI9yTfbdwjj30J8naZG0JEcDBs58ZnCJm9yWQwHeu74XyfPE
 btWpzdGl5H6x8YTMqWqHHwk9GIh9kg4JWYXUL7vgDwTRnJqzakTLfsMVaDGaCugrU0rc
 uErEOCZA53thXNZ2K9buoL4OGOksijhlys+OWXkxQz2UhPhrigreOZIRc1TGp4R+7bNP
 ZsKYfpPGCHytP3v7wpD71admKI2MxwMeZ6Pg5y44q0A2L6yvrPd7HVvErDe5cILSWNnN
 zbog9bnYo/o36Usx5F26P61iRBsOfPkmeCxh2Q0Pro0Se2XewWdAGaDZqkxQnw57YfMy
 YWcA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=0dh5cejmeJJA7ns5XiG+OtoM+K4N+i8o+yGGMjWNSPo=;
 b=TsiN1/+rXJgb1HFRgGMDY6210P+4wWwTGLuYm6syV3ujzSI5m8V5gv3DV3/Wrsy3Ah
 FUCvf08CU9il3XvqBsbXJUQH2z6B8zVsN7Vrm7sDKEFL/lbPx4YlsrlmL87M/NGzFVjp
 qi7k8vRbU9QTjMNzXYtC4F0xicDEVooRrkNtVPU3eY2od4EXPbDmCZs9BKPRGkDAkHlY
 lSVwsEXFJDprCHei1sTgj6Ckexw0ecBcRtfPAqMieYy9Z6vuXJTB8RcmbO7vEjpl2gZc
 Q8JU6PiQRSSQmVbaeK4IiikXpydXmWiQ0eLKsnwQMYqkdiP556OzGrvVmM8/Ac0GiFsQ
 lxog==
X-Gm-Message-State: AOAM5329ZM7WKAk8AA7S3GvR6nm6Y4go/bOQGr6VB6biaAk+9fun74/P
 RDCidUBa88q99xXkCmY5gFiv6CpDI6UGdTEV
X-Google-Smtp-Source: ABdhPJxWn0w6clBS1GnWL4UWq4jwtS41VQ7+5Hslyws19p1Nxrmjf/dvw5cgdFh3nMDGr75Bn+5cuw==
X-Received: by 2002:ab0:7541:0:b0:359:eb0b:8162 with SMTP id
 k1-20020ab07541000000b00359eb0b8162mr5099474uaq.15.1650411223924; 
 Tue, 19 Apr 2022 16:33:43 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 q187-20020a675cc4000000b0032a352f80dasm178617vsb.15.2022.04.19.16.33.42
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:43 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 12/30] gnu: Add elm-bytes.
Date: Tue, 19 Apr 2022 19:31:56 -0400
Message-Id: <20220419233214.275789-12-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-bytes): New variable.
---
 gnu/packages/elm.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 114cb231a2..8d6a98962e 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -294,3 +294,22 @@ (define-public elm-browser
 with access to browser history for @acronym{SPAs, single-page apps}.")
     (license license:bsd-3)
     (properties '((upstream-name . "elm/browser")))))
+
+(define-public elm-bytes
+  (package
+    (name "elm-bytes")
+    (version "1.0.8")
+    (source
+     (elm-package-origin
+      "elm/bytes"
+      version
+      (base32 "0n411j2cyz9m241q6vszfzpq3fraradwal5m0gigp2505mdfpz3x")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/bytes/1.0.8")
+    (synopsis "Work with sequences of bytes in Elm")
+    (description "This package provides an Elm library for working with
+densely packed sequences of bytes, such as @code{ArrayBuffer}, typed arrays,
+and @code{DataView}.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/bytes")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:46 2022
Received: from localhost ([127.0.0.1]:44454 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxLu-00060B-E7
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:46 -0400
Received: from mail-vk1-f169.google.com ([209.85.221.169]:39460)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLs-0005zl-ML
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:44 -0400
Received: by mail-vk1-f169.google.com with SMTP id s68so29807vke.6
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:44 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=RbD+PoWl+hjDkJnVQDsST7tE150ASZyScsK+mD9WhDI=;
 b=c0cZkv0raC509p/KZbLAEmYofYUPVPWL9GNA6sd1apCvCmX/Q9jiVaNVQWJnrmuRuR
 Iy5/GhtRLD+MyjYm6Hc/9RSGEgaheTeHxSTH8H3RQRg9MNKqe5ZpzYCcSCCvV2zpsMB4
 leAcLOA+8bIFTVpXw7qbPHTGKUfwtqu/QLPVsjV0/wPl9ygXpzDvbIPZ8OEcHaao6qUN
 c9yBhduhw1xuzjuROZS9CLS1S0szLbvKIQXYjcM88eJcs5BEM/C7DQ99T3KTbYCfcxad
 HEsuJ6FF0b3wx2GTOes8iUJq1OMC12m1alispv6FDqhmYTyHuHnTxtUP7KuypL4SLRpE
 v9VQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=RbD+PoWl+hjDkJnVQDsST7tE150ASZyScsK+mD9WhDI=;
 b=7D6KQrZgeNiy32tNinrarhsuuPHpkiryUe09tKXCWHK0L9PzqOKyDwstCmeYkafgKI
 3o4s6OYZ4/Lm3/EocVUy0gDCSKIVU4/LlJOQu1ViL3GhIfoyP2pzUYgKlkaV3q0JQLMT
 0aBAQIk6mGGltn3lg36PnMDw/6owXzwGSziS9Slx/2rI24MMPi/CYEQQH+2zsyj3YbY2
 AWWNk5NkcuNhx/7gEEWicxKvfOA7ZXFZ9ecp9PMiINd2AFUOAj+cKqQ9Ggrwn0lvd7Jr
 rMSSO/ugyWN+yQ4TG0wkhnmxQoNgR9ExTwncW2DDiXUYDC4hgShnGfE2KLva7Jr6PenW
 +SRw==
X-Gm-Message-State: AOAM530RgQx/KFCJanqIfXOkE/Z57nnsa/sy0kNQCvnguXKgtHwy0sX2
 bc0ZbJ8/o7e1fr8KILec6nG/lDURHU/xNwqv
X-Google-Smtp-Source: ABdhPJzpqiyOLffT13r3TkBIz39Hp7p9kyRKxS1Iyq1BQO7HRMlsKwiPaJSwIwZX31p8yBqUma83nw==
X-Received: by 2002:a1f:1b56:0:b0:345:4d97:a2e7 with SMTP id
 b83-20020a1f1b56000000b003454d97a2e7mr5332903vkb.31.1650411219145; 
 Tue, 19 Apr 2022 16:33:39 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 x188-20020a1fc7c5000000b00349855c860fsm176305vkf.32.2022.04.19.16.33.38
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:38 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 11/30] gnu: Add elm-browser.
Date: Tue, 19 Apr 2022 19:31:55 -0400
Message-Id: <20220419233214.275789-11-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-browser): New variable.
---
 gnu/packages/elm.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 0116ffc1e9..114cb231a2 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -268,3 +268,29 @@ (define-public elm-url
 Use it for HTTP and for @dfn{routing} in @acronym{SPAs, single-page apps}.")
     (license license:bsd-3)
     (properties '((upstream-name . "elm/url")))))
+
+(define-public elm-browser
+  (package
+    (name "elm-browser")
+    (version "1.0.2")
+    (source
+     (elm-package-origin
+      "elm/browser"
+      version
+      (base32 "0863nw2hhbpm3s03lm1imi5x28wwknzrwg2p79s5mydgvdvgwjf0")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-virtual-dom
+           elm-url
+           elm-time
+           elm-json
+           elm-html
+           elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/browser/1.0.2")
+    (synopsis
+     "Run Elm in browsers")
+    (description
+     "This package allows you to create Elm programs that run in browsers,
+with access to browser history for @acronym{SPAs, single-page apps}.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/browser")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:41 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:41 2022
Received: from localhost ([127.0.0.1]:44451 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxLp-0005zt-5x
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:41 -0400
Received: from mail-ua1-f49.google.com ([209.85.222.49]:39523)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLn-0005zR-UX
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:40 -0400
Received: by mail-ua1-f49.google.com with SMTP id i26so17437uap.6
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=msCda9geoYludJ/IDcJEUg/4UIYf+Kx1vuJiS8AhNXI=;
 b=AXzbaBImucPpeGTP51Nl/vCTi0xPJaGeXDnKd51qvUXS12GYe6JUInWvySG7T7RDqB
 AKHWkyXsJ8A1jfkKoo+aX9gxfGSPOvVP7i9Dp7CAD0GSepg/uW8cw+56VWZaFCjl22yt
 +NL60CVcei67GDffLBxWCxC9ba1KVKdKFdxXXMmmxC7/LlkF0shdEeZkHar741+aYPa0
 6yXAzaPlagPWlx0h34nX2xkVL4UnPEVNfkc5msgN4M87a+S6F0RwQoDx24ms+poK2nKf
 g8K8LKqBye/12jq9rPee9MSsW4+9u2wciFe8uN8oe8dH6Zxn90MkwSfjvl/jaxG5MpWi
 z2LQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=msCda9geoYludJ/IDcJEUg/4UIYf+Kx1vuJiS8AhNXI=;
 b=KlgtkbQw9cVCV5vLcXBkRxIdaqHaz9R+NcYEEdqCLuZNbhxYPpCAbvSSK2a4hU1ut6
 q7JnPLMjGZy0HRg9i8zPvmMz2C8ql22QJ/TpnFCnC6J55ys5E1wdr3xi9VY9gKyMw0DJ
 yJh3dk6JYvxBBngOHdJ2YZge+c7XEy9JOpSztyg28Nr4+11YAdw7HgFTW7SdlNNr/+lP
 BldEVHy0DhWRGRj5NqG67VCoR2TncqbI0FWPQVHzkzdsP5b/RePPSOwIPz09x/1Q7ouV
 BfI+ZjYghIARpvrCTKlV72ZO63NzXkhnu5zmkBUSZgpDN52S14JjA1uALHNzPp/yVXu2
 NAog==
X-Gm-Message-State: AOAM532UIJFsrAveSe4+zRGAlU10dsrmAx7OAMNFm6+rE3J0epbJ5VO+
 RRZT/ow1DNIF8mqscobAFrcxa0bPrkJ74it6
X-Google-Smtp-Source: ABdhPJycja1KVv4vYNl/u49PRZSQAsSCd4Fz1lA74i7UJJqdTu0/Y4s8S4H5ED/2c56KDi1rfEdH+A==
X-Received: by 2002:ab0:144b:0:b0:33c:76e0:9006 with SMTP id
 c11-20020ab0144b000000b0033c76e09006mr4752641uae.52.1650411214541; 
 Tue, 19 Apr 2022 16:33:34 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 d13-20020a056102222d00b0031b437600fasm185484vsb.14.2022.04.19.16.33.33
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:34 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 10/30] gnu: Add elm-url.
Date: Tue, 19 Apr 2022 19:31:54 -0400
Message-Id: <20220419233214.275789-10-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-url): New variable.
---
 gnu/packages/elm.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 0a296506ba..0116ffc1e9 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -239,3 +239,32 @@ (define-public elm-time
 zones, formatting, and the clock.")
     (license license:bsd-3)
     (properties '((upstream-name . "elm/time")))))
+
+(define-public elm-url
+  (package
+    (name "elm-url")
+    (version "1.0.0")
+    (source
+     (elm-package-origin
+      "elm/url"
+      version
+      (base32 "1f2ij4i7zmijnj2i50qf19lpkr14bhms8dkq029inb5mydi9f8gs")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/url/1.0.0")
+    (synopsis
+     "Create and parse URLs in Elm")
+    (description
+     "This package helps you:
+
+@enumerate
+@item
+build new URLs; and
+
+@item
+parse existing URLs into nice Elm data structures.
+@end enumerate
+
+Use it for HTTP and for @dfn{routing} in @acronym{SPAs, single-page apps}.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/url")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:37 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:37 2022
Received: from localhost ([127.0.0.1]:44448 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxLk-0005zb-T9
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:37 -0400
Received: from mail-vs1-f49.google.com ([209.85.217.49]:37660)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLj-0005z9-Nt
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:35 -0400
Received: by mail-vs1-f49.google.com with SMTP id q2so47276vsp.4
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=LbzCYApGfMt4Rk0ELtpqDP7yrOQHE342mpHUk7D0pi8=;
 b=QFQ4m86TmSDRBcMXUwgWrImKEqPOPiTTCQ571/6I8y3VRmT54dRnM4Yglu7Ghdd0pB
 WiY3YQcKr4b+semkQsgW74AhwCPwEAm+Ha4TgVgOmEaUdl+YcJ3bvRChda7tyowSO8IP
 Lr3opaUFu8glEzGZ4rQn/KQLI84Qd1G8LrZoQCrXzlVb0pZjrj5Ce3lIHMzZ4D+d8GDf
 9th+10mQLoq30lnOACpgAorBWxxA0Twq1Jq+tRgB+zpa+gw+KUAhz8hVPEm0OhMFtdRa
 boFGqxq7YtRk+jXwfvxxaRl3iHP7AGAfchyzswJB/XDZmTUzVy/w+inff/TsO15d4bLx
 BCew==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=LbzCYApGfMt4Rk0ELtpqDP7yrOQHE342mpHUk7D0pi8=;
 b=fEiUtYzqYmpeqtURVB5ih/+PYkJOjRAFUVWsuG0bMmQX2QDWIoHwJ1xNfWJk2ZbNGw
 f+YrUVTR/aL3KO5+jEkBmdvkcNefIQZ6n4zGOO8cU3CQSrlfhb9694XBzXMeQKkGVRI9
 pGSSOmQbt+UFAzG4KL/Mi6/qqRINiDw5efVBvkLAWebjmsllZ5xUDKSHSPHefVHbg2FH
 V45/11YjmnlZKG41Hqwnl6+dSAe7Qxk9e4qoTKTGvnoHGNzIgoTzUFENiriaLN878Dy8
 dHp6U/kR2dTx06gVC3hJ7aRh8mPVb9tZSNYjz65pJknftecS8Ex5cV72Pim1SjLyQus9
 DGaA==
X-Gm-Message-State: AOAM53287lCqnfFkn0iTJuJAgueZabDNCicC/N8wR+vmjRV6JyVknxzl
 VfEY2tWxNF+6YjBTRzRH6bAg6OGjr2D+iF2y
X-Google-Smtp-Source: ABdhPJzgT8muNR8pVi9QhDMwVVKsxuo3jlL+CY+if+sy66Km6IjcmFftU2bdyhx4Y2m3Oqab5bI/8g==
X-Received: by 2002:a67:de98:0:b0:32a:5e86:eb60 with SMTP id
 r24-20020a67de98000000b0032a5e86eb60mr3858251vsk.67.1650411210262; 
 Tue, 19 Apr 2022 16:33:30 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 d7-20020ab01487000000b0035cd4279012sm170481uae.15.2022.04.19.16.33.29
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:29 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 09/30] gnu: Add elm-time.
Date: Tue, 19 Apr 2022 19:31:53 -0400
Message-Id: <20220419233214.275789-9-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-time): New variable.
---
 gnu/packages/elm.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 053a2e62f7..0a296506ba 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -219,3 +219,23 @@ (define-public elm-svg
 library.")
     (license license:bsd-3)
     (properties '((upstream-name . "elm/svg")))))
+
+(define-public elm-time
+  (package
+    (name "elm-time")
+    (version "1.0.0")
+    (source
+     (elm-package-origin
+      "elm/time"
+      version
+      (base32 "0wqa2vhl1zf8z0j2yd3yjwfhr0dydfns43bbzll3k4rhnjadxr1l")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/time/1.0.0")
+    (synopsis
+     "POSIX time and time zones in Elm")
+    (description
+     "This package provides an Elm library for working with POSIX times, time
+zones, formatting, and the clock.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/time")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:32 2022
Received: from localhost ([127.0.0.1]:44445 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxLg-0005zI-Kd
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:32 -0400
Received: from mail-vs1-f51.google.com ([209.85.217.51]:33752)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLf-0005ys-4w
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:31 -0400
Received: by mail-vs1-f51.google.com with SMTP id z139so77665vsz.0
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=Kq8+IHTWukrEFcRDqf7wi+h/Y6di7nYUPghHqCEXhTk=;
 b=HXPPUczJapqLTKMi25RW8keuz62pnfxcv3ZW1vIIQYKG4FRvrwhW70aBDPPXCsQ4zo
 HwfyhkxhDH7grtHcaMfwSb3SSR2F5LfTSjhHhoHpwV+G/3rdwG1vrIydR0AcACmC0/rq
 zrs0nHJencg+NHNKiCUEpt3b5AR1ZnZtcvfd/iMe8AaACbCilLnPCuKU0DPGNQxfJyDR
 bZFvUM3S7Zyk6o4Lbk6JQjXQATgdUFOfQWfoVROP34ofXMbOmis5+MS/J4vCELkqBKg+
 YruY+rtSIAqbOHTloowxUPycp/6KAjpUsD4ILUImoWEW0b39omPXpoCDyhK9zPztqmRR
 El3w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=Kq8+IHTWukrEFcRDqf7wi+h/Y6di7nYUPghHqCEXhTk=;
 b=NkQf7o703+7iYtbHHioUDx7msxEQVma9NoeqFbxnUhdSzx11B5pAuamwzph8RSjoX6
 Kfpqky4lTWIWjd3q3ZLza2dklENEPbrJQygW3/Gc4J0fuetXenQWUJYWo0un3ZO7D4Yw
 Nw8UX2d287ZVaBoPB89s8DHpxBN4rZtPjhCz0yE4itqs5/WDAbl8tSkCjUB8oNtr/zPs
 lFrxZZcP/ZSIYoCVnIvZB1mQaM9J4kvXDMhWkWdHxqz01me2m7lBf+0YuKEfOAu97k0s
 dLtSTvE+JVzBNepRNwGdi0zlQN9mkTYcYPWKsSxhLZmzLTbJzAVKlY6z7ztt7LT2/I6i
 1xHw==
X-Gm-Message-State: AOAM53164nv9+FivdScB7T1uY0xJKd6yk6s6YROttnmN6LHWzKERvU63
 1ohmt/FwA107GZreGg648AShMxL+4oKiCdqK
X-Google-Smtp-Source: ABdhPJxstg0CX1+s+Mv0Xw7BXoGldz3trEIPTEKUHmA7+gu2XEPW4fpKO5oZ0g/gLvSI/3srXeMpMQ==
X-Received: by 2002:a67:d197:0:b0:328:dd6:9ecb with SMTP id
 w23-20020a67d197000000b003280dd69ecbmr5386961vsi.71.1650411205636; 
 Tue, 19 Apr 2022 16:33:25 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 j14-20020ab015ce000000b0035cc0bdd9f6sm174253uae.19.2022.04.19.16.33.24
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:24 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 08/30] gnu: Add elm-svg.
Date: Tue, 19 Apr 2022 19:31:52 -0400
Message-Id: <20220419233214.275789-8-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-svg): New variable.
---
 gnu/packages/elm.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 4ab7063adc..053a2e62f7 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -196,3 +196,26 @@ (define-public elm-html
     (description "This package provides Elm's HTML rendering library.")
     (license license:bsd-3)
     (properties '((upstream-name . "elm/html")))))
+
+(define-public elm-svg
+  (package
+    (name "elm-svg")
+    (version "1.0.1")
+    (source
+     (elm-package-origin
+      "elm/svg"
+      version
+      (base32 "1iqsc3p129j56lp1y3z3mfc6x1shvrmx3pkhri2777ylhyw90qvl")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-html
+           elm-virtual-dom
+           elm-json
+           elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/svg/1.0.1")
+    (synopsis "Fast SVG, rendered with virtual DOM diffing")
+    (description
+     "This package provides Elm's @acronym{SVG, Scalable Vector Graphics}
+library.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/svg")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:28 2022
Received: from localhost ([127.0.0.1]:44442 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxLc-0005z0-CT
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:28 -0400
Received: from mail-ua1-f54.google.com ([209.85.222.54]:37674)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLa-0005ya-Me
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:26 -0400
Received: by mail-ua1-f54.google.com with SMTP id f7so19481uap.4
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:26 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=h8vKMDfuXVn3COi+tRQZLf2jLWdNObT6QwePCwLZwN0=;
 b=DYVODCfsWJY1ox5lji4aYwhcl/ZvRgTgXAWUu//3DsLZmnWieOed3z1vPu79++DY5O
 klyJwdduQEvfyXP3sfDQ0R8yA5cXIpVNOx2oby8KxWTU0DVaftVfqTcK8yDBNRp6WxEK
 GATSK7gg9bYirQbmw5jx1anElEv1qvaj86OUa8uitVTeaomSjaCvvIcVd3f1fVGoj7MH
 CPur4yHf+9ML2+/TLnKgyO7Ol7VeEL4sGkaFiMggT0w5G6hnI+q4BNC/NRuSUf4LGDYc
 SxCn6T9FcUjo3HW1fwlOb9U5qOcOxBDBMxM2WEWdmvWv/gWfgyUYWX+dpQmtOKTvaiFx
 znrw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=h8vKMDfuXVn3COi+tRQZLf2jLWdNObT6QwePCwLZwN0=;
 b=0AF9TxvkloHBEqFBUBc9Rogky+Ypz7JlqTMUB/G16NCzZZJ9rQb2ahT1pvcpB8yq8p
 iFj7CLiE4VxaCst2/9IwvLezcmc8m1JcOGrCSHDYrhxycv46o7yVsx7Gwo1Hwd9LAeiG
 IXId9uRSa+HkKWC2BOI7yYYXlatyKosp2naySlg8HGpAWeEXvrmIGZD6TaCKF/DQLPMi
 w4sZ/lF6mlDgW7yBkas9MjFgeUfI+DUrz8pI98Ed7Wx0mZ1YcxJB7gD2+KEp6EweBZlf
 cdHx/5p0t8yyPDQuvi+hq4WZ66g0ooYX8PUtO2jia5loHRH8kJIKjcOyZTDCIySweXH5
 d1NQ==
X-Gm-Message-State: AOAM533dqaLtEoaggSrXdJG1Sa3EzCBLuceOh/hyELfCw4ljPM55dAF5
 Ck6ygqXUUkgUoG8fUztCxyUtXSPgBudji6FT
X-Google-Smtp-Source: ABdhPJw8pdFYJWBMCicSyRmoE02s0AvkMPHzHg687YVVLjINOZXvxhEYJbDtI++lYpG3eRk4xYn/Ew==
X-Received: by 2002:ab0:1c58:0:b0:35f:c70b:adb9 with SMTP id
 o24-20020ab01c58000000b0035fc70badb9mr5010280uaj.40.1650411201157; 
 Tue, 19 Apr 2022 16:33:21 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 g11-20020ab0598b000000b0034a021faff9sm165377uad.14.2022.04.19.16.33.20
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:20 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 07/30] gnu: Add elm-html.
Date: Tue, 19 Apr 2022 19:31:51 -0400
Message-Id: <20220419233214.275789-7-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-html): New variable.
---
 gnu/packages/elm.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index af12804301..4ab7063adc 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -176,3 +176,23 @@ (define-public elm-virtual-dom
 higher-level libraries directly.")
     (license license:bsd-3)
     (properties '((upstream-name . "elm/virtual-dom")))))
+
+(define-public elm-html
+  (package
+    (name "elm-html")
+    (version "1.0.0")
+    (source
+     (elm-package-origin
+      "elm/html"
+      version
+      (base32 "15k1679ja57vvlpinpv06znmrxy09lbhzfkzdc89i01qa8c4gb4a")))
+    (build-system elm-build-system)
+    (propagated-inputs
+     (list elm-virtual-dom
+           elm-json
+           elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/html/1.0.0")
+    (synopsis "Fast HTML, rendered with virtual DOM diffing")
+    (description "This package provides Elm's HTML rendering library.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/html")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:24 2022
Received: from localhost ([127.0.0.1]:44439 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxLX-0005yi-GL
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:24 -0400
Received: from mail-vs1-f54.google.com ([209.85.217.54]:40701)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLV-0005y4-RH
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:22 -0400
Received: by mail-vs1-f54.google.com with SMTP id v133so36566vsv.7
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=95xM95eUEwEqu7+Zq/UPnKeOMrhO+CU4NiXC+C29qFg=;
 b=CRwk/M5neOVjqB4ZTgQngkZrPxzp9zmShb5ulEj8C3e07M1At8U/C9BjtWzl74lldf
 kUUOWFVBKCugogmcv3+kveEgLo2fOH3ePqwQre8v7ikoi+EEE1CTd7gcoZwQLutZ9cB6
 t0C/eELQqFmpQwlO1r7HwOYzMBLPa1I1RLl/ugcG1UUYc43iJkBERi2un9gecXioA/da
 Vm+FvUMhfXIhRSDsG6sA+OF+q+K6PiZY3/Xl3QZrMhwtkNwk+HcRrvagec9OJCw9EzIa
 PGVduXaqhtki8Lj3lbQJxidJd529ytHp/+jOUvIKb6nQUyaq8Dl9Y1gYe6K/H2XRborF
 aE1A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=95xM95eUEwEqu7+Zq/UPnKeOMrhO+CU4NiXC+C29qFg=;
 b=c1BQwhe/baE6bgow6ZFr/MIslLOHBHEIu0ox4yZFoDc6MmfSsYMgALo+qHQ+D75r7w
 OwXqs9977P4DXVWZaS/BD67DtRZ6OTxYQxuAsUrdqbAuVKTG8QSN4WWutOr6WYad2URI
 kmCnu2T+5ESMDOidbBFOYqsq5ndZlKrqadITIKyAvYn3qr3OKCu5dNry7GAWGlt9Yw/p
 Nb8lGB8UThjlsycpuWMTzlpBN45fTNkptLnDDDp/m7nQOuhcM4wSolkfRQ5Icm2owYuf
 w3QFRsy4AYDf2llMKWe2jrYGGCDxjDoed2bETpcFOfr9+tjL+El7B1jl6ZLexQIvPuhJ
 FF7w==
X-Gm-Message-State: AOAM531tHhwwTjnjzbD4puLUVqaftodWbvD5yL93SmuiE2hTE0DZpeAN
 a78uDD8cZxV0NKo9V+lftBRwGNkPlf/xHDXh
X-Google-Smtp-Source: ABdhPJw608qQasxl3ryfMxnmuRy4Z23NjnDXQ1sLIlYJ7yQV8NpAnbLtjmg/rB1wnH9/sbzzsgFJRA==
X-Received: by 2002:a05:6102:3d04:b0:329:88fa:94d2 with SMTP id
 i4-20020a0561023d0400b0032988fa94d2mr4210502vsv.64.1650411196450; 
 Tue, 19 Apr 2022 16:33:16 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 q12-20020a056102204c00b0032a32371f12sm188227vsr.7.2022.04.19.16.33.15
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:15 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 06/30] gnu: Add elm-virtual-dom.
Date: Tue, 19 Apr 2022 19:31:50 -0400
Message-Id: <20220419233214.275789-6-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-virtual-dom): New variable.
---
 gnu/packages/elm.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index b61d238cff..af12804301 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -155,3 +155,24 @@ (define-public elm-json-bootstrap
                 (delete 'build)
                 (delete 'validate-compiled))
             #:implicit-elm-package-inputs? #f)))))
+
+(define-public elm-virtual-dom
+  (package
+    (name "elm-virtual-dom")
+    (version "1.0.2")
+    (source
+     (elm-package-origin
+      "elm/virtual-dom"
+      version
+      (base32 "1d6pqv6cvrsk2cp3dxxrq82vwrij4hrgjazg3lh93z75jkpvywhl")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-json elm-core))
+    (home-page "https://package.elm-lang.org/packages/elm/virtual-dom/1.0.2")
+    (synopsis
+     "Elm's low-level virtual DOM implementation")
+    (description
+     "This package provides a virtual DOM implementation that backs Elm's
+core libraries for HTML and SVG.  You should almost certainly use those
+higher-level libraries directly.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/virtual-dom")))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:18 2022
Received: from localhost ([127.0.0.1]:44436 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxLS-0005yJ-74
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:18 -0400
Received: from mail-ua1-f52.google.com ([209.85.222.52]:38657)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLR-0005xt-1Q
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:17 -0400
Received: by mail-ua1-f52.google.com with SMTP id y2so18230uaq.5
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=QKeYglNIu3HHMWV3L5gQX7UUrWLR4YJ0MvRfu6gJH/s=;
 b=d+Pm39zoKTBbCpTLYedfWxuADUnaP8cKIHnMNZoFjKTON+/BwqIeMqpXnXZynA77SB
 c1OqeFbEdl3oUeFIaXyGS8eOmPJ1Ez2xV1fyKnR5UzRbfrKhYxCtZxJ/wdMkz1UfKoQS
 vS4xG+oM4ywxQHYwC0FWMMtVRYf68HRmwtAoCgmO958vkPbgCblBMucCHn5xjK1qTAqQ
 yvtBWcdJXnja0RBa5AyjVfEf9+uDucBPBOoPr+KF7Lf/LY83UUCIUlcMhI+lak8fVWbR
 sCvfE6HqKNq/tgqowCzERwZnmV5lDeUnDui3sbabno7k3c3Pq4ukEaBmepDfYGUuzQvm
 qwjA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=QKeYglNIu3HHMWV3L5gQX7UUrWLR4YJ0MvRfu6gJH/s=;
 b=umMukhQFI2mAwLqZ/i1na2+UPXR0gUJ9EVlA7aJLEHSiAC38lIXuWsUadP+P2LV2p/
 6ASpPSnvriErxe3LbmYXKloT1TuIEdYgZGt8UauGLmicC8WClOZaA7poa0RvMrTlhKUh
 0Etra7XoKc88Oy0BXrcqQeQfeYi4oruBvN+5rVoR9pSBqv7YNR3h3dn2kFoDduAGrS2v
 g5Q83y2TARKZ1+wQd2MBZQTKWj79/RQU0Ai3IV+mj+gX4PPib7nMTZt/ms2OPAaJOFKy
 H8zObSIgh9Rf+z0BaGwFOoxJNM6XIrltTR/vCImaWMrfDwSfK8d6m48KY3te0KTt9O1G
 mcXQ==
X-Gm-Message-State: AOAM530vB5dNm/VJAHKijS7nHANl2vmImYdF2H+15OvAXrpTKPLEWGeF
 H8KN1u9bGKfkEL/lrDsupwcjPoW1Vv936wOc
X-Google-Smtp-Source: ABdhPJxj02N+ujjjM5gi1PVK4W87TD3yzgHvA5rec5MPeXodbxt8NXbYxUC7kL/VirWVQXvsHEejeg==
X-Received: by 2002:ab0:4504:0:b0:351:2448:a093 with SMTP id
 r4-20020ab04504000000b003512448a093mr4601562uar.121.1650411191500; 
 Tue, 19 Apr 2022 16:33:11 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 q187-20020a6743c4000000b0032a4ae71201sm170065vsa.29.2022.04.19.16.33.10
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:10 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 05/30] build-system/elm: Add implicit Elm inputs.
Date: Tue, 19 Apr 2022 19:31:49 -0400
Message-Id: <20220419233214.275789-5-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* guix/build-system/elm.scm (default-elm-core): New variable.
(default-elm-json): Likewise
(lower): Use them as implicit inputs when applicable.
---
 guix/build-system/elm.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/guix/build-system/elm.scm b/guix/build-system/elm.scm
index bf77df6519..046e6e0a1f 100644
--- a/guix/build-system/elm.scm
+++ b/guix/build-system/elm.scm
@@ -75,6 +75,18 @@ (define (default-elm)
   (let ((elm (resolve-interface '(gnu packages elm))))
     (module-ref elm 'elm)))
 
+(define (default-elm-core)
+  "Return the default elm-core package."
+  ;; Lazily resolve the binding to avoid a circular dependency.
+  (let ((elm (resolve-interface '(gnu packages elm))))
+    (module-ref elm 'elm-core)))
+
+(define (default-elm-json)
+  "Return the default elm-json package."
+  ;; Lazily resolve the binding to avoid a circular dependency.
+  (let ((elm (resolve-interface '(gnu packages elm))))
+    (module-ref elm 'elm-json)))
+
 (define* (lower name
                 #:key source inputs native-inputs outputs system target
                 (implicit-elm-package-inputs? #t)
@@ -99,6 +111,26 @@ (define private-keywords
                '())
          ,@inputs
          ("elm" ,elm)
+         ,@(cond
+            (implicit-elm-package-inputs?
+             ;; These are needed for elm-build-system even if not actually
+             ;; needed by the package being built.  But "elm/json" is often
+             ;; present in practice, and "elm/core" always is: only add the
+             ;; default packages if no suitable inputs have been given explicitly.
+             (filter-map (match-lambda
+                           ((name get-default)
+                            (cond
+                             ((find (match-lambda
+                                      ((_ pkg . _)
+                                       (equal? name (package-upstream-name pkg))))
+                                    inputs)
+                              #f)
+                             (else
+                              `(,name ,(get-default))))))
+                         `(("elm/core" ,default-elm-core)
+                           ("elm/json" ,default-elm-json))))
+            (else
+             '()))
          ;; TODO: probably don't need most of (standard-packages)
          ,@(standard-packages)))
       (outputs outputs)
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:18 2022
Received: from localhost ([127.0.0.1]:44434 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxLR-0005yC-Ly
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:18 -0400
Received: from mail-ua1-f49.google.com ([209.85.222.49]:39509)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLM-0005xi-FJ
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:12 -0400
Received: by mail-ua1-f49.google.com with SMTP id i26so17086uap.6
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=NyReZl9MgfamlUzuzw5SybgiK2rzwKUE0DyrFWouLyA=;
 b=RIYO1OvPSRJ41lG/+j75PGF9reGb6T/N66DKY1uQcPuu15g6wzyPAhL2XFQC0HMH3O
 j6a/ss9lumupcCCApHuDGOIm1KS2iJWlXCLqxHDRTe5cjmU2L02PMC9vItGytUwU86zi
 bprgksFiRFey02J+g9IHvOaBDl7Xsg52zGsMDso0kf+UWzyPr6Gr4wmKhN9RlA+KWMtg
 38g5e2GFuwtrW5AxAIgc6jUOD6f9cEgWbkXnfJYT0WYONJHpXBk/HePUvO7y99g5QtKE
 PtvKm0e1VRKZ0vAumvqRqrrhcLd89JOU2mPPdAr6/duLD9kQ42TeOXIei1u3YOEQacOl
 bdNg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=NyReZl9MgfamlUzuzw5SybgiK2rzwKUE0DyrFWouLyA=;
 b=E44guUn8DfemC92PtbCZRJ9m4CDKgaVwnKdDV4bNL3oINbzZ8KAFtuAf+IdZ6bWbVZ
 XNwcSBzkJk5vHcWJxlljK7ZFRAzR/AkFN5d1tBpk19sZBrBeWfj/l2lyOxrcJZwZn4gJ
 TF6vPSnp+WwDZLE2CcFYMpUQEtQdr39aMp1DOJE+4i/HgmHvkFgMrlaBvlzJy8zivFos
 UkxPQmeQRfe1YwNp03RF0STBkJ9Z1fLQ9lBp6lN50LNh0UHIGanBgzsT+2lCMBghlOJH
 ODtiOzT2InLIK07vLha/H30cUua0XLXsJAUjrU7cRp57BS/luKdsQ//X+X2iOu/WPQ2D
 u87Q==
X-Gm-Message-State: AOAM531NIwry5/NjHQOk5lFT8vCXEtzDHbmXLvWgPBxcjS4bWHgiK51p
 4cIF0Q1AnX4zR64oeRPO1MgpTuyyfYX1HW0p
X-Google-Smtp-Source: ABdhPJzcsKn0zYZg00Nymjn7NPxqlS1jGCMVSHNhzXIRNNrIX1WAFyzXAYuGQhONvHyRUmgUpiHUFQ==
X-Received: by 2002:ab0:7308:0:b0:35f:acfb:c011 with SMTP id
 v8-20020ab07308000000b0035facfbc011mr4727923uao.51.1650411186706; 
 Tue, 19 Apr 2022 16:33:06 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 n3-20020ab07483000000b0035fab9b938asm179265uap.28.2022.04.19.16.33.05
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:33:06 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 04/30] gnu: Add elm-core and elm-json.
Date: Tue, 19 Apr 2022 19:31:48 -0400
Message-Id: <20220419233214.275789-4-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

Both of these packages are needed for 'elm-build-system' to work.

* gnu/packages/elm.scm (elm-core, elm-json, elm-json-bootstrap): New
variables.
---
 gnu/packages/elm.scm | 56 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 56 insertions(+)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 22c1db5942..b61d238cff 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -99,3 +99,59 @@ (define-public elm
 the browser.  The @command{elm} exectable includes commands for developers
 such as @command{elm make} and @command{elm repl}.")
     (license license:bsd-3)))
+
+(define-public elm-core
+  (package
+    (name "elm-core")
+    (version "1.0.5")
+    (source
+     (elm-package-origin
+      "elm/core"
+      version
+      (base32 "0g3xbi8f9k5q45s95nx3jfvzwdf4b2n63a52wr4027d2xjx0pmvl")))
+    (build-system elm-build-system)
+    (inputs (list elm-json-bootstrap))
+    (arguments
+     (list #:implicit-elm-package-inputs? #f))
+    (home-page "https://package.elm-lang.org/packages/elm/core/1.0.5")
+    (synopsis "Elm's standard libraries")
+    (description "Every Elm project needs this package!")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/core")))))
+
+(define-public elm-json
+  (package
+    (name "elm-json")
+    (version "1.1.3")
+    (source
+     (elm-package-origin
+      "elm/json"
+      version
+      (base32 "1hx986yqw1v2bpkrh6brszl8n8awwg1s8zi7v5qg0p1rqwvjlicz")))
+    (build-system elm-build-system)
+    (propagated-inputs (list elm-core))
+    (arguments
+     (list #:implicit-elm-package-inputs? #f))
+    (home-page "https://package.elm-lang.org/packages/elm/json/1.1.3")
+    (synopsis "Encode and decode JSON values in Elm")
+    (description
+     "This package helps you convert between Elm values and JSON values.")
+    (license license:bsd-3)
+    (properties '((upstream-name . "elm/json")))))
+
+(define-public elm-json-bootstrap
+  ;; elm/core doesn't depend on elm/json,
+  ;; but elm-build-system's strategy for building it
+  ;; (and everything else) does
+  (hidden-package
+   (package
+     (inherit elm-json)
+     (name "elm-json-bootstrap")
+     (propagated-inputs '())
+     (arguments
+      (list #:phases
+            #~(modify-phases %standard-phases
+                (delete 'configure)
+                (delete 'build)
+                (delete 'validate-compiled))
+            #:implicit-elm-package-inputs? #f)))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:17 2022
Received: from localhost ([127.0.0.1]:44430 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxLJ-0005xq-NE
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:17 -0400
Received: from mail-vs1-f54.google.com ([209.85.217.54]:44590)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLG-0005xL-Sb
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:08 -0400
Received: by mail-vs1-f54.google.com with SMTP id m14so24206vsp.11
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=ClT6VxzBawlVoWwfFdTZsDzbgMRfs+XG8m5rmLhBlMI=;
 b=a7YqO3kHyAzC86v1RiUu6IBPzjWW+Xe1Hqy+Jyo/NDuuQUHmqrBkeT1MpRi4lpXwgF
 Hhk/T/pLoBR6BpVRcd2Sy5mz3zz0LDdjmVuzZnFO/F4zMB7M/b+3yDRMJ1XlM1RdpQUA
 oTJa8AcHymUBwZQCwgicUzBZPTKzhAURI/nmrQ7T6DtHc3oW2AnhTgnom57fWsgHDQW1
 MypobVN195rscsM8ORsrCjd4373bjtUQh6gGa1C+U3aQ6iE3sLySgIk5kYWRSarYML1e
 ig34JvY7ceyTZvO6KyCF0d6FNbjNxEyqjc8yt0WgKyljApzCyl46clbRgla+hva5JjpO
 A6Ow==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=ClT6VxzBawlVoWwfFdTZsDzbgMRfs+XG8m5rmLhBlMI=;
 b=Wc+0VIMwXAWVp1y/dsXueRuLol0/Ua4/qDfjbg6FhJ1zG7yIsFW+LuB7zhCRiKDqpF
 VHRoPd5VbpShLacOfHFWg8M1gKV+6xy1+bdqAg94W69mUKOw0Qt/WQtJ02NCQEjCLJPI
 WFJ2P3wMIW3c41md8u+5ZgSwryMELEWz2Jklh5c94PBFOsRJBhBAR5oTuElM3CFU1Kd8
 3pwYiyv1Knk4tOhySZuYw07fM49Fmr9D5ac1gPd0etpwuSNtHJt1BfKup2bx1T2uOcA7
 bp/wUzZcDsvtzEGtn7/ECXRuACg4nn1hpbV9PAaBbva6+TLCxhRKApY/UFY8nUu2MhB7
 KRLw==
X-Gm-Message-State: AOAM532uIoc/wnTzJxAKHEU6w96qxwG16/oTonAjyh0zyEKs1LS+W5dM
 vHeWgPMXAX+c8Gz8asoucRfb+5Qa1Gtqo5rD
X-Google-Smtp-Source: ABdhPJwJyPw2e0uB5WUD/iIZuyFKC9fRLMdhrE3J5Lc5PrDogXt/r2jRa7NRWAUpXdxIafsYvw+OcA==
X-Received: by 2002:a05:6102:20e:b0:32a:25f9:7bfc with SMTP id
 z14-20020a056102020e00b0032a25f97bfcmr5136213vsp.82.1650411180815; 
 Tue, 19 Apr 2022 16:33:00 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 v13-20020ab0678d000000b0035ce198a740sm175800uar.5.2022.04.19.16.32.59
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:32:59 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 03/30] guix: Add elm-build-system and 'guix import elm'.
Date: Tue, 19 Apr 2022 19:31:47 -0400
Message-Id: <20220419233214.275789-3-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: 2.3 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: * gnu/packages/patches/elm-offline-package-registry.scm: New
 file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/elm.scm (elm):
 Use it. * guix/build-system/elm.scm, guix/build/elm-build-sys [...] 
 Content analysis details:   (2.3 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at https://www.dnswl.org/,
 no trust [209.85.217.54 listed in list.dnswl.org]
 -0.0 RCVD_IN_MSPIKE_H2      RBL: Average reputation (+2)
 [209.85.217.54 listed in wl.mailspike.net]
 0.7 SPF_NEUTRAL            SPF: sender does not match SPF record (neutral)
 0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 1.6 PDS_OTHER_BAD_TLD      Untrustworthy TLDs
 [URI: yoctocell.xyz (xyz)]
 -0.0 T_SCC_BODY_TEXT_LINE   No description available.
 0.0 T_FILL_THIS_FORM_SHORT Fill in a short form with personal
 information
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: 1.3 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 
 Content preview:  * gnu/packages/patches/elm-offline-package-registry.scm: New
    file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/elm.scm (elm):
    Use it. * guix/build-system/elm.scm, guix/build/elm-build-sys [...] 
 
 Content analysis details:   (1.3 points, 10.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
  0.7 SPF_NEUTRAL            SPF: sender does not match SPF record (neutral)
  0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
  1.6 PDS_OTHER_BAD_TLD      Untrustworthy TLDs
                             [URI: yoctocell.xyz (xyz)]
 -0.0 T_SCC_BODY_TEXT_LINE   No description available.
 -1.0 MAILING_LIST_MULTI     Multiple indicators imply a widely-seen list
                             manager

* gnu/packages/patches/elm-offline-package-registry.scm: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/elm.scm (elm): Use it.
* guix/build-system/elm.scm, guix/build/elm-build-system.scm,
guix/import/elm.scm, guix/scripts/import/elm.scm: New files.
* guix/scripts/import.scm (importers): Add "elm".
---
 gnu/local.mk                                  |   1 +
 gnu/packages/elm.scm                          |   8 +-
 .../elm-offline-package-registry.patch        |  71 ++++
 guix/build-system/elm.scm                     | 144 +++++++
 guix/build/elm-build-system.scm               | 380 ++++++++++++++++++
 guix/import/elm.scm                           | 148 +++++++
 guix/scripts/import.scm                       |   3 +-
 guix/scripts/import/elm.scm                   | 107 +++++
 8 files changed, 859 insertions(+), 3 deletions(-)
 create mode 100644 gnu/packages/patches/elm-offline-package-registry.patch
 create mode 100644 guix/build-system/elm.scm
 create mode 100644 guix/build/elm-build-system.scm
 create mode 100644 guix/import/elm.scm
 create mode 100644 guix/scripts/import/elm.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 2af4d018ba..6f02f0a6fd 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1024,6 +1024,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/einstein-build.patch			\
   %D%/packages/patches/elfutils-tests-ptrace.patch		\
   %D%/packages/patches/elixir-path-length.patch			\
+  %D%/packages/patches/elm-offline-package-registry.patch	\
   %D%/packages/patches/elm-reactor-static-files.patch		\
   %D%/packages/patches/elogind-revert-polkit-detection.patch	\
   %D%/packages/patches/emacs-exec-path.patch			\
diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index be2e4ebcbd..22c1db5942 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -25,6 +25,7 @@ (define-module (gnu packages elm)
   #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages haskell-web)
   #:use-module (guix build-system haskell)
+  #:use-module (guix build-system elm)
   #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
@@ -37,6 +38,8 @@ (define-module (gnu packages elm)
 ;; also want to be able to enable it once we can build it.  We patch Elm to
 ;; instead look for the files on disk relative to the executable and to have
 ;; `elm reactor` exit with a useful error message if they aren't there.
+(define %reactor-root-base
+  "share/elm/reactor-")
 (define-public elm
   (package
     (name "elm")
@@ -51,13 +54,14 @@ (define-public elm
        (sha256
         (base32 "1rdg3xp3js9xadclk3cdypkscm5wahgsfmm4ldcw3xswzhw6ri8w"))
        (patches
-        (search-patches "elm-reactor-static-files.patch"))))
+        (search-patches "elm-reactor-static-files.patch"
+                        "elm-offline-package-registry.patch"))))
     (build-system haskell-build-system)
     (arguments
      (list
       #:configure-flags
       #~(list (string-append "--ghc-option=-DGUIX_REACTOR_STATIC_REL_ROOT="
-                             "\"../share/elm/reactor-"
+                             "\"../" #$%reactor-root-base
                              #$(package-version this-package)
                              "\""))
       #:phases
diff --git a/gnu/packages/patches/elm-offline-package-registry.patch b/gnu/packages/patches/elm-offline-package-registry.patch
new file mode 100644
index 0000000000..761ec69878
--- /dev/null
+++ b/gnu/packages/patches/elm-offline-package-registry.patch
@@ -0,0 +1,71 @@
+From 06563409e6f2b1cca7bc1b27e31efd07a7569da8 Mon Sep 17 00:00:00 2001
+From: Philip McGrath <philip@HIDDEN>
+Date: Thu, 14 Apr 2022 22:41:04 -0400
+Subject: [PATCH] minimal support for offline builds
+
+Normally, Elm performs HTTP requests before building to obtain or
+update its list of all registed packages and their versions.
+This is problematic in the Guix build environment.
+
+This patch causes Elm to check if the `GUIX_ELM_OFFLINE_REGISTRY_FILE`
+is set and, if so, to use the contents of the file it specifies as
+though it were the response from
+https://package.elm-lang.org/all-packages.
+
+This patch does not attempt to add more general support for offline
+builds. In particular, it does not attempt to support incremental
+updates to the package registry cache file. See also discussion at
+https://discourse.elm-lang.org/t/private-package-tool-spec/6779/25.
+---
+ builder/src/Deps/Registry.hs | 25 +++++++++++++++++++++----
+ 1 file changed, 21 insertions(+), 4 deletions(-)
+
+diff --git a/builder/src/Deps/Registry.hs b/builder/src/Deps/Registry.hs
+index 8d7def98..70cf3622 100644
+--- a/builder/src/Deps/Registry.hs
++++ b/builder/src/Deps/Registry.hs
+@@ -18,6 +18,8 @@ import Control.Monad (liftM2)
+ import Data.Binary (Binary, get, put)
+ import qualified Data.List as List
+ import qualified Data.Map.Strict as Map
++import System.Environment as Env
++import qualified Data.ByteString as BS
+ 
+ import qualified Deps.Website as Website
+ import qualified Elm.Package as Pkg
+@@ -190,13 +192,28 @@ getVersions' name (Registry _ versions) =
+ post :: Http.Manager -> String -> D.Decoder x a -> (a -> IO b) -> IO (Either Exit.RegistryProblem b)
+ post manager path decoder callback =
+   let
+-    url = Website.route path []
+-  in
+-  Http.post manager url [] Exit.RP_Http $
+-    \body ->
++    mkBodyCallback url body =
+       case D.fromByteString decoder body of
+         Right a -> Right <$> callback a
+         Left _ -> return $ Left $ Exit.RP_Data url body
++    postOnline url cb =
++      Http.post manager url [] Exit.RP_Http cb
++    performPost f url =
++      f url (mkBodyCallback url)
++  in
++    do
++      maybeFile <- Env.lookupEnv "GUIX_ELM_OFFLINE_REGISTRY_FILE"
++      case (path, maybeFile) of
++        ( "/all-packages", Just file ) ->
++          performPost postOffline file
++        ( _, _ ) ->
++          -- don't know how to handle other endpoints yet
++          performPost postOnline (Website.route path [])
++
++postOffline :: String -> (BS.ByteString -> IO a) -> IO a
++postOffline file callback = do
++  body <- BS.readFile file
++  callback body
+ 
+ 
+ 
+-- 
+2.32.0
+
diff --git a/guix/build-system/elm.scm b/guix/build-system/elm.scm
new file mode 100644
index 0000000000..bf77df6519
--- /dev/null
+++ b/guix/build-system/elm.scm
@@ -0,0 +1,144 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix build-system elm)
+  #:use-module (guix store)
+  #:use-module (guix utils)
+  #:use-module (guix packages)
+  #:use-module (guix gexp)
+  #:use-module (guix monads)
+  #:use-module (guix search-paths)
+  #:use-module (guix git-download)
+  #:use-module (guix build-system)
+  #:use-module (guix build-system gnu)
+  #:use-module (ice-9 match)
+  #:use-module (srfi srfi-1)
+  #:export (elm->package-name
+            elm-package-origin
+            %elm-build-system-modules
+            %elm-default-modules
+            elm-build
+            elm-build-system))
+
+(define (elm->package-name name)
+  "Given the NAME of an Elm package, return a Guix-style package name."
+  (let ((converted
+         (string-join (string-split (string-downcase name) #\/) "-")))
+    (if (string-prefix? "elm-" converted)
+        converted
+        (string-append "elm-" converted))))
+
+(define (elm-package-origin name version hash)
+  "Return an origin for the Elm package NAME at the given VERSION with sha256
+checksum HASH."
+  ;; elm requires this very specific repository structure and tagging regime
+  (origin
+    (method git-fetch)
+    (uri (git-reference
+          (url (string-append "https://github.com/" name))
+          (commit version)))
+    (file-name (git-file-name (elm->package-name name) version))
+    (sha256 hash)))
+
+(define %elm-build-system-modules
+  ;; Build-side modules imported by default.
+  `((guix build elm-build-system)
+    (guix build json)
+    (guix build union)
+    ,@%gnu-build-system-modules))
+
+(define %elm-default-modules
+  ;; Modules in scope in the build-side environment.
+  '((guix build elm-build-system)
+    (guix build utils)
+    (guix build json)
+    (guix build union)))
+
+(define (default-elm)
+  "Return the default Elm package for builds."
+  ;; Lazily resolve the binding to avoid a circular dependency.
+  (let ((elm (resolve-interface '(gnu packages elm))))
+    (module-ref elm 'elm)))
+
+(define* (lower name
+                #:key source inputs native-inputs outputs system target
+                (implicit-elm-package-inputs? #t)
+                (elm (default-elm))
+                #:allow-other-keys
+                #:rest arguments)
+  "Return a bag for NAME."
+  (define private-keywords
+    '(#:target #:implicit-elm-package-inputs? #:elm #:inputs #:native-inputs))
+  (cond
+   (target
+    ;; Cross-compilation is not yet supported.  It should be easy, though,
+    ;; since the build products are all platform-independent.
+    #f)
+   (else
+    (bag
+      (name name)
+      (system system)
+      (host-inputs
+       `(,@(if source
+               `(("source" ,source))
+               '())
+         ,@inputs
+         ("elm" ,elm)
+         ;; TODO: probably don't need most of (standard-packages)
+         ,@(standard-packages)))
+      (outputs outputs)
+      (build elm-build)
+      (arguments (strip-keyword-arguments private-keywords arguments))))))
+
+(define* (elm-build name inputs
+                    #:key
+                    source
+                    (tests? #t)
+                    (phases '%standard-phases)
+                    (outputs '("out"))
+                    (search-paths '())
+                    (system (%current-system))
+                    (guile #f)
+                    (imported-modules %elm-build-system-modules)
+                    (modules %elm-default-modules))
+  "Build SOURCE using ELM."
+  (define builder
+    (with-imported-modules imported-modules
+      #~(begin
+          (use-modules #$@(sexp->gexp modules))
+          (elm-build #:name #$name
+                     #:source #+source
+                     #:system #$system
+                     #:tests? #$tests?
+                     #:phases #$phases
+                     #:outputs #$(outputs->gexp outputs)
+                     #:search-paths '#$(sexp->gexp
+                                        (map search-path-specification->sexp
+                                             search-paths))
+                     #:inputs #$(input-tuples->gexp inputs)))))
+  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
+                                                  system #:graft? #f)))
+    (gexp->derivation name builder
+                      #:system system
+                      #:guile-for-build guile)))
+
+(define elm-build-system
+  (build-system
+    (name 'elm)
+    (description "The Elm build system")
+    (lower lower)))
diff --git a/guix/build/elm-build-system.scm b/guix/build/elm-build-system.scm
new file mode 100644
index 0000000000..b47b16973d
--- /dev/null
+++ b/guix/build/elm-build-system.scm
@@ -0,0 +1,380 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix build elm-build-system)
+  #:use-module ((guix build gnu-build-system) #:prefix gnu:)
+  #:use-module (guix build utils)
+  #:use-module (guix build json)
+  #:use-module (guix build union)
+  #:use-module (ice-9 ftw)
+  #:use-module (ice-9 rdelim)
+  #:use-module (ice-9 regex)
+  #:use-module (ice-9 match)
+  #:use-module (ice-9 popen)
+  #:use-module (ice-9 vlist)
+  #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-26)
+  #:use-module (srfi srfi-71)
+  #:export (%standard-phases
+            patch-application-dependencies
+            patch-json-string-escapes
+            read-offline-registry->vhash
+            elm-build))
+
+;; COMMENTARY:
+;;
+;; Elm draws a sharp distinction between "projects" with `{"type":"package"}`
+;; vs. `{"type":"application"}` in the "elm.json" file: see
+;; <https://github.com/elm/compiler/blob/master/docs/elm.json/package.md> and
+;; <https://github.com/elm/compiler/blob/master/docs/elm.json/application.md>.
+;; For now, `elm-build-system` is designed for "package"s: packaging
+;; "application"s requires ad-hoc replacements for some phases---but see
+;; `patch-application-dependencies`, which helps to work around a known issue
+;; discussed below.  It would be nice to add more streamlined support for
+;; "application"s one we have more experience building them in Guix.  For
+;; example, we could incorporate the `uglifyjs` advice from
+;; <https://github.com/elm/compiler/blob/master/hints/optimize.md>.
+;;
+;; We want building an Elm "package" to produce:
+;;
+;;   - a "docs.json" file with extracted documentation; and
+;;
+;;   - an "artifacts.dat" file with compilation results for use in building
+;;     "package"s and "application"s.
+;;
+;; Unfortunately, there isn't an entry point to the Elm compiler that builds
+;; those files directly.  Building with `elm make` does something different,
+;; more oriented toward development, testing, and building "application"s.  We
+;; work around this limitation by staging the "package" we're building as
+;; though it were already installed in ELM_HOME, generating a trivial Elm
+;; "application" that depends on the "package", and building the
+;; "application", which causes the files for the "package" to be built.
+;;
+;; Much of the ceremony involved is to avoid using `elm` in ways that would
+;; make it try to do network IO beyond the bare minimum functionality for
+;; which we've patched a replacement into our `elm`.  On the other hand, we
+;; get to take advantage of the very regular structure required of Elm
+;; packages.
+;;
+;; *Known issue:* Elm itself supports multiple versions of "package"s
+;; coexisting simultaneously under ELM_HOME, but we do not support this yet.
+;; Sometimes, parallel versions coexisting causes `elm` to try to write to
+;; built "artifacts.dat" files.  For now, two workarounds are possible:
+;;
+;;  - Use `patch-application-dependencies` to rewrite an "application"'s
+;;    "elm.json" file to refer to the versions of its inputs actually
+;;    packaged in Guix.
+;;
+;;  - Use a Guix package transformation to rewrite your "application"'s
+;;    dependencies recursively, so that only one version of each Elm
+;;    "package" is included in your "application"'s build environment.
+;;
+;; Patching `elm` more extensively---perhaps adding an `elm guix`
+;; subcommand`---might let us address these issues more directly.
+;;
+;; CODE:
+;;
+
+(define %essential-elm-packages
+  ;; elm/json isn't essential in a fundamental sense,
+  ;; but it's required for a {"type":"application"},
+  ;; which we are generating to trigger the build
+  '("elm/core" "elm/json"))
+
+(define* (target-elm-version #:optional elm)
+  "Return the version of ELM or whichever 'elm' is in $PATH.
+Return #false if it cannot be determined."
+  (let* ((pipe (open-pipe* OPEN_READ
+                           (or elm "elm")
+                           "--version"))
+         (line (read-line pipe)))
+    (and (zero? (close-pipe pipe))
+         (string? line)
+         line)))
+
+(define* (prepare-elm-home #:key native-inputs inputs #:allow-other-keys)
+  "Set the ELM_HOME environment variable and populate the indicated directory
+with the union of the Elm \"package\" inputs.  Also, set GUIX_ELM_VERSION to
+the version of the Elm compiler in use."
+  (let* ((elm (search-input-file (or native-inputs inputs) "/bin/elm"))
+         (elm-version (target-elm-version elm)))
+    (setenv "GUIX_ELM_VERSION" elm-version)
+    (mkdir "../elm-home")
+    (with-directory-excursion "../elm-home"
+      (union-build elm-version
+                   (search-path-as-list
+                    (list (string-append "share/elm/" elm-version))
+                    (map cdr inputs))
+                   #:create-all-directories? #t)
+      (setenv "ELM_HOME" (getcwd)))))
+
+(define* (stage #:key native-inputs inputs  #:allow-other-keys)
+  "Extract the installable files from the Elm \"package\" into a staging
+directory and link it into the ELM_HOME tree.  Also, set GUIX_ELM_PKG_NAME and
+GUIX_ELM_PKG_VERSION to the name and version, respectively, of the Elm package
+being built, as defined in its \"elm.json\" file."
+  (let* ((elm-version (getenv "GUIX_ELM_VERSION"))
+         (elm-home (getenv "ELM_HOME"))
+         (info (match (call-with-input-file "elm.json" read-json)
+                 (('@ . alist) alist)))
+         (name (assoc-ref info "name"))
+         (version (assoc-ref info "version"))
+         (rel-dir (string-append elm-version "/packages/" name "/" version))
+         (staged-dir (string-append elm-home "/../staged/" rel-dir)))
+    (setenv "GUIX_ELM_PKG_NAME" name)
+    (setenv "GUIX_ELM_PKG_VERSION" version)
+    (mkdir-p staged-dir)
+    (mkdir-p (string-append elm-home "/" (dirname rel-dir)))
+    (symlink staged-dir
+             (string-append elm-home "/" rel-dir))
+    (copy-recursively "src" (string-append staged-dir "/src"))
+    (install-file "elm.json" staged-dir)
+    (install-file "README.md" staged-dir)
+    (when (file-exists? "LICENSE")
+      (install-file "LICENSE" staged-dir))))
+
+(define (patch-json-string-escapes file)
+  "Work around a bug in the Elm compiler's JSON parser by attempting to
+replace REVERSE-SOLIDUS--SOLIDUS escape sequences in FILE with unescaped
+SOLIDUS characters."
+  ;; https://github.com/elm/compiler/issues/2255
+  (substitute* file
+    (("\\\\/")
+     "/")))
+
+(define (directory-list dir)
+  "Like DIRECTORY-LIST from 'racket/base': lists the contents of DIR, not
+including the special \".\" and \"..\" entries."
+  (scandir dir (lambda (f)
+                 (not (member f '("." ".."))))))
+
+(define* (make-offline-registry-file #:key inputs #:allow-other-keys)
+  "Generate an \"offline-package-registry.json\" file and sets
+GUIX_ELM_OFFLINE_REGISTRY_FILE to its path, cooperating with a patch to `elm`
+to avoid attempting to download a list of all published Elm package names and
+versions from the internet."
+  (let* ((elm-home (getenv "ELM_HOME"))
+         (elm-version (getenv "GUIX_ELM_VERSION"))
+         (registry-file
+          (string-append elm-home "/../offline-package-registry.json"))
+         (registry-alist
+          ;; here, we don't need to look up entries, so we build the
+          ;; alist directly, rather than using a vhash
+          (with-directory-excursion
+              (string-append elm-home "/" elm-version "/packages")
+            (append-map (lambda (org)
+                          (with-directory-excursion org
+                            (map (lambda (repo)
+                                   (cons (string-append org "/" repo)
+                                         (directory-list repo)))
+                                 (directory-list "."))))
+                        (directory-list ".")))))
+    (call-with-output-file registry-file
+      (lambda (out)
+        (write-json `(@ ,@registry-alist) out)))
+    (patch-json-string-escapes registry-file)
+    (setenv "GUIX_ELM_OFFLINE_REGISTRY_FILE" registry-file)))
+
+(define (read-offline-registry->vhash)
+  "Return a vhash mapping Elm \"package\" names to lists of available version
+strings."
+  (alist->vhash
+   (match (call-with-input-file (getenv "GUIX_ELM_OFFLINE_REGISTRY_FILE")
+            read-json)
+     (('@ . alist) alist))))
+
+(define (find-indirect-dependencies registry-vhash root-pkg root-version)
+  "Return the recursive dependencies of ROOT-PKG, an Elm \"package\" name, at
+version ROOT-VERSION as an alist mapping Elm \"package\" names to (single)
+versions.  The resulting alist will not include entries for
+%ESSENTIAL-ELM-PACKAGES or for ROOT-PKG itself.  The REGISTRY-VHASH is used in
+conjunction with the ELM_HOME environment variable to find dependencies."
+  (with-directory-excursion
+      (string-append (getenv "ELM_HOME")
+                     "/" (getenv "GUIX_ELM_VERSION")
+                     "/packages")
+    (define (get-dependencies pkg version acc)
+      (let* ((elm-json-alist
+              (match (call-with-input-file
+                         (string-append pkg "/" version "/elm.json")
+                       read-json)
+                (('@ . alist) alist)))
+             (deps-alist
+              (match (assoc-ref elm-json-alist "dependencies")
+                (('@ . alist) alist)))
+             (deps-names
+              (filter-map (match-lambda
+                            ((name . range)
+                             (and (not (member name %essential-elm-packages))
+                                  name)))
+                          deps-alist)))
+        (fold register-dependency acc deps-names)))
+    (define (register-dependency pkg acc)
+      ;; Using vhash-cons unconditionally would add duplicate entries,
+      ;; which would then cause problems when we must emit JSON.
+      ;; Plus, we can avoid needlessly duplicating work.
+      (if (vhash-assoc pkg acc)
+          acc
+          (match (vhash-assoc pkg registry-vhash)
+            ((_ version . _)
+             ;; in the rare case that multiple versions are present,
+             ;; just picking an arbitrary one seems to work well enough for now
+             (get-dependencies pkg version (vhash-cons pkg version acc))))))
+    (vlist->list
+     (get-dependencies root-pkg root-version vlist-null))))
+
+(define* (patch-application-dependencies #:key inputs #:allow-other-keys)
+  "Rewrites the \"elm.json\" file in the working directory---which must be of
+`\"type\":\"application\"`, not `\"type\":\"package\"`---to refer to the
+dependency versions actually provided via Guix.  The
+GUIX_ELM_OFFLINE_REGISTRY_FILE environment variable is used to find available
+versions."
+  (let* ((registry-vhash (read-offline-registry->vhash))
+         (rewrite-dep-version
+          (match-lambda
+            ((name . _)
+             (cons name (match (vhash-assoc name registry-vhash)
+                          ((_ version) ;; no dot
+                           version))))))
+         (rewrite-direct/indirect
+          (match-lambda
+            ;; a little checking to avoid confusing misuse with "package"
+            ;; project dependencies, which have a different shape
+            (((and key (or "direct" "indirect"))
+              '@ . alist)
+             `(,key @ ,@(map rewrite-dep-version alist)))))
+         (rewrite-json-section
+          (match-lambda
+            (((and key (or "dependencies" "test-dependencies"))
+              '@ . alist)
+             `(,key @ ,@(map rewrite-direct/indirect alist)))
+            ((k . v)
+             (cons k v))))
+         (rewrite-elm-json
+          (match-lambda
+            (('@ . alist)
+             `(@ ,@(map rewrite-json-section alist))))))
+    (with-atomic-file-replacement "elm.json"
+      (lambda (in out)
+        (write-json (rewrite-elm-json (read-json in))
+                    out)))
+    (patch-json-string-escapes "elm.json")))
+
+(define* (configure #:key native-inputs inputs #:allow-other-keys)
+  "Generate a trivial Elm \"application\" with a direct dependency on the Elm
+\"package\" currently being built."
+  (let* ((info (match (call-with-input-file "elm.json" read-json)
+                 (('@ . alist) alist)))
+         (name (getenv "GUIX_ELM_PKG_NAME"))
+         (version (getenv "GUIX_ELM_PKG_VERSION"))
+         (elm-home (getenv "ELM_HOME"))
+         (registry-vhash (read-offline-registry->vhash))
+         (app-dir (string-append elm-home "/../fake-app")))
+    (mkdir-p (string-append app-dir "/src"))
+    (with-directory-excursion app-dir
+      (call-with-output-file "elm.json"
+        (lambda (out)
+          (write-json
+           `(@ ("type" . "application")
+               ("source-directories" "src") ;; intentionally no dot
+               ("elm-version" . ,(getenv "GUIX_ELM_VERSION"))
+               ("dependencies"
+                @ ("direct"
+                   @ ,@(map (lambda (pkg)
+                              (match (vhash-assoc pkg registry-vhash)
+                                ((_ pkg-version . _)
+                                 (cons pkg
+                                       (if (equal? pkg name)
+                                           version
+                                           pkg-version)))))
+                            (if (member name %essential-elm-packages)
+                                %essential-elm-packages
+                                (cons name %essential-elm-packages))))
+                  ("indirect"
+                   @ ,@(if (member name %essential-elm-packages)
+                           '()
+                           (find-indirect-dependencies registry-vhash
+                                                       name
+                                                       version))))
+               ("test-dependencies"
+                @ ("direct" @)
+                  ("indirect" @)))
+           out)))
+      (patch-json-string-escapes  "elm.json")
+      (with-output-to-file "src/Main.elm"
+        ;; the most trivial possible elm program
+        (lambda ()
+          (display "module Main exposing (..)
+main : Program () () ()
+main = Platform.worker
+ { init = \\_ -> ( (), Cmd.none )
+ , update = \\_ -> \\_ -> ( (), Cmd.none )
+ , subscriptions = \\_ -> Sub.none }"))))))
+
+(define* (build #:key native-inputs inputs #:allow-other-keys)
+  "Run `elm make` to build the Elm \"application\" generated by CONFIGURE."
+  (with-directory-excursion (string-append (getenv "ELM_HOME") "/../fake-app")
+    (invoke (search-input-file (or native-inputs inputs) "/bin/elm")
+            "make"
+            "src/Main.elm")))
+
+(define* (check #:key tests? #:allow-other-keys)
+  "Does nothing, because the `elm-test` executable has not yet been packaged
+for Guix."
+  (when tests?
+    (display "elm-test has not yet been packaged for Guix\n")))
+
+(define* (install #:key outputs #:allow-other-keys)
+  "Installs the contents of the directory generated by STAGE, including any
+files added by BUILD, to the Guix package output."
+  (copy-recursively
+   (string-append (getenv "ELM_HOME") "/../staged")
+   (string-append (assoc-ref outputs "out") "/share/elm")))
+
+(define* (validate-compiled #:key outputs #:allow-other-keys)
+  "Checks that the files \"artifacts.dat\" and \"docs.json\" have been
+installed."
+  (let ((base (string-append "/share/elm/"
+                             (getenv "GUIX_ELM_VERSION")
+                             "/packages/"
+                             (getenv "GUIX_ELM_PKG_NAME")
+                             "/"
+                             (getenv "GUIX_ELM_PKG_VERSION")))
+        (expected '("artifacts.dat" "docs.json")))
+    (for-each (lambda (name)
+                (search-input-file outputs (string-append base "/" name)))
+              expected)))
+
+(define %standard-phases
+  (modify-phases gnu:%standard-phases
+    (add-after 'unpack 'prepare-elm-home prepare-elm-home)
+    (delete 'bootstrap)
+    (add-after 'patch-source-shebangs 'stage stage)
+    (add-after 'stage 'make-offline-registry-file make-offline-registry-file)
+    (replace 'configure configure)
+    (delete 'patch-generated-file-shebangs)
+    (replace 'build build)
+    (replace 'check check)
+    (replace 'install install)
+    (add-before 'validate-documentation-location 'validate-compiled
+      validate-compiled)))
+
+(define* (elm-build #:key inputs (phases %standard-phases)
+                    #:allow-other-keys #:rest args)
+  "Builds the given Elm project, applying all of the PHASES in order."
+  (apply gnu:gnu-build #:inputs inputs #:phases phases args))
diff --git a/guix/import/elm.scm b/guix/import/elm.scm
new file mode 100644
index 0000000000..ef0a31207c
--- /dev/null
+++ b/guix/import/elm.scm
@@ -0,0 +1,148 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix import elm)
+  #:use-module (ice-9 match)
+  #:use-module (ice-9 regex)
+  #:use-module (ice-9 vlist)
+  #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-11)
+  #:use-module (srfi srfi-26)
+  #:use-module (srfi srfi-34)
+  #:use-module (srfi srfi-35)
+  #:use-module (guix utils)
+  #:use-module (guix base32)
+  #:use-module (guix hash)
+  #:use-module (guix memoization)
+  #:use-module (guix diagnostics)
+  #:use-module (guix i18n)
+  #:use-module ((guix ui) #:select (display-hint))
+  #:use-module ((guix build utils)
+                #:select ((package-name->name+version
+                           . hyphen-package-name->name+version)
+                          find-files
+                          invoke))
+  #:use-module (guix import utils)
+  #:use-module (guix git)
+  #:use-module (guix import json)
+  #:autoload   (gcrypt hash) (hash-algorithm sha256)
+  #:use-module (json)
+  #:use-module (guix packages)
+  #:use-module (guix upstream)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix build-system elm)
+  #:export (elm-recursive-import
+            elm->guix-package))
+
+(define elm-package-registry
+  ;; It is much nicer to fetch this small (< 40 KB gzipped)
+  ;; file once than to do many HTTP requests.
+  (mlambda ()
+    "Fetch the Elm package registry, represented as a vhash mapping package
+names to lists of available versions, sorted from latest to oldest."
+    (let ((url "https://package.elm-lang.org/all-packages"))
+      (cond
+       ((json-fetch url)
+        => (lambda (alist)
+             (fold (lambda (entry vh)
+                     (match entry
+                       ((name . vec)
+                        (vhash-cons name
+                                    (sort (vector->list vec) version>?)
+                                    vh))))
+                   vlist-null
+                   alist)))
+       (else
+        (raise (formatted-message
+                (G_ "error downloading Elm package registry from ~a")
+                url)))))))
+
+(define (make-elm-package-sexp name version)
+  "Return two values: the `package' s-expression for the Elm package with the
+given NAME and VERSION, and a list of Elm packages it depends on."
+  (define-values (checkout _commit _relation)
+    ;; Elm requires that packages use this very specific format
+    (update-cached-checkout (string-append "https://github.com/" name)
+                            #:ref `(tag . ,version)))
+  (define info
+    (call-with-input-file (string-append checkout "/elm.json")
+      json->scm))
+  (define (get-deps key)
+    (cond
+     ((assoc-ref info key)
+      => (cut map car <>))
+     (else
+      '())))
+  (define dependencies
+    (get-deps "dependencies"))
+  (define test-dependencies
+    (get-deps "test-dependencies"))
+  (values
+   `(package
+      (name ,(elm->package-name name))
+      (version ,version)
+      (source (elm-package-origin
+               ,name
+               version ;; no ,
+               (base32
+                ,(bytevector->nix-base32-string
+                  (file-hash* checkout
+                              #:algorithm (hash-algorithm sha256)
+                              #:recursive? #t)))))
+      (build-system elm-build-system)
+      ,@(maybe-propagated-inputs (map elm->package-name dependencies))
+      ,@(maybe-inputs (map elm->package-name test-dependencies))
+      (home-page ,(string-append "https://package.elm-lang.org/packages/"
+                                 name "/" version))
+      (synopsis ,(assoc-ref info "summary"))
+      (description
+       ;; Try to use the first paragraph of README.md (which Elm requires),
+       ;; or fall back to summary otherwise.
+       ,(beautify-description
+         (match (chunk-lines (call-with-input-file
+                                 (string-append checkout "/README.md")
+                               read-lines))
+           ((_ par . _)
+            (string-join par " "))
+           (_
+            (assoc-ref info "summary")))))
+      (license ,(spdx-string->license (assoc-ref info "license")))
+      ;; so we know where the "/" goes
+      (properties '((upstream-name . ,name))))
+   (append dependencies test-dependencies)))
+
+(define elm->guix-package
+  (memoize
+   (lambda* (package-name #:key repo version)
+     "Fetch the metadata for PACKAGE-NAME, an Elm package registered at
+package.elm.org, and return two values: the `package' s-expression
+corresponding to that package (or #f on failure) and a list of Elm
+dependencies.."
+     (cond
+      ((vhash-assoc package-name (elm-package-registry))
+       => (match-lambda
+            ((_found latest . _versions)
+             (make-elm-package-sexp package-name (or version latest)))))
+      (else
+       (values #f '()))))))
+
+(define* (elm-recursive-import package-name #:optional version)
+  (recursive-import package-name
+                    #:version version
+                    #:repo->guix-package elm->guix-package
+                    #:guix-name elm->package-name))
diff --git a/guix/scripts/import.scm b/guix/scripts/import.scm
index 40fa6759ae..fa79f3211e 100644
--- a/guix/scripts/import.scm
+++ b/guix/scripts/import.scm
@@ -5,6 +5,7 @@
 ;;; Copyright © 2019 Ricardo Wurmus <rekado@HIDDEN>
 ;;; Copyright © 2021 Simon Tournier <zimon.toutoune@HIDDEN>
 ;;; Copyright © 2021 Xinglu Chen <public@HIDDEN>
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -80,7 +81,7 @@ (define %standard-import-options '())
 
 (define importers '("gnu" "pypi" "cpan" "hackage" "stackage" "egg" "elpa"
                     "gem" "go" "cran" "crate" "texlive" "json" "opam"
-                    "minetest"))
+                    "minetest" "elm"))
 
 (define (resolve-importer name)
   (let ((module (resolve-interface
diff --git a/guix/scripts/import/elm.scm b/guix/scripts/import/elm.scm
new file mode 100644
index 0000000000..68dcbf1070
--- /dev/null
+++ b/guix/scripts/import/elm.scm
@@ -0,0 +1,107 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix scripts import elm)
+  #:use-module (guix ui)
+  #:use-module (guix utils)
+  #:use-module (guix scripts)
+  #:use-module (guix import elm)
+  #:use-module (guix scripts import)
+  #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-11)
+  #:use-module (srfi srfi-37)
+  #:use-module (srfi srfi-71)
+  #:use-module (ice-9 match)
+  #:use-module (ice-9 format)
+  #:export (guix-import-elm))
+
+
+;;;
+;;; Command-line options.
+;;;
+
+(define %default-options
+  '())
+
+(define (show-help)
+  (display (G_ "Usage: guix import elm PACKAGE-NAME
+
+Import and convert the Elm package PACKAGE-NAME.  Optionally, a version
+can be specified after the arobas (@) character.\n"))
+  (display (G_ "
+  -h, --help             display this help and exit"))
+  (display (G_ "
+  -r, --recursive        import packages recursively"))
+  (display (G_ "
+  -V, --version          display version information and exit"))
+  (newline)
+  (show-bug-report-information))
+
+(define %options
+  ;; Specification of the command-line options.
+  (cons* (option '(#\h "help") #f #f
+                 (lambda args
+                   (show-help)
+                   (exit 0)))
+         (option '(#\V "version") #f #f
+                 (lambda args
+                   (show-version-and-exit "guix import elm")))
+         (option '(#\r "recursive") #f #f
+                 (lambda (opt name arg result)
+                   (alist-cons 'recursive #t result)))
+         %standard-import-options))
+
+
+;;;
+;;; Entry point.
+;;;
+
+(define (guix-import-elm . args)
+  (define (parse-options)
+    ;; Return the alist of option values.
+    (parse-command-line args %options (list %default-options)
+                        #:build-options? #f))
+
+  (let* ((opts (parse-options))
+         (args (filter-map (match-lambda
+                             (('argument . value)
+                              value)
+                             (_ #f))
+                           (reverse opts))))
+    (match args
+      ((spec)
+       (with-error-handling
+         (let ((name version (package-name->name+version spec)))
+           (if (assoc-ref opts 'recursive)
+               ;; Recursive import
+               (map (match-lambda
+                      ((and ('package ('name name) . rest) pkg)
+                       `(define-public ,(string->symbol name)
+                          ,pkg))
+                      (_ #f))
+                    (elm-recursive-import name version))
+               ;; Single import
+               (let ((sexp (elm->guix-package name #:version version)))
+                 (unless sexp
+                   (leave (G_ "failed to download meta-data for package '~a'~%")
+                          name))
+                 sexp)))))
+      (()
+       (leave (G_ "too few arguments~%")))
+      ((many ...)
+       (leave (G_ "too many arguments~%"))))))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:33:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:33:02 2022
Received: from localhost ([127.0.0.1]:44427 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxLC-0005xW-Dv
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:02 -0400
Received: from mail-vs1-f48.google.com ([209.85.217.48]:46763)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxLB-0005wl-1K
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:33:01 -0400
Received: by mail-vs1-f48.google.com with SMTP id b128so17240vsc.13
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:33:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=rnEMeeT+h4IUb6m4c7+A3kBf0QAJe3fEYkrijSsECh8=;
 b=bHkrxTOroInDcuxuAELSRdzZvF+cH2/gr3qcwDfCaZvQrIIsbXyWO3Ny6EpjU4Hj/b
 kFQFe+40LpRCcUPWiERe1hZOUnWhEvK2Pkupd5Lg10MAMYNjl+fgf4xQPdz/oUDBwTF4
 Xvprov7D64GSqZYvMyliNw4qfVV5yRHqSuqOh3Z3cQ35EUMGPnXM3LOx8TiYUwkpWu0D
 UxrdJVWVF0BALKXPSV5Q5Gf4WidHb3/7ydgUDjFldrhLxqazqxjO7woilK3kWE4mXyb8
 1bZdHazPz+9ckxTJoyjEKL/VBOP/GiKEZHyBwWJE4mfVVy0EFAHH6ihSzt9dfGHhO6FF
 n8wA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=rnEMeeT+h4IUb6m4c7+A3kBf0QAJe3fEYkrijSsECh8=;
 b=qrN+PuM9AsfbptUyuizH8aJMUBAsabvRIoDsGPHYhpU6dCQ+Rjpak65EcjvVKDFLGX
 1xJ4S0G8GCoSWLYcWKq+NT83eIC5llTltGUjiKXg/WTWNGyULfjH+ymuoS2uktE5vQCJ
 2rl8WwbXSFervf0MDAQUTValfknXuP6lMsbCQLrNkw6hYvjzq8BivBXOCLAwvlmKW5gN
 B/VhJa9lTq4GKHb5wZDk/5vLOeslPVGxybYEK/+9NLuGXmgfvIqIUVhtGEdR42eGVywp
 olU9WMapAUPwhXCQQ5nz7BOAUdyNhnCEeV7Acgi9TywgX9O8Ihva96rE4NwgrPrDGmGF
 qGdQ==
X-Gm-Message-State: AOAM530vufhtvjlJS93E10DrbNQySI5XlEHqXbpFsv2plC55azuZ3T3q
 e3AVwY1dH8dMBnUL8AoEKn46NhlDOgcUCW/4
X-Google-Smtp-Source: ABdhPJyuiNwBmSMIXGz3WFy9wnvNsKzzhQrnRumzEwkfBhHMrb2fhXxtBolx8wF7rXjFVYG54gamJA==
X-Received: by 2002:a05:6102:e53:b0:32a:120f:3ef0 with SMTP id
 p19-20020a0561020e5300b0032a120f3ef0mr5507670vst.14.1650411175453; 
 Tue, 19 Apr 2022 16:32:55 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 v24-20020a67f6d8000000b003208cfd16d5sm181020vso.33.2022.04.19.16.32.54
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:32:54 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 02/30] gnu: elm: Rename package to match the command.
Date: Tue, 19 Apr 2022 19:31:46 -0400
Message-Id: <20220419233214.275789-2-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419233214.275789-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
 <20220419233214.275789-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.6 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/elm.scm (elm-compiler): Rename to ...
(elm): ... this variable.
[description]: Tweak.
---
 gnu/packages/elm.scm | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index 708c1cf0d2..be2e4ebcbd 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -33,13 +33,13 @@ (define-module (gnu packages elm)
 ;; The `elm` build usually calls out to itself via Template Haskell to compile
 ;; the `elm reactor` web app (which depends on additional Elm packages) and
 ;; embeds the static files into itself.  The reactor isn't required to compile
-;; elm applications, so we want to skip it from the bootstrap package, but we
+;; Elm applications, so we want to skip it from the bootstrap package, but we
 ;; also want to be able to enable it once we can build it.  We patch Elm to
-;; instead look for the files on disk relative to the executable and exit with
-;; a useful error message if they aren't there.
-(define-public elm-compiler
+;; instead look for the files on disk relative to the executable and to have
+;; `elm reactor` exit with a useful error message if they aren't there.
+(define-public elm
   (package
-    (name "elm-compiler")
+    (name "elm")
     (version "0.19.1")
     (source
      (origin
@@ -91,7 +91,7 @@ (define-public elm-compiler
     (home-page "https://elm-lang.org")
     (synopsis "Programming language for Web applications")
     (description
-     "This package provides Elm, a statically-typed functional programming
-language for the browser.  It includes commands for developers such as
-@command{elm make} and @command{elm repl}.")
+     "Elm is a statically-typed, purely-functional programming language for
+the browser.  The @command{elm} exectable includes commands for developers
+such as @command{elm make} and @command{elm repl}.")
     (license license:bsd-3)))
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at 55030) by debbugs.gnu.org; 19 Apr 2022 23:32:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:32:59 2022
Received: from localhost ([127.0.0.1]:44423 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxL1-0005wf-Qp
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:32:59 -0400
Received: from mail-vs1-f54.google.com ([209.85.217.54]:46757)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxKz-0005wR-Ql
 for 55030 <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:32:50 -0400
Received: by mail-vs1-f54.google.com with SMTP id b128so16986vsc.13
 for <55030 <at> debbugs.gnu.org>; Tue, 19 Apr 2022 16:32:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=HwzclTGL+yXB+JUD0bhutc8NXH7Ym+6fKhe/Hd6Ldek=;
 b=Y4oHHhwUnOnc15EARvd7ynX9Eucjyw2OG/ra3slPEfASUMf9S7jU1acIcZMSPgKPLH
 0+KwcovDe/pP8h+ivnyxGDES9qSPlnw0xcDARPcCNd75L7PcSwWd2MWnN2Ht11UgxMZp
 kjIGw4hvmcIjdWQ+ENZ3g95RFJl5WEsVEfkvBLFQURbTuzFKR5uG8rwevTy3PZIuwhGz
 QmF08ATyw/mUOyz+wTKH4T6ap9UFUFRVBePzPwWQf8ETSqvn+foXvJ1aybUC3ej9hLYj
 yCmsr7nH0wJPqRdnUyw/EO28uWrzefNSmYiSRGQYSkhN8zxoYaP8MEJBOA+YFyH5yQqf
 P58Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=HwzclTGL+yXB+JUD0bhutc8NXH7Ym+6fKhe/Hd6Ldek=;
 b=OatWUgtwym8toHuHoo0T3hukVN3M8lKipjkKGRkhLPOrA24YThQYzLujr5jvMv/BYd
 oihKad5E/BAml94mhP/5hcnhPNcPhPQxIvOX1IC4iTArPcRN9YYKJIRjeU+29y7Rw01c
 UhRYbRPTPbdbKbGCFyLh8h9wCsIW1YCVI/BM9Idte6Bby6J/IWoUpZJIndbZfBezBxEs
 ugSK0VDNHiYfDKVSU8BRgA+S2PL1kU+c52PCYsBDyiQLQfy97wJOuzooJ06jJUNDFDP2
 3KZLaylL8pG9RxW//XPi9+soEcVw7CtwRpnsMEOTsnD8uzwiup1kfLSkbGi/Hharg7BI
 6q/A==
X-Gm-Message-State: AOAM5313fgrskQyl/L2A5TltOfWlq0sAnJwUANJjv3+HCkpP1P1poy6Z
 3zle3p24SCvEMKUSHy3n1XcT/9HPlk8hqez+
X-Google-Smtp-Source: ABdhPJxwoIr/0O6jr6i4vR46tC+LE7qEYui0GotrQlkbaUs7Vy2+4u82JIGdUTX665gD2h19y9Y17g==
X-Received: by 2002:a67:b607:0:b0:32a:1dfa:3fdd with SMTP id
 d7-20020a67b607000000b0032a1dfa3fddmr5728310vsm.55.1650411163871; 
 Tue, 19 Apr 2022 16:32:43 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 o11-20020ab0150b000000b0035ccb91e501sm170372uae.36.2022.04.19.16.32.42
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:32:43 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: 55030 <at> debbugs.gnu.org
Subject: [PATCH 01/30] gnu: elm-compiler: Update to 0.19.1.
Date: Tue, 19 Apr 2022 19:31:45 -0400
Message-Id: <20220419233214.275789-1-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
In-Reply-To: <20220419232736.272970-1-philip@HIDDEN>
References: <20220419232736.272970-1-philip@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.7 (/)
X-Debbugs-Envelope-To: 55030
Cc: Philip McGrath <philip@HIDDEN>
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: -0.4 (/)

* gnu/packages/patches/elm-compiler-disable-reactor.patch,
gnu/packages/patches/elm-compiler-fix-map-key.patch: Delete files.
* gnu/packages/patches/elm-reactor-static-files.patch: New file.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
* gnu/packages/elm.scm (elm-compiler): Update to 0.19.1.
[origin]<patches>: Remove stale patches. Add new patch.
[arguments]: Use G-expressions. Add #:configure-flags for new patch.
[inputs]: Remove ghc-file-embed. Add ghc-filelock.
---
 gnu/local.mk                                  |   3 +-
 gnu/packages/elm.scm                          |  42 +--
 .../elm-compiler-disable-reactor.patch        |  71 -----
 .../patches/elm-compiler-fix-map-key.patch    |  38 ---
 .../patches/elm-reactor-static-files.patch    | 251 ++++++++++++++++++
 5 files changed, 278 insertions(+), 127 deletions(-)
 delete mode 100644 gnu/packages/patches/elm-compiler-disable-reactor.patch
 delete mode 100644 gnu/packages/patches/elm-compiler-fix-map-key.patch
 create mode 100644 gnu/packages/patches/elm-reactor-static-files.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 0e721236d9..2af4d018ba 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1024,8 +1024,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/einstein-build.patch			\
   %D%/packages/patches/elfutils-tests-ptrace.patch		\
   %D%/packages/patches/elixir-path-length.patch			\
-  %D%/packages/patches/elm-compiler-disable-reactor.patch	\
-  %D%/packages/patches/elm-compiler-fix-map-key.patch		\
+  %D%/packages/patches/elm-reactor-static-files.patch		\
   %D%/packages/patches/elogind-revert-polkit-detection.patch	\
   %D%/packages/patches/emacs-exec-path.patch			\
   %D%/packages/patches/emacs-fix-scheme-indent-function.patch	\
diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index ca7c61041b..708c1cf0d2 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2019 Robert Vollmert <rob@HIDDEN>
+;;; Copyright © 2022 Philip McGrath <philip@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -24,18 +25,22 @@ (define-module (gnu packages elm)
   #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages haskell-web)
   #:use-module (guix build-system haskell)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages))
 
-;; The full elm build calls out to itself via Template Haskell to
-;; compile the elm reactor web app. elm reactor isn't required to
-;; compile elm applications, so we take this part out of this
-;; bootstrap package.
+;; The `elm` build usually calls out to itself via Template Haskell to compile
+;; the `elm reactor` web app (which depends on additional Elm packages) and
+;; embeds the static files into itself.  The reactor isn't required to compile
+;; elm applications, so we want to skip it from the bootstrap package, but we
+;; also want to be able to enable it once we can build it.  We patch Elm to
+;; instead look for the files on disk relative to the executable and exit with
+;; a useful error message if they aren't there.
 (define-public elm-compiler
   (package
     (name "elm-compiler")
-    (version "0.19.0")
+    (version "0.19.1")
     (source
      (origin
        (method git-fetch)
@@ -44,24 +49,29 @@ (define-public elm-compiler
              (url "https://github.com/elm/compiler/")
              (commit version)))
        (sha256
-        (base32 "0s93z9vr0vp5w894ghc5s34nsq09sg1msf59zfiba87sid5vgjqy"))
+        (base32 "1rdg3xp3js9xadclk3cdypkscm5wahgsfmm4ldcw3xswzhw6ri8w"))
        (patches
-        (search-patches "elm-compiler-disable-reactor.patch"
-                        "elm-compiler-fix-map-key.patch"))))
+        (search-patches "elm-reactor-static-files.patch"))))
     (build-system haskell-build-system)
     (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (add-before 'configure 'update-constraints
-           (lambda _
-             (substitute* "elm.cabal"
-               (("(ansi-terminal|containers|network|http-client|language-glsl)\\s+[^,]+" all dep)
-                dep)))))))
+     (list
+      #:configure-flags
+      #~(list (string-append "--ghc-option=-DGUIX_REACTOR_STATIC_REL_ROOT="
+                             "\"../share/elm/reactor-"
+                             #$(package-version this-package)
+                             "\""))
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-before 'configure 'update-constraints
+            (lambda _
+              (substitute* "elm.cabal"
+                (("(ansi-terminal|containers|network|http-client|language-glsl)\\s+[^,]+" all dep)
+                 dep)))))))
     (inputs
      (list ghc-ansi-terminal
            ghc-ansi-wl-pprint
            ghc-edit-distance
-           ghc-file-embed
+           ghc-filelock
            ghc-http
            ghc-http-client
            ghc-http-client-tls
diff --git a/gnu/packages/patches/elm-compiler-disable-reactor.patch b/gnu/packages/patches/elm-compiler-disable-reactor.patch
deleted file mode 100644
index 9871b55e8d..0000000000
--- a/gnu/packages/patches/elm-compiler-disable-reactor.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-commit 20d80e2323b565a36751c9455e535d8f73fa32f7
-Author: Robert Vollmert <rob@HIDDEN>
-Date:   Fri Jun 14 16:05:47 2019 +0200
-
-    disable reactor
-
-diff --git a/elm.cabal b/elm.cabal
-index c75f9689..ece63c46 100644
---- a/elm.cabal
-+++ b/elm.cabal
-@@ -45,9 +45,6 @@ Executable elm
-         builder/src
-         ui/terminal/src
- 
--    other-extensions:
--        TemplateHaskell
--
-     Main-Is:
-         Main.hs
- 
-@@ -56,8 +53,6 @@ Executable elm
-         Develop
-         Develop.Generate.Help
-         Develop.Generate.Index
--        Develop.StaticFiles
--        Develop.StaticFiles.Build
-         Diff
-         Init
-         Install
-diff --git a/ui/terminal/src/Develop.hs b/ui/terminal/src/Develop.hs
-index 4b2252e1..7ed7716e 100644
---- a/ui/terminal/src/Develop.hs
-+++ b/ui/terminal/src/Develop.hs
-@@ -23,7 +23,6 @@ import Snap.Util.FileServe
- import qualified Elm.Project as Project
- import qualified Develop.Generate.Help as Generate
- import qualified Develop.Generate.Index as Index
--import qualified Develop.StaticFiles as StaticFiles
- import qualified Generate.Output as Output
- import qualified Json.Encode as Encode
- import qualified Reporting.Exit as Exit
-@@ -219,16 +218,7 @@ compileToHtmlBuilder mode file =
- 
- 
- serveAssets :: Snap ()
--serveAssets =
--  do  file <- getSafePath
--      case StaticFiles.lookup file of
--        Nothing ->
--          pass
--
--        Just (content, mimeType) ->
--          do  modifyResponse (setContentType (mimeType <> ";charset=utf-8"))
--              writeBS content
--
-+serveAssets = pass
- 
- 
- -- MIME TYPES
-diff --git a/ui/terminal/src/Main.hs b/terminal/src/Main.hs
-index 7000f3ca..2c76965a 100644
---- a/ui/terminal/src/Main.hs
-+++ b/ui/terminal/src/Main.hs
-@@ -39,7 +39,6 @@ main =
-       complex intro outro
-         [ repl
-         , init
--        , reactor
-         , make
-         , install
-         , bump
diff --git a/gnu/packages/patches/elm-compiler-fix-map-key.patch b/gnu/packages/patches/elm-compiler-fix-map-key.patch
deleted file mode 100644
index 4f05ded530..0000000000
--- a/gnu/packages/patches/elm-compiler-fix-map-key.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-commit e3512d887df41a8162c3e361171c04beca08415b
-Author: Tom Stejskal <tom.stejskal@HIDDEN>
-Date:   Mon Nov 19 20:09:43 2018 +0100
-
-    Fix Map.!: given key is not an element in the map
-
-diff --git a/compiler/src/Elm/Compiler/Type/Extract.hs b/compiler/src/Elm/Compiler/Type/Extract.hs
-index 1aafe1d4..99763392 100644
---- a/compiler/src/Elm/Compiler/Type/Extract.hs
-+++ b/compiler/src/Elm/Compiler/Type/Extract.hs
-@@ -10,6 +10,7 @@ module Elm.Compiler.Type.Extract
- 
- 
- import Data.Map ((!))
-+import qualified Data.Map as Map
- import qualified Data.Maybe as Maybe
- import qualified Data.Set as Set
- 
-@@ -134,11 +135,15 @@ extractUnion interfaces (Opt.Global home name) =
-     else
-       let
-         pname = toPublicName home name
--        unions = I._unions (interfaces ! home)
-+        maybeUnions = I._unions <$> Map.lookup home interfaces
-       in
--      case I.toUnionInternals (unions ! name) of
--        Can.Union vars ctors _ _ ->
--          T.Union pname vars <$> traverse extractCtor ctors
-+      case Map.lookup name =<< maybeUnions of
-+        Just union ->
-+          case I.toUnionInternals union of
-+            Can.Union vars ctors _ _ ->
-+              T.Union pname vars <$> traverse extractCtor ctors
-+        Nothing ->
-+          return $ T.Union pname [] []
- 
- 
- extractCtor :: Can.Ctor -> Extractor (N.Name, [T.Type])
diff --git a/gnu/packages/patches/elm-reactor-static-files.patch b/gnu/packages/patches/elm-reactor-static-files.patch
new file mode 100644
index 0000000000..94c4aa0cd1
--- /dev/null
+++ b/gnu/packages/patches/elm-reactor-static-files.patch
@@ -0,0 +1,251 @@
+From 41d219a29b03f3114af7a0521c8b2dbbb487c3e1 Mon Sep 17 00:00:00 2001
+From: Philip McGrath <philip@HIDDEN>
+Date: Wed, 13 Apr 2022 18:45:58 -0400
+Subject: [PATCH] reactor: look for static files relative to executable
+
+Must built with `-DGUIX_REACTOR_STATIC_REL_ROOT="../path/to/reactor"`.
+
+This lets us build a version of Elm without the `elm reactor` for
+bootstrapping, then simply put the files in place in the final package.
+---
+ elm.cabal                                 |  2 +-
+ terminal/src/Develop.hs                   | 32 +++++++++++----
+ terminal/src/Develop/StaticFiles.hs       | 37 ++++++++++-------
+ terminal/src/Develop/StaticFiles/Build.hs | 50 ++++++++++++++---------
+ 4 files changed, 79 insertions(+), 42 deletions(-)
+
+diff --git a/elm.cabal b/elm.cabal
+index bf1cfcf0..93161072 100644
+--- a/elm.cabal
++++ b/elm.cabal
+@@ -50,6 +50,7 @@ Executable elm
+ 
+     other-extensions:
+         TemplateHaskell
++        CPP
+ 
+     Main-Is:
+         Main.hs
+@@ -211,7 +212,6 @@ Executable elm
+         containers >= 0.5.8.2 && < 0.6,
+         directory >= 1.2.3.0 && < 2.0,
+         edit-distance >= 0.2 && < 0.3,
+-        file-embed,
+         filelock,
+         filepath >= 1 && < 2.0,
+         ghc-prim >= 0.5.2,
+diff --git a/terminal/src/Develop.hs b/terminal/src/Develop.hs
+index 00339364..6855b03e 100644
+--- a/terminal/src/Develop.hs
++++ b/terminal/src/Develop.hs
+@@ -33,6 +33,7 @@ import qualified Reporting.Exit as Exit
+ import qualified Reporting.Task as Task
+ import qualified Stuff
+ 
++import System.Exit as SysExit
+ 
+ 
+ -- RUN THE DEV SERVER
+@@ -45,13 +46,29 @@ data Flags =
+ 
+ 
+ run :: () -> Flags -> IO ()
+-run () (Flags maybePort) =
++run () flags = do
++  frontEnd <- StaticFiles.prepare
++  case frontEnd of
++    Right lookup ->
++      reallyRun lookup flags
++    Left missing ->
++      SysExit.die $ unlines
++      [ "The `reactor` command is not available."
++      , ""
++      , "On Guix, these files are needed for `elm reactor` to work,"
++      , "but they are missing:"
++      , ""
++      , unlines (map (\pth -> "    " ++ (show pth)) missing)
++      ]
++
++reallyRun :: StaticFiles.Lookup -> Flags -> IO ()
++reallyRun lookup (Flags maybePort) =
+   do  let port = maybe 8000 id maybePort
+       putStrLn $ "Go to http://localhost:" ++ show port ++ " to see your project dashboard."
+       httpServe (config port) $
+         serveFiles
+         <|> serveDirectoryWith directoryConfig "."
+-        <|> serveAssets
++        <|> serveAssets lookup
+         <|> error404
+ 
+ 
+@@ -169,16 +186,15 @@ compile path =
+ -- SERVE STATIC ASSETS
+ 
+ 
+-serveAssets :: Snap ()
+-serveAssets =
++serveAssets :: StaticFiles.Lookup -> Snap ()
++serveAssets lookup =
+   do  path <- getSafePath
+-      case StaticFiles.lookup path of
++      case lookup path of
+         Nothing ->
+           pass
+ 
+-        Just (content, mimeType) ->
+-          do  modifyResponse (setContentType (mimeType <> ";charset=utf-8"))
+-              writeBS content
++        Just (fsPath, mimeType) ->
++          serveFileAs (mimeType <> ";charset=utf-8") fsPath
+ 
+ 
+ 
+diff --git a/terminal/src/Develop/StaticFiles.hs b/terminal/src/Develop/StaticFiles.hs
+index 94ee72dc..3227d617 100644
+--- a/terminal/src/Develop/StaticFiles.hs
++++ b/terminal/src/Develop/StaticFiles.hs
+@@ -2,7 +2,8 @@
+ {-# LANGUAGE OverloadedStrings #-}
+ {-# LANGUAGE TemplateHaskell #-}
+ module Develop.StaticFiles
+-  ( lookup
++  ( prepare
++  , Lookup
+   , cssPath
+   , elmPath
+   , waitingPath
+@@ -11,9 +12,7 @@ module Develop.StaticFiles
+ 
+ import Prelude hiding (lookup)
+ import qualified Data.ByteString as BS
+-import Data.FileEmbed (bsToExp)
+ import qualified Data.HashMap.Strict as HM
+-import Language.Haskell.TH (runIO)
+ import System.FilePath ((</>))
+ 
+ import qualified Develop.StaticFiles.Build as Build
+@@ -26,20 +25,29 @@ import qualified Develop.StaticFiles.Build as Build
+ type MimeType =
+   BS.ByteString
+ 
++type Lookup = FilePath -> Maybe (FilePath, MimeType)
+ 
+-lookup :: FilePath -> Maybe (BS.ByteString, MimeType)
+-lookup path =
++prepare :: IO (Either [FilePath] Lookup)
++prepare = do
++  found <- Build.findReactorFrontEnd expectedFiles
++  return $ case found of
++    Left missing ->
++      Left missing
++    Right resolved ->
++      Right (mkLookup (HM.fromList resolved))
++
++mkLookup :: HM.HashMap FilePath (FilePath, MimeType) -> Lookup
++mkLookup dict path =
+   HM.lookup path dict
+ 
+ 
+-dict :: HM.HashMap FilePath (BS.ByteString, MimeType)
+-dict =
+-  HM.fromList
+-    [ faviconPath  ==> (favicon , "image/x-icon")
+-    , elmPath      ==> (elm     , "application/javascript")
+-    , cssPath      ==> (css     , "text/css")
+-    , codeFontPath ==> (codeFont, "font/ttf")
+-    , sansFontPath ==> (sansFont, "font/ttf")
++expectedFiles :: [(FilePath, MimeType)]
++expectedFiles =
++    [ faviconPath  ==> "image/x-icon"
++    , elmPath      ==> "application/javascript"
++    , cssPath      ==> "text/css"
++    , codeFontPath ==> "font/ttf"
++    , sansFontPath ==> "font/ttf"
+     ]
+ 
+ 
+@@ -82,7 +90,7 @@ sansFontPath =
+   "_elm" </> "source-sans-pro.ttf"
+ 
+ 
+-
++{-
+ -- ELM
+ 
+ 
+@@ -121,3 +129,4 @@ sansFont =
+ favicon :: BS.ByteString
+ favicon =
+   $(bsToExp =<< runIO (Build.readAsset "favicon.ico"))
++-}
+diff --git a/terminal/src/Develop/StaticFiles/Build.hs b/terminal/src/Develop/StaticFiles/Build.hs
+index c61fae57..c39b08b0 100644
+--- a/terminal/src/Develop/StaticFiles/Build.hs
++++ b/terminal/src/Develop/StaticFiles/Build.hs
+@@ -1,28 +1,39 @@
+ {-# LANGUAGE OverloadedStrings #-}
++{-# LANGUAGE CPP #-}
+ module Develop.StaticFiles.Build
+-  ( readAsset
+-  , buildReactorFrontEnd
++  ( findReactorFrontEnd
+   )
+   where
+ 
+-
+-import qualified Data.ByteString as BS
+-import qualified Data.ByteString.Builder as B
+-import qualified Data.ByteString.Lazy as LBS
+-import qualified Data.NonEmptyList as NE
+ import qualified System.Directory as Dir
+-import System.FilePath ((</>))
+-
+-import qualified BackgroundWriter as BW
+-import qualified Build
+-import qualified Elm.Details as Details
+-import qualified Generate
+-import qualified Reporting
+-import qualified Reporting.Exit as Exit
+-import qualified Reporting.Task as Task
+-
+-
+-
++import System.FilePath ((</>), takeDirectory)
++import System.Environment (getExecutablePath)
++import Data.Either as Either
++
++reactorStaticRelRoot :: FilePath
++reactorStaticRelRoot = GUIX_REACTOR_STATIC_REL_ROOT
++
++type Resolved a = (FilePath, (FilePath, a))
++
++findReactorFrontEnd :: [(FilePath, a)] -> IO (Either [FilePath] [Resolved a])
++findReactorFrontEnd specs = do
++  exe <- getExecutablePath
++  let dir = takeDirectory exe </> reactorStaticRelRoot
++  dirExists <- Dir.doesDirectoryExist dir
++  files <- sequence (map (findFile dir) specs)
++  return $ case Either.lefts files of
++           [] ->
++             Right (Either.rights files)
++           missing ->
++             Left $ if dirExists then missing else [dir]
++
++findFile :: FilePath -> (FilePath, a) -> IO (Either FilePath (Resolved a))
++findFile dir (rel, rhs) = do
++  let abs = dir </> rel
++  exists <- Dir.doesFileExist abs
++  return $ if not exists then Left abs else Right (rel, (abs, rhs))
++
++{-
+ -- ASSETS
+ 
+ 
+@@ -71,3 +82,4 @@ runTaskUnsafe task =
+                 \\nCompile with `elm make` directly to figure it out faster\
+                 \\n--------------------------------------------------------\
+                 \\n"
++-}
+-- 
+2.32.0
+
-- 
2.32.0





Information forwarded to guix-patches@HIDDEN:
bug#55030; Package guix-patches. Full text available.

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


Received: (at submit) by debbugs.gnu.org; 19 Apr 2022 23:27:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 19 19:27:50 2022
Received: from localhost ([127.0.0.1]:44415 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ngxGA-0005nl-4W
	for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:27:50 -0400
Received: from lists.gnu.org ([209.51.188.17]:49428)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philip@HIDDEN>) id 1ngxG9-0005nb-0s
 for submit <at> debbugs.gnu.org; Tue, 19 Apr 2022 19:27:49 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:40430)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <philip@HIDDEN>)
 id 1ngxG8-0002YD-Ps
 for guix-patches@HIDDEN; Tue, 19 Apr 2022 19:27:48 -0400
Received: from mail-vk1-xa32.google.com ([2607:f8b0:4864:20::a32]:38468)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <philip@HIDDEN>)
 id 1ngxG3-00018h-MI
 for guix-patches@HIDDEN; Tue, 19 Apr 2022 19:27:45 -0400
Received: by mail-vk1-xa32.google.com with SMTP id i27so25432vkr.5
 for <guix-patches@HIDDEN>; Tue, 19 Apr 2022 16:27:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=philipmcgrath.com; s=google;
 h=from:to:subject:date:message-id:mime-version
 :content-transfer-encoding;
 bh=xtDrXZN4iXtkmeHOJHxnTmhWNLxX1t4rhyq2qYGvH4Y=;
 b=EswjabjLFeS+PWZuHcPqllQCQr54s1EHvFRYaZN7g9gBZInw0RjgvwiMScii2X5c71
 VlXh5a3WO71fPAr3WEJoT/FuYvNFFhAoy/8HldJx76AxoDP6KeukWuaVZMvo0JidW+kE
 3GlucX2C1+QKsyutBpNHo4lARO77m23xH03/2qMZpRLdu881on7rPRFoStJq06vTRy9R
 7jhIuJXPUe2bY3RzJV1yYbgl2cPaodM/IWVSgo+nwXprsc7W7kStl0m4nYwzWc6sgWNj
 U2+cIWO1vmSJxoV5cZnUCCKq8N9jT4H/p+77UEKGqPkgcIrLBY9Rde0By1E4/TvONA5h
 wkSQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:subject:date:message-id:mime-version
 :content-transfer-encoding;
 bh=xtDrXZN4iXtkmeHOJHxnTmhWNLxX1t4rhyq2qYGvH4Y=;
 b=yTnwFUcM7AMfms5ThPX47oKsrYaC0rEwkC6wZRJ+VOAhPuubu2V6AVf5iiSFo0/WRB
 GbOtCEA08aM/OO9aDIFHSGsAmnqwMZo+gmDqVoZyUgHcv3gFiBLxqmdEao1AJQpGx1ET
 X+e2qKwvmD8dBybldId6mksIlwYa09JCaFUP3hv7Ef4Uqt0Amt+M3BlTcJHj+fq2qqE6
 TipZVIFAAS39RDzetJsg5B7buNX3GLA1fTtppJD0asUm2KBb3EaCdecL39jGiHHykIoy
 bBl6OJe6TrjkP/Z8tG/ArA6/gr3mvzgVuWhCsnopEHDojxnxhdHVZQvpbVcQQ7zeDWEf
 rD+g==
X-Gm-Message-State: AOAM531uRD/ArJYpsPP06Lc5bS5DYPtb4Ujsu70kXpOXi8vIM14NqTem
 n8XUqxKAS/0f/RE7q5829RWUVAHVqc/yC2mG
X-Google-Smtp-Source: ABdhPJx8wkMZkPEBwEFkpY/uFozCd9qE0lXpa9MY9XxSOUF0FTNWyxNtckA08ToiCpEw0n/sGz+L/g==
X-Received: by 2002:a1f:14c2:0:b0:345:3e0f:81b1 with SMTP id
 185-20020a1f14c2000000b003453e0f81b1mr5379836vku.2.1650410860507; 
 Tue, 19 Apr 2022 16:27:40 -0700 (PDT)
Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51])
 by smtp.gmail.com with UTF8SMTPSA id
 j14-20020ab015ce000000b0035cc0bdd9f6sm172485uae.19.2022.04.19.16.27.37
 for <guix-patches@HIDDEN>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Apr 2022 16:27:39 -0700 (PDT)
From: Philip McGrath <philip@HIDDEN>
To: guix-patches@HIDDEN
Subject: [PATCH 00/30] gnu: elm: Update to 0.19.1. Add build system & importer.
Date: Tue, 19 Apr 2022 19:27:36 -0400
Message-Id: <20220419232736.272970-1-philip@HIDDEN>
X-Mailer: git-send-email 2.32.0
MIME-Version: 1.0
X-Debbugs-CC: Philip McGrath <philip@HIDDEN>
Content-Transfer-Encoding: 8bit
Received-SPF: permerror client-ip=2607:f8b0:4864:20::a32;
 envelope-from=philip@HIDDEN; helo=mail-vk1-xa32.google.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01,
 T_SPF_PERMERROR=0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.7 (-)
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.7 (--)

Hi,

This patch series updates Elm to version 0.9.1, then adds an
'elm-build-system' and a 'guix import elm' command.

To exercise the new features, this patch series then:

  * Build the front-end for the `elm reactor` command (which is written in Elm)
    and adds a variant of Elm to Guix with the command enabled;

  * Builds 'elm-todomvc', an official example of a basic Elm application; and

  * Builds a feature-rich third-party package, "terezka/elm-charts":
    <https://elm-charts.org>.

 -Philip

Philip McGrath (30):
  gnu: elm-compiler: Update to 0.19.1.
  gnu: elm: Rename package to match the command.
  guix: Add elm-build-system and 'guix import elm'.
  gnu: Add elm-core and elm-json.
  build-system/elm: Add implicit Elm inputs.
  gnu: Add elm-virtual-dom.
  gnu: Add elm-html.
  gnu: Add elm-svg.
  gnu: Add elm-time.
  gnu: Add elm-url.
  gnu: Add elm-browser.
  gnu: Add elm-bytes.
  gnu: Add elm-file.
  gnu: Add elm-http.
  gnu: Add elm-parser.
  gnu: Add elm-project-metadata-utils.
  gnu: Add elm-explorations-markdown.
  gnu: elm: Support 'elm reactor'.
  gnu: Add elm-todomvc.
  gnu: Add elm-debois-elm-dom.
  gnu: Add elm-random.
  gnu: Add elm-explorations-test.
  gnu: Add elm-danhandrea-elm-date-format.
  gnu: Add elm-danhandrea-elm-time-extra.
  gnu: Add elm-justinmimbs-date.
  gnu: Add elm-justinmimbs-time-extra.
  gnu: Add elm-myrho-elm-round.
  gnu: Add elm-ryannhg-date-format.
  gnu: Add elm-terezka-intervals.
  gnu: Add elm-terezka-elm-charts.

 gnu/local.mk                                  |   4 +-
 gnu/packages/elm.scm                          | 767 +++++++++++++++++-
 .../elm-compiler-disable-reactor.patch        |  71 --
 .../patches/elm-compiler-fix-map-key.patch    |  38 -
 .../elm-offline-package-registry.patch        |  71 ++
 .../patches/elm-reactor-static-files.patch    | 251 ++++++
 guix/build-system/elm.scm                     | 176 ++++
 guix/build/elm-build-system.scm               | 380 +++++++++
 guix/import/elm.scm                           | 148 ++++
 guix/scripts/import.scm                       |   3 +-
 guix/scripts/import/elm.scm                   | 107 +++
 11 files changed, 1883 insertions(+), 133 deletions(-)
 delete mode 100644 gnu/packages/patches/elm-compiler-disable-reactor.patch
 delete mode 100644 gnu/packages/patches/elm-compiler-fix-map-key.patch
 create mode 100644 gnu/packages/patches/elm-offline-package-registry.patch
 create mode 100644 gnu/packages/patches/elm-reactor-static-files.patch
 create mode 100644 guix/build-system/elm.scm
 create mode 100644 guix/build/elm-build-system.scm
 create mode 100644 guix/import/elm.scm
 create mode 100644 guix/scripts/import/elm.scm

-- 
2.32.0





Acknowledgement sent to Philip McGrath <philip@HIDDEN>:
New bug report received and forwarded. Copy sent to philip@HIDDEN, guix-patches@HIDDEN. Full text available.
Report forwarded to philip@HIDDEN, guix-patches@HIDDEN:
bug#55030; Package guix-patches. 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: Wed, 18 May 2022 18:15:02 UTC

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