From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id 4I8EDog2fGE1RAAAgWs5BA (envelope-from ) for ; Fri, 29 Oct 2021 19:59:36 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id kMyeCYg2fGFTJQAAbx9fmQ (envelope-from ) for ; Fri, 29 Oct 2021 17:59:36 +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 6B72D328AB for ; Fri, 29 Oct 2021 19:59:35 +0200 (CEST) Received: from localhost ([::1]:38888 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mgWA9-0003C3-8i for larch@yhetil.org; Fri, 29 Oct 2021 13:59:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:37134) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mgW9C-00038q-Am for emacs-orgmode@gnu.org; Fri, 29 Oct 2021 13:58:34 -0400 Received: from relay-egress-host.us-east-2.a.mail.umich.edu ([13.59.128.245]:33472 helo=frail-olwen.relay-egress.a.mail.umich.edu) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mgW9A-00005W-AU for emacs-orgmode@gnu.org; Fri, 29 Oct 2021 13:58:33 -0400 Received: from soaring-garuda.authn-relay.a.mail.umich.edu (ip-10-0-72-160.us-east-2.compute.internal [10.0.72.160]) by frail-olwen.relay-egress.a.mail.umich.edu with ESMTPS id 617C3645.36D85.54130902.3483835; Fri, 29 Oct 2021 13:58:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=umich.edu; s=relay-2018-08-29; t=1635530308; bh=URfXxw34u/fEeShb4+4NjH0Oo3jtTtox/Ix+rMdllPQ=; h=To:cc:From:Subject:In-reply-to:References:Date; b=YDTqHzcBz6s7MyuRFe2b9o6UiZsCbfhe+6TzjCj2vVSU3sVQtVpcWhQRM07NTD73P oTwOGWmad0X/j4babKqWNpGcuAXhLkkf3Fk2EEU+iBFjsV8R1PcFWHuUQWrKy3SuUY esug9B0T0rmlGwHBM7njSjsNroRAU5gxjuc3oTRGd2Y0BGg2WHLMBy6muTJTaDNu8K yWqwx7c161Savy6ODhXyZearZmlv7vnAiu2G4HI5EaWfyDI/983PaiSzkjRoGs63B4 WWP7ERYdL6F4WRzltIwlqXpECbcIEuUS3rE/c5cSOIj3oOF6V13Lbs2dbOw8pclWPB XXT8PB951QsfA== Received: from localhost (Mismatch [95.14.69.235]) by soaring-garuda.authn-relay.a.mail.umich.edu with ESMTPSA id 617C3643.D5AF5.235196D3.2903561; Fri, 29 Oct 2021 13:58:28 -0400 To: Max Nikulin From: Greg Minshall Subject: Re: tangle option to not write a file with same contents? In-reply-to: References: <583051.1635393898@apollo2.minshall.org> Comments: In-reply-to Max Nikulin message dated "Fri, 29 Oct 2021 23:21:52 +0700." X-Mailer: MH-E 8.6+git; nmh 1.7.1; GNU Emacs 27.2 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <860560.1635530303.1@apollo2.minshall.org> Date: Fri, 29 Oct 2021 20:58:23 +0300 Message-ID: <860561.1635530303@apollo2.minshall.org> Received-SPF: pass client-ip=13.59.128.245; envelope-from=minshall@umich.edu; helo=frail-olwen.relay-egress.a.mail.umich.edu 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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: emacs-orgmode@gnu.org Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1635530375; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=URfXxw34u/fEeShb4+4NjH0Oo3jtTtox/Ix+rMdllPQ=; b=hEJRj/FLDrui8X/mdAOsPkiFJQDXDjlRYi7xAT3YnF8nwF8H4lnM5Z6UWID9Cg9TkgYr0a PJRjAdlilLatCA6ZKlqIWD9hym0a1r5Le1EjbLMcpP19T4G7QY4m+CMzm8xUC6R3Sv7jqP 39X9SduisEp2yRhs9S9eI+CN1A1SA5IZjcShaDBYE3RMZ614dZBqtJVeBFwRV/c0rtwtjq 72c3H7ASInoleElB9v3LGiEKXDXB1zPu8tzKeGI9+1F1uDD4NDIaMQlIhOdGHxdUL64n6o KuetDyR1YAyEkqU93T7PF9tZsiD3RbVoWC4ykS7LZ9I6Tu2z61M3/YZ3Rvdz5g== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1635530375; a=rsa-sha256; cv=none; b=TSiUEdx8D4sLxWVJnu+q1SPkHUe7pPyRzEX3wr+AKeOY8IVtnRMPp9R4Xp1LULICyxpj2m wS4Qv9I3Dh66MwnXV2FF3i+Fc0JAaPZNa+MCpg0swsJwQ95kztQFcynrDLmNYk07WZifg5 Gi9sipestKMcWOaz6RO6SjqcwX01NKMdoLVMBSpy8M/ZqPaLm+KmkW7tJ/9wPcuuueDQF/ poulT7d4Sk2tv3hUrRDYlugoZzZXCAqHJgPMs6l+Bw79ZbMEHELav9wU8v8wYqYFh++xmO NPQdjF1cVg0hTurY9/iM1AeLWH7kXsiCHbK4UVYfvA6HIqcBvDo6r+noYLIF/g== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=umich.edu header.s=relay-2018-08-29 header.b=YDTqHzcB; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Spam-Score: -2.12 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=umich.edu header.s=relay-2018-08-29 header.b=YDTqHzcB; dmarc=pass (policy=none) header.from=umich.edu; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: 6B72D328AB X-Spam-Score: -2.12 X-Migadu-Scanner: scn0.migadu.com X-TUID: Ts1pprSgQoRA Max, > > i wonder if it would be reasonable to add an option such that, when > > tangling, `org-babel-tangle` would not write a file with the > > already-existing contents of the target file? > > Are you going to celebrate a decade of the feature request? > I agree with you, make is wide spread and fast tool that is really > convenient in simple cases. hah -- i should have waited a few weeks! > Some hash-based build systems are mentioned in that thread. Since that > time more more similar tools have appeared, e.g. buck, > reimplementations of DJB's redo https://cr.yp.to/redo.html i think different people will settle on different build tools. > It seems `compare-buffer-substrings` has more logic than just byte to > byte comparison. Is it to handle alternatives for unicode character > alternatives? For tangled buffer it should be size that is checked > first... you are right, it definitely makes sense to look first at size. (which is what, e.g., rsync(1) does.) also, probably i needn't have mentioned `compare-buffer-substrings` -- i was really just trying to suggest "simple" (which maybe i anti-did?). cheers, Greg