From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.bugs Subject: bug#66113: Apply the entire diff buffer Date: Fri, 22 Sep 2023 09:45:32 +0300 Organization: LINKOV.NET Message-ID: <86v8c2u34b.fsf@mail.linkov.net> References: <86o7hx4a11.fsf@mail.linkov.net> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="21490"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) Cc: 66113@debbugs.gnu.org To: Dmitry Gutov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Sep 22 09:10:12 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qjaIl-0005MG-Vl for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 22 Sep 2023 09:10:11 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qjaIW-0004Xv-P1; Fri, 22 Sep 2023 03:09:56 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qjaIS-0004Wv-LG for bug-gnu-emacs@gnu.org; Fri, 22 Sep 2023 03:09:52 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qjaIS-0007uB-Cf for bug-gnu-emacs@gnu.org; Fri, 22 Sep 2023 03:09:52 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qjaIc-00004r-QA for bug-gnu-emacs@gnu.org; Fri, 22 Sep 2023 03:10:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 22 Sep 2023 07:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66113 X-GNU-PR-Package: emacs Original-Received: via spool by 66113-submit@debbugs.gnu.org id=B66113.169536658132701 (code B ref 66113); Fri, 22 Sep 2023 07:10:02 +0000 Original-Received: (at 66113) by debbugs.gnu.org; 22 Sep 2023 07:09:41 +0000 Original-Received: from localhost ([127.0.0.1]:35186 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qjaIG-0008VM-Ol for submit@debbugs.gnu.org; Fri, 22 Sep 2023 03:09:40 -0400 Original-Received: from relay2-d.mail.gandi.net ([217.70.183.194]:54845) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qjaIE-0008V2-Pz for 66113@debbugs.gnu.org; Fri, 22 Sep 2023 03:09:39 -0400 Original-Received: by mail.gandi.net (Postfix) with ESMTPSA id 2F31E40008; Fri, 22 Sep 2023 07:09:20 +0000 (UTC) In-Reply-To: (Dmitry Gutov's message of "Fri, 22 Sep 2023 04:38:25 +0300") X-GND-Sasl: juri@linkov.net X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:271041 Archived-At: >> + (t >> + (dolist (buf buffers) >> + (with-current-buffer buf >> + (display-buffer buf))) >> + (message "%d hunks failed; no buffers saved" failures))))) > > What happens next in this case? How do you undo in the buffers that had the > patch hunks already applied? Manually, like in case of ediff-patch-buffer. > Any change you wanted to work on the idea of the "atomic rollback" as well? This would be an unreliable feature: in case of diff-apply creates a mess, such automatic undo can create more mess, because there are many different strategies to undo the mess such as using undo-auto-amalgamate, or applying the reverse diff partially, doing more damage in case when buffers were already modified before diff-apply. But fortunately the need to undo will be extremely rare, because when patch hunks are already applied, it reports the failure, but doesn't modify the source buffer. Therefore there is nothing to undo!