From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id wOT2MbVCtF7+FwAA0tVLHw (envelope-from ) for ; Thu, 07 May 2020 17:17:41 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id qDk2BsJCtF5qcgAAbx9fmQ (envelope-from ) for ; Thu, 07 May 2020 17:17:54 +0000 Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:470:142::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 EF345940BFF for ; Thu, 7 May 2020 17:17:48 +0000 (UTC) Received: from localhost ([::1]:47006 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jWk9d-0007vn-3S for larch@yhetil.org; Thu, 07 May 2020 13:17:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54860) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jWk8z-0007qW-Gz for guix-devel@gnu.org; Thu, 07 May 2020 13:17:09 -0400 Received: from mail-pf1-x429.google.com ([2607:f8b0:4864:20::429]:45617) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jWk8y-00072x-65 for guix-devel@gnu.org; Thu, 07 May 2020 13:17:08 -0400 Received: by mail-pf1-x429.google.com with SMTP id w65so3292728pfc.12 for ; Thu, 07 May 2020 10:17:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=asu-edu.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:user-agent:mime-version; bh=2I0ZD4a/XL+PqRrmqPRDfw0mPO/NccPbQ1IaxcPeweQ=; b=ZGgagmMwj0XFJ3+FeB2f2an0va/R2NCuhEWRlrTIaJsQ4IdTV9zdtGXuoRyyIoGVt7 Pf9c41Vvo7UiLs3kuGMLPugm4pCV0wCMiTzAUR2eSTZ9ns98Q2bS41X8ZCxGZzBm7oN4 FIazVA694lWto55SPe7UUOr7n40Ox9UXIf3i1XvsKLi5oLyybfzQ4dJ8bsasDi/uNg52 m36tB3qgyPAIuQyr2wxC7QIvAfPsWejs7WoheXQxxFMQ8HVXkoxwwzc2my5VNjuNGdch roH16it2v3loG3FkAfXNqMMo2i/AD9GV5gn2izol3zka3E2bEL7S/gAHAGSFjxzcMyTO mxZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:user-agent :mime-version; bh=2I0ZD4a/XL+PqRrmqPRDfw0mPO/NccPbQ1IaxcPeweQ=; b=V4WHRELvduP1EGsKv27OmBTM1+fMfXIIalalhyyN2w7Zu8rTzoneft2zmgh6ZVPr+m fTRG7K2V1silBrCDOF1PJPFrJf5tVgJxwNJzKJzkHHxqacS+dSM0vbsYd6S5YFKZO3a5 YLieb4yse9uFo+q+mPfy8zOcYf3DY0OiNQIlpCX2d9H6Dxq0/+//vxHOC+IBMSkCdGKk Tm2L5shfxkZXaO2qHchC5/nLtIcn1zdBWLGCtr4bIdKVc8tBLI4pTk5svIBrXt5p2bgy RPGyQkIzW/wM26Rrv8D4wO+ubcNY8349NxJddepBO6bMS+aYdrcfaq0uBEZAR24hKN0p 8yjA== X-Gm-Message-State: AGi0PuanKn4ACZAFNil49gsadbOIbaUVi19xqQin4kWiNALLxahVg0lb z4XwISJHikYAdezzr9grC2WgDbQexwHexw== X-Google-Smtp-Source: APiQypJ/+OJ6Y4BLiV7v7YH7PWgbbg28NuqBx59xodQ/sX9KSsj5ky7wbd25kks7SpuLR0+5CD1luA== X-Received: by 2002:a63:b214:: with SMTP id x20mr12523590pge.289.1588871824753; Thu, 07 May 2020 10:17:04 -0700 (PDT) Received: from ecenter ([2600:1700:83b0:8bd0::429]) by smtp.gmail.com with ESMTPSA id k24sm5330657pfk.134.2020.05.07.10.17.03 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 07 May 2020 10:17:04 -0700 (PDT) From: John Soo To: guix-devel@gnu.org Subject: Request for proposals on Rust and Go build systems (RE: Medium-term road map) Date: Thu, 07 May 2020 10:17:02 -0700 Message-ID: <87pnbf4qcx.fsf@asu.edu> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::429; envelope-from=jsoo1@asu.edu; helo=mail-pf1-x429.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_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN 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: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: scn0 X-Spam-Score: -1.11 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=asu-edu.20150623.gappssmtp.com header.s=20150623 header.b=ZGgagmMw; 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 2001:470:142::17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Scan-Result: default: False [-1.11 / 13.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; GENERIC_REPUTATION(0.00)[-0.49834688153572]; DWL_DNSWL_BLOCKED(0.00)[2001:470:142::17:from]; R_SPF_ALLOW(-0.20)[+ip6:2001:470:142::/48:c]; IP_REPUTATION_HAM(0.00)[asn: 22989(0.11), country: US(-0.00), ip: 2001:470:142::17(-0.50)]; TO_DN_NONE(0.00)[]; DKIM_TRACE(0.00)[asu-edu.20150623.gappssmtp.com:+]; MX_GOOD(-0.50)[cached: eggs.gnu.org]; MAILLIST(-0.20)[mailman]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_IN_DNSWL_FAIL(0.00)[2001:470:142::17:server fail]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:22989, ipnet:2001:470:142::/48, country:US]; MID_RHS_MATCH_FROM(0.00)[]; TAGGED_FROM(0.00)[larch=yhetil.org]; ARC_NA(0.00)[]; RCVD_COUNT_FIVE(0.00)[6]; FROM_NEQ_ENVFROM(0.00)[jsoo1@asu.edu,guix-devel-bounces@gnu.org]; FROM_HAS_DN(0.00)[]; R_DKIM_ALLOW(-0.20)[asu-edu.20150623.gappssmtp.com:s=20150623]; URIBL_BLOCKED(0.00)[asu-edu.20150623.gappssmtp.com:dkim]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[guix-devel@gnu.org]; HAS_LIST_UNSUB(-0.01)[]; RCPT_COUNT_ONE(0.00)[1]; FORGED_SENDER_MAILLIST(0.00)[]; DMARC_POLICY_SOFTFAIL(0.10)[asu.edu : SPF not aligned (relaxed), DKIM not aligned (relaxed),none] X-TUID: NlzUhgdylXiX Hi Guix, I lost the specific thread on the medium-term road map that applies. A few suggestions have been made to improve updates the source-only build systems we have (Rust and Go). I would like to suggest that we do make changes to these and put them on the road map. Can we put together some complaints and proposals for the rust and go build systems? It would be nice to first get some informal ideas and then see if we can't mostly agree on a final set of items to work on. I have the following issues: * The loop-breaking procedure is widely applicable: most other transitive dependencies should have loops in their dependency graphs broken. So far, only the cargo-build-system has such a loop-breaking procedure. * It will be hard to track down breaking changes when a source-only library package is updated. guix refresh --list-dependents usually shows how many packages would be effected by changing a package. Rust packages, at least, do not show any dependent packages for libraries. In the past, I have seen other complaints: * Outputs from the cargo-build-system don't use dynamic linking. * Namespacing of cargo packages is not good. My suggestions: * Move the dependency loop-breaking procedure from the rust build system to a utils location. Use the procedure in more (if not most other) build system's transitive dependency resolution. * Figure out a mechanism whereby source-only packages are registered by guix refresh --list-dependents. I had suggested moving #:cargo-dependencies to inputs, for instance. I hope to hear from you soon! - John