From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id SCiXFrLaEWJVHQEAgWs5BA (envelope-from ) for ; Sun, 20 Feb 2022 07:07:46 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id UJkSE7LaEWKHvAAAauVa8A (envelope-from ) for ; Sun, 20 Feb 2022 07:07:46 +0100 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 0E5E91295D for ; Sun, 20 Feb 2022 07:07:45 +0100 (CET) Received: from localhost ([::1]:58192 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nLfNn-0005I3-O0 for larch@yhetil.org; Sun, 20 Feb 2022 01:07:43 -0500 Received: from eggs.gnu.org ([209.51.188.92]:49800) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nLfN8-0005H1-UM for guix-patches@gnu.org; Sun, 20 Feb 2022 01:07:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:37047) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nLfN8-0003z3-7b for guix-patches@gnu.org; Sun, 20 Feb 2022 01:07:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nLfN8-0005Mz-0T; Sun, 20 Feb 2022 01:07:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#53878] [PATCH v4 00/15] Update Racket to 8.4. Adjust Chez Scheme packages. Resent-From: Philip McGrath Original-Sender: "Debbugs-submit" Resent-CC: philip@philipmcgrath.com, guix-patches@gnu.org Resent-Date: Sun, 20 Feb 2022 06:07:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53878 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 53878@debbugs.gnu.org, Liliana Marie Prikler , Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: Attila Lendvai , Malte Gerdes , raingloom , zimoun , Philip McGrath X-Debbugs-Original-Xcc: Philip McGrath Received: via spool by 53878-submit@debbugs.gnu.org id=B53878.164533718120460 (code B ref 53878); Sun, 20 Feb 2022 06:07:01 +0000 Received: (at 53878) by debbugs.gnu.org; 20 Feb 2022 06:06:21 +0000 Received: from localhost ([127.0.0.1]:59150 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nLfMS-0005Jw-Ra for submit@debbugs.gnu.org; Sun, 20 Feb 2022 01:06:21 -0500 Received: from mail-qv1-f43.google.com ([209.85.219.43]:35480) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nLfMQ-0005Jf-BF for 53878@debbugs.gnu.org; Sun, 20 Feb 2022 01:06:18 -0500 Received: by mail-qv1-f43.google.com with SMTP id d7so23846935qvk.2 for <53878@debbugs.gnu.org>; Sat, 19 Feb 2022 22:06:18 -0800 (PST) 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=oN70ljmbg2rNOZZblTiCwUXEXnAmcvCexQ3gLw9kTC0=; b=DJ5n3ntc7P8DvjwQUff3j2vjbVc1hu9raVSRCUajjq91UaHTUXIdW//l/zNH0NFufs WgQnal8piRBJQ8OrwEn35a+nhlw0qzD+IwrPjH50PeJxwXwY9uRtVeH94et84iZwEUqB JZ8TL36/kcmiOmLQUCWkMALBy5Qqq1JreUKhEMTLNbsFBgJVuqgKF5x6+xeOHSEMT/NY LXCI0P5RgpNoSipQubPgM9ADVTMnciWyfuxxBwNzCOysR7TvVLirecs4Y5GerV7ZfM8K qIGBB9BWVRW+8hJYh5QDN1N8/pL4+48bala1C9Ahq7VY+N7XxV1rCaj/d2bZiHzcEJRT RtBA== 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=oN70ljmbg2rNOZZblTiCwUXEXnAmcvCexQ3gLw9kTC0=; b=m02KuZkMIPMdM+wrNIXm/fmcUpYYYYz5geLw/gT7903S1n0+PGti/2yCW/wFXFbz7u 0iumOdTxL4hg61DXGrXEKWj+4LwOThblnp6RtgmMNZrguFnoXzwwRJJR9BXx1DiLxPlD hSWHHVqPlqvlwCbbmXzk1eXxcLiuDPFXKo+O86XTN8300JI1FdKmE20AoYEgXXOcHXsq CahEY1rJU3Ii3Tk14c1DbEZZV9+ZRKokRGC1xmh/68gC6PGr0COxCaSndkWCQOOYH8TI ctRavzY43cjjh3J0wn/qx8GP0OGrBKTj/7EASnzCB5o7gVcq/roqyPdoiLXuNRb00Qt5 X00w== X-Gm-Message-State: AOAM531Ux/5mCnVw3tmeeIJqbqpuoDcDtv8TQwlUsZcjJh2KlDIxswas 7nhzj49DwkoOetwobLYbXZJePa2Tgzh6rIW3AkI= X-Google-Smtp-Source: ABdhPJxmdmzPj0msU0CPCQ3eyrn7e0haiHeMqt6y7kZv9kU/mP3WSEtTQVY9qIiAnVpLtKPWliXqJQ== X-Received: by 2002:a05:622a:8c:b0:2cf:7373:e458 with SMTP id o12-20020a05622a008c00b002cf7373e458mr12950507qtw.93.1645337172627; Sat, 19 Feb 2022 22:06:12 -0800 (PST) Received: from localhost (c-73-125-98-51.hsd1.fl.comcast.net. [73.125.98.51]) by smtp.gmail.com with UTF8SMTPSA id w2sm3773207qts.29.2022.02.19.22.06.11 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 19 Feb 2022 22:06:12 -0800 (PST) From: Philip McGrath Date: Sun, 20 Feb 2022 01:05:55 -0500 Message-Id: <20220220060610.178131-1-philip@philipmcgrath.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220208151316.1897345-1-philip@philipmcgrath.com> References: <20220208151316.1897345-1-philip@philipmcgrath.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1645337265; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=oN70ljmbg2rNOZZblTiCwUXEXnAmcvCexQ3gLw9kTC0=; b=tn+LzQ7gRBXJQuwE7WDURLy2jRiOknUQ2AHf1+jkHSx2EA9J8BAKwrBRdwRB4PAKm5vIDT pjNSfIKYin1/XaY+ZFZr2snite6QnB5CIlhpQNDWfwmOUW4Wg4x/5sqkOrH5nlaaUq0Oym dMKvqDWgis4gLz4gGOwKdT5uGFseX75jtj8Nj5U2BBYxx1pjmM1Q0SZPJlm4MZHE0q9H7d mCNQw6DhngrW02xBqLL1O3GgCRUvs+0NBNdfSUYrLFnRyf5fcE66ECMPSj0eDtseyDv6Qg S3ELSI4/YNfmpZR+quSbhBYwt4VO+tRA5UIwORpiJTUhkyi1uKRhMq9lv8E91w== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1645337265; a=rsa-sha256; cv=none; b=qFe0V7JFPLDV12o5hZ3h6XGdR/MT/R9VudpjrO5wWm/nmwGVRCYNT/iSMhqBo8EtgNVdci vPSNSjpkHH/qfetI8BbTuHW1ZaQdw/ZO9onlego3EtOgqSlgEvxs5xzmg6HUEzFD18m5wY 1NZk5YYrKzTI2OKPVLpdcYisdYxUKOuu00tg1TkI43dXea4hjTi81g9xDSNUEQ7NaoyiTm kPU4RdMg1lUgsZedO8UJtmj+RW5t/TjHOAtGXmXrG5DJ02/AYG9XSDWohDBf8nskqlUkMu NSOj05k5/5MJZvc7Xcfom5q3JXwL9ezLr26YO89U+xNZIKxHRlfOYTP/j6G+GQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=philipmcgrath.com header.s=google header.b=DJ5n3ntc; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 0.87 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=philipmcgrath.com header.s=google header.b=DJ5n3ntc; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 0E5E91295D X-Spam-Score: 0.87 X-Migadu-Scanner: scn1.migadu.com X-TUID: MfNaALMgeyds Hi, Here is v4. I believe it avoids the import cycle. The first change from v3 is in patch 09/15, in which I changed "gnu/packages/chez-and-racket-bootstrap.scm" no longer export `%racket-version` or `%racket-origin`. The package `source` field is not thunked, so exporting the latter seems like a particular trap for the unwary. In 14/15, I looked again at the issue with `chez-scheme-for-system` that Liliana reported in , and I realized my intention had actually been to return `chez-scheme` if the specified system is completely unsupported (not that it makes much difference ...). I tweaked it slightly and added comments, since I've gotten confused about it more than once now. The changes to avoid the import cycle are primarily in 15/15. As I outlined in , I duplicated the definition of `%racket-version` in "gnu/packages/racket.scm" and added comments there and to "gnu/packages/chez-and-racket-bootstrap.scm" warning to keep them in sync. I also had to avoid the use of `%racket-origin` (or `(package-source (racket-vm-for-system))`) outside of lambda abstractions, which in particular meant that it could no longer be used in the `source` field of `racket-minimal`. Instead, I changed `racket-minimal` to handle "base" and "racket-lib" in the same way `racket` does for its component Racket packages. Recalling Liliana's comment in , since I was lifting the function to handle Racket package origins anyway to reuse it, I changed it to produce `computed-file`s that take care of extracting the right files from the origin, so `racket-minimal` can now use `union-build` and `racket` no longer needs to replace the build phase. I can immagine a `racket-build-system` helping to improve the situation, since it would presumably add `(racket-vm-for-system)` as an implicit input. It might also be useful to provide special support for packages from the main Racket Git repository: almost always, if you change transform the origin for the Racket VM, you want all of the packages developed in the same repository to use come from the transformed origin, too. But for now, v4 should avoid the import cycle problem without doing anything too ugly. -Philip Philip McGrath (15): gnu: chez-scheme: Move to (gnu packages chez-and-racket-bootstrap). gnu: chez-scheme: Use "lib/chez-scheme" for search path. gnu: chez-scheme: Use shared zlib and lz4. gnu: chez-and-racket-bootstrap: Add utilities for Chez machine types. gnu: chez-scheme: Use new package style. gnu: Add stex. gnu: Add chez-nanopass. gnu: chez-scheme: Explicitly package bootstrap bootfiles. gnu: Add racket-vm-cgc. gnu: Add racket-vm-bc. gnu: Add chez-scheme-for-racket. gnu: Add racket-vm-cs. gnu: chez-mit: Support chez-scheme-for-racket. gnu: chez-and-racket-bootstrap: Add 'chez-scheme-for-system'. gnu: racket: Update to 8.4. gnu/local.mk | 5 +- gnu/packages/chez-and-racket-bootstrap.scm | 1077 +++++++++++ gnu/packages/chez.scm | 628 +++---- gnu/packages/emacs-xyz.scm | 4 +- gnu/packages/loko.scm | 4 +- .../racket-enable-scheme-backport.patch | 465 +++++ ...acket-gui-tethered-launcher-backport.patch | 26 + gnu/packages/racket.scm | 1599 +++++++++++------ 8 files changed, 2871 insertions(+), 937 deletions(-) create mode 100644 gnu/packages/chez-and-racket-bootstrap.scm create mode 100644 gnu/packages/patches/racket-enable-scheme-backport.patch create mode 100644 gnu/packages/patches/racket-gui-tethered-launcher-backport.patch -- 2.32.0