From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id iDDBIZoJLF8aHgAA0tVLHw (envelope-from ) for ; Thu, 06 Aug 2020 13:46:02 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id sOjVHZoJLF84RAAAB5/wlQ (envelope-from ) for ; Thu, 06 Aug 2020 13:46:02 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 10AD59407C5 for ; Thu, 6 Aug 2020 13:46:02 +0000 (UTC) Received: from localhost ([::1]:47178 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1k3gDY-0002eO-S4 for larch@yhetil.org; Thu, 06 Aug 2020 09:46:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53896) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1k3gDL-0002ZA-CD for guix-devel@gnu.org; Thu, 06 Aug 2020 09:45:47 -0400 Received: from mail-pl1-x62b.google.com ([2607:f8b0:4864:20::62b]:43335) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1k3gDI-0003oV-MU for guix-devel@gnu.org; Thu, 06 Aug 2020 09:45:47 -0400 Received: by mail-pl1-x62b.google.com with SMTP id t10so22216607plz.10 for ; Thu, 06 Aug 2020 06:45:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=asu-edu.20150623.gappssmtp.com; s=20150623; h=content-transfer-encoding:from:mime-version:subject:date:message-id :references:cc:in-reply-to:to; bh=+/1z+DqBFE84DLjvt8dvEm1r5tWQMIncN4WP9Ua0ZD8=; b=Ts497N7Gsl7vEHcfPtMUVWQVYHc+FhlpxYggBaVvnaB00Z/sDOCpY/Ws4C/u0VSdH3 2BaCBD9g/wMW9+Gp/+6kBi52lkFIhW9nGTr6JLWyWgVUhI3fqgzi0L6TWVlXEMotTehV jz7/qETZJ1iTZsLQ2mfgl8uUw79qSSRyB7VjFX6uYkp3R9I/RICy74cnQuN5UVQGEYVX qxoMT8dLfpZHpQGigq+Gjd4I5a3E/6k8VY/pVXwcHqslIWg99xoQhn0GrUSWOAbllXI4 R6ueWDm8cLdDjBPVmiZieZakVqoQB1jY0ae2YKSHCSLLeVl9vHpwU6ncNx153EKA67L6 aR4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:content-transfer-encoding:from:mime-version :subject:date:message-id:references:cc:in-reply-to:to; bh=+/1z+DqBFE84DLjvt8dvEm1r5tWQMIncN4WP9Ua0ZD8=; b=CrXe0Onj68A++AePqYX+ZQV3C4QxfoClbJ4os4PZJ28H9SHLj+sowcEj5ozk8jVyV+ XMJP1DdFRrmWFFtofwbdXp9F/87nrAcsXaskF/fifxr9+UU8hyZXslrCKHqoeOHxez6K V+LyNMR5B7czUrfRbdfxc1bc4IQc9GDLIUIKnezMhrrYjAozAC0WevuKBWTJzFtWiV3y 5hh9RRsm9cBs/QUTRI0w15sFz1BPvju+5mnENsLDGwKI8Yl+5yAwU2uHJ95HOD96wbzQ h8z+2fkX0MawECJIBBLcJMQUwRdcbsyDHGjvDPSBiIQwVFEh4Lmw7DLTnof5OgNHeiMX XDpA== X-Gm-Message-State: AOAM531orSMZsGmyFkX3Vt8cZNErNsmNb+JPLuW+Iz25IYptkYDuWJMm GxuelUbRG0S5xP1OBdOS2rnz1cN/8eg= X-Google-Smtp-Source: ABdhPJz14sREC2MavJFAi9u9wCmzTbIIuSS2a2oiptSAEzzV9/Ef9ZB1y7uw2AnzQ47OPnRYKnUkAw== X-Received: by 2002:a17:902:788e:: with SMTP id q14mr7876608pll.235.1596721541615; Thu, 06 Aug 2020 06:45:41 -0700 (PDT) Received: from ?IPv6:2600:1700:83b0:8bd0:30e3:2c4e:be13:74e8? ([2600:1700:83b0:8bd0:30e3:2c4e:be13:74e8]) by smtp.gmail.com with ESMTPSA id j130sm7032175pgc.76.2020.08.06.06.45.40 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 06 Aug 2020 06:45:40 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable From: John Soo Mime-Version: 1.0 (1.0) Subject: Re: merge wip-haskell? Date: Thu, 6 Aug 2020 06:45:39 -0700 Message-Id: References: <87mu386vk5.fsf@elephly.net> In-Reply-To: <87mu386vk5.fsf@elephly.net> To: Ricardo Wurmus X-Mailer: iPhone Mail (17F80) Received-SPF: pass client-ip=2607:f8b0:4864:20::62b; envelope-from=jsoo1@asu.edu; helo=mail-pl1-x62b.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: guix-devel@gnu.org Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=asu-edu.20150623.gappssmtp.com header.s=20150623 header.b=Ts497N7G; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=asu.edu (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Spam-Score: 0.39 X-TUID: XcMeMpYzUm/R Hi Ricardo, Nice! Sounds good to me. There are a couple other bits of work I=E2=80=99d l= ike to see make it in. I believe there was also some work being done to de-duplicate flags sent to g= cc sent by ghc (this was the only thing keeping stack from building).=20 I hope that can make it in, too! If there is any way we can bump the default ghc to 8.8.x, that would be exce= llent, too. I think something like that makes sense on staging though. Thanks for working on it! - John On Aug 6, 2020, at 1:14 AM, Ricardo Wurmus wrote: =EF=BB=BFHey there, wip-haskell contains commits that do a number of things aimed to reduce the closure of packages: 1) make the =E2=80=9Cout=E2=80=9D (and =E2=80=9Clib=E2=80=9D) output indepen= dent from =E2=80=9Cdoc=E2=80=9D 2) add a =E2=80=9Cdoc=E2=80=9D output to more packages 3) add a =E2=80=9Cstatic=E2=80=9D output for all Haskell packages containing= the =E2=80=9C.a=E2=80=9D files 4) change ghc-pandoc (and ghc-pandoc-citeproc) to use static linking Number 1 required some smelly hackery: the generated configuration file is edited to remove the =E2=80=9Chaddock-html=E2=80=9D field. One unfortuna= te effect of doing this and moving the .haddock files is that there are now complaints about unresolvable links in generated documentation. I don=E2=80= =99t know if we can avoid this, but it seems like a small price to pay for independent =E2=80=9Cdoc=E2=80=9D outputs. (Otherwise we=E2=80=99d have to d= ownload huge =E2=80=9Cdoc=E2=80=9D outputs even if we don=E2=80=99t want them.) Number 3 required circumventing bug 41569. Number 4 is by far the ugliest change of them all. In order to statically link packages we need to add all the =E2=80=9Cstatic=E2=80=9D out= puts of all Haskell inputs *and* the =E2=80=9Cstatic=E2=80=9D outputs of *their* Haskell= inputs. This is not easily accomplished, so I ended up using =E2=80=9Cpackage-closur= e=E2=80=9D on all direct inputs, and then filtered the result to packages with names starting with =E2=80=9Cghc-=E2=80=9D. If there was a more appropriate= tool I=E2=80=99d use it, but I don=E2=80=99t think it exists. The result is a much reduced closure for ghc-pandoc and all packages using it (such as R markdown). We should probably rename =E2=80=9Cghc-pando= c=E2=80=9D to =E2=80=9Cpandoc=E2=80=9D, while we=E2=80=99re at it, because now the pack= age contains the executable. I suppose we could change this so that =E2=80=9Cghc-pandoc=E2=80=9D is the u= sual library package with a new =E2=80=9Cpandoc=E2=80=9D package inheriting from =E2=80=9C= ghc-pandoc=E2=80=9D. I=E2=80=99ll give that a try soon. I=E2=80=99d be happy to hear your comments about all of this, and I=E2=80=99= m looking forward to merging this branch into =E2=80=9Cmaster=E2=80=9D soon. --=20 Ricardo