From unknown Mon Aug 18 17:56:28 2025 X-Loop: help-debbugs@gnu.org Subject: bug#79198: 31.0.50; Problem with multiple global auto-revert modes Resent-From: Sean Whitton Original-Sender: "Debbugs-submit" Resent-CC: jonas@bernoul.li, monnier@iro.umontreal.ca, sbaugh@janestreet.com, bug-gnu-emacs@gnu.org Resent-Date: Fri, 08 Aug 2025 12:48:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 79198 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 79198@debbugs.gnu.org Cc: jonas@bernoul.li, monnier@iro.umontreal.ca, sbaugh@janestreet.com X-Debbugs-Original-To: bug-gnu-emacs@gnu.org X-Debbugs-Original-Xcc: jonas@bernoul.li, monnier@iro.umontreal.ca, sbaugh@janestreet.com Received: via spool by submit@debbugs.gnu.org id=B.175465724124804 (code B ref -1); Fri, 08 Aug 2025 12:48:01 +0000 Received: (at submit) by debbugs.gnu.org; 8 Aug 2025 12:47:21 +0000 Received: from localhost ([127.0.0.1]:37602 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ukMVE-0006S0-QX for submit@debbugs.gnu.org; Fri, 08 Aug 2025 08:47:21 -0400 Received: from lists.gnu.org ([2001:470:142::17]:56296) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ukMVB-0006Rf-7C for submit@debbugs.gnu.org; Fri, 08 Aug 2025 08:47:19 -0400 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 1ukMV3-0002Jk-78 for bug-gnu-emacs@gnu.org; Fri, 08 Aug 2025 08:47:09 -0400 Received: from sendmail.purelymail.com ([34.202.193.197]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ukMUz-000667-48 for bug-gnu-emacs@gnu.org; Fri, 08 Aug 2025 08:47:08 -0400 DKIM-Signature: a=rsa-sha256; b=OyupoAWakaQOj9O+VhC23pnt4yCNxY2GRbvJhG5p5k9+Dobfd07TNpH5iul4zmqy4lEgeRqyDh3IwM/Yk3Bn3mq6K0L1Y8bXfSQR3Yn1X+RL6zEPD5ULtsmJoUIPK2bZ+s9gX/DaYfQPERmB+iQEscOWlDLl8IIXc2JnIKl51ZyrsPmAH0gUVBHbb6FgGJPAk/YoeAFAqqyQ9kw7J/WSLcU/uzXmJLDLBqSGRZQWgJvqYm0Ud2PiIRP/TKNDgQIk0Qi5KE4shc4ZbQBfmgzPsnFcJmkSf+/sCHxUupda9zSk/oqA9q1Egh24p0zrb9hKUMxOmlSkOY+27JIXLyi76A==; s=purelymail1; d=spwhitton.name; v=1; bh=ldWGLZZRB2qRcxgbb6UJMO07hhQxESJ5UVTRBTtSbbs=; h=Received:Received:From:To:Subject:Date; DKIM-Signature: a=rsa-sha256; b=rBGX4+VnSQuBr5Ho/ly/S6LVmah3GQUNH81cwiWy1T3h6fo5OzAxs1hoNVxdW5ad79N2x2nLKRvrNyBpJmACZjp1NLY/BWCJNs3PPtCVo3BKfkhgYu9PPq+AWGPadbYR5iX2lTI5HtBr7SgzxA3VYFze8SocFxX8BjeaaXrdummg+JHaInT8kEfCheH1no4z26aExhtqImkKWc6CGHSYGARsMtmEpqkGl8YakTQHs21qGH6XiivGkhCUBFPloV108Yb+277dvY5n2k7bJQiOWqYHsfHwtEW6tvyo68pemE16sz0828IvNrd2mXSesNmIcOtoVc19JhYyB6ar+veu7Q==; s=purelymail1; d=purelymail.com; v=1; bh=ldWGLZZRB2qRcxgbb6UJMO07hhQxESJ5UVTRBTtSbbs=; h=Feedback-ID:Received:Received:From:To:Subject:Date; Feedback-ID: 20115:3760:null:purelymail X-Pm-Original-To: bug-gnu-emacs@gnu.org Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPSA id -1418453772 for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Fri, 08 Aug 2025 12:47:02 +0000 (UTC) Received: by zephyr.silentflame.com (Postfix, from userid 1000) id 2AC8C94012E; Fri, 08 Aug 2025 13:47:02 +0100 (BST) From: Sean Whitton Date: Fri, 08 Aug 2025 13:47:02 +0100 Message-ID: <87sei22d6h.fsf@zephyr.silentflame.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=34.202.193.197; envelope-from=spwhitton@spwhitton.name; helo=sendmail.purelymail.com 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, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) X-debbugs-cc: jonas@bernoul.li, monnier@iro.umontreal.ca, sbaugh@janestreet.com Hello, Currently, between Emacs core and Magit, there are three globalized versions of auto-revert-mode: global-auto-revert-mode, magit-auto-revert-mode and the new vc-auto-revert-mode. global-auto-revert-mode has a custom definition, but magit-auto-revert-mode and vc-auto-revert-mode both use define-globalized-minor-mode. That means they both make use of the variable auto-revert-mode-major-mode. Macroexpanding, --8<---------------cut here---------------start------------->8--- (defun vc-auto-revert-mode-enable-in-buffer () (unless auto-revert-mode-set-explicitly (unless (eq auto-revert-mode-major-mode major-mode) ; <-- HERE (if auto-revert-mode (progn (auto-revert-mode -1) (funcall (function vc-turn-on-auto-revert-mode-for-tracked-files))) (funcall (function vc-turn-on-auto-revert-mode-for-tracked-files))))) (setq auto-revert-mode-major-mode major-mode)) --8<---------------cut here---------------end--------------->8--- and --8<---------------cut here---------------start------------->8--- (defun magit-auto-revert-mode-enable-in-buffer () (unless auto-revert-mode-set-explicitly (unless (eq auto-revert-mode-major-mode major-mode) ; <-- HERE (if auto-revert-mode (progn (auto-revert-mode -1) (funcall (function magit-turn-on-auto-revert-mode-if-desired))) (funcall (function magit-turn-on-auto-revert-mode-if-desired))))) (setq auto-revert-mode-major-mode major-mode)) --8<---------------cut here---------------end--------------->8--- But now the following problem can occur: 1. Enable magit-auto-revert-mode. 2. *Subsequently*, enable vc-auto-revert-mode. 3. Visit a tracked file in a non-Git VC repository. Expected behaviour: vc-auto-revert-mode turns on auto-revert-mode because it's a buffer visiting a VCS-tracked file. Actual behaviour: magit-auto-revert-mode-enable-in-buffer declines to enable auto-revert-mode because it's not a Git repository. It sets auto-revert-mode-major-mode to non-nil. But then vc-auto-revert-mode-enable-in-buffer thinks it has already been called, and also does nothing. I think that the following would fix the problem; how does it look: --8<---------------cut here---------------start------------->8--- diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el index 46c99052090..f2d21d7ef45 100644 --- a/lisp/emacs-lisp/easy-mmode.el +++ b/lisp/emacs-lisp/easy-mmode.el @@ -500,7 +500,8 @@ define-globalized-minor-mode (intern (concat global-mode-name "-enable-in-buffer"))) (minor-MODE-hook (intern (concat mode-name "-hook"))) (MODE-set-explicitly (intern (concat mode-name "-set-explicitly"))) - (MODE-major-mode (intern (concat (symbol-name mode) "-major-mode"))) + (MODE-major-mode (intern (concat (symbol-name global-mode) + "-major-mode"))) (MODE-predicate (intern (concat (replace-regexp-in-string "-mode\\'" "" global-mode-name) "-modes"))) --8<---------------cut here---------------end--------------->8--- -- Sean Whitton From unknown Mon Aug 18 17:56:28 2025 X-Loop: help-debbugs@gnu.org Subject: bug#79198: 31.0.50; Problem with multiple global auto-revert modes Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 09 Aug 2025 07:48:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 79198 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Sean Whitton Cc: sbaugh@janestreet.com, jonas@bernoul.li, 79198@debbugs.gnu.org Received: via spool by 79198-submit@debbugs.gnu.org id=B79198.17547256611727 (code B ref 79198); Sat, 09 Aug 2025 07:48:02 +0000 Received: (at 79198) by debbugs.gnu.org; 9 Aug 2025 07:47:41 +0000 Received: from localhost ([127.0.0.1]:40024 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ukeIm-0000Rh-QD for submit@debbugs.gnu.org; Sat, 09 Aug 2025 03:47:41 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:3325) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ukeIh-0000RD-5s for 79198@debbugs.gnu.org; Sat, 09 Aug 2025 03:47:38 -0400 Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id E365410025E; Sat, 9 Aug 2025 03:47:28 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1754725647; bh=OpQjnyE4wtKEu97dV/a+D5Bd3PDR9Jt2V0nE7SWzX4g=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=Aviv3AqMxc9y6IrfY7GCL7hCNcFyJyGdAolrkjjZ3qy5ufsF0GaDefGNDgnNw9b1b HZYRA9crJ7q5JxG3Dk021jfH/iU49/3rlT7WhS2ia0BXJEI6GXZt1dHtl2IHtkbzdK ffAsuYdcfGAMlgs4shdYbZ1uE3I6wzYYeghUodUcu8rbtWlVhcqepKnWZ00EZGeGyx LkM4Gk/Xu5uEFHJwsfhQGSd7UHTlCnpR3Jtv3cN5arvHueWPuiYZPXa/8NT2hLMnxI iIvpl9XdXePTdai3AzNZgjur96iX8Ys85PfaInbcE8yA/TmbyjuxpvluArgqy5owk5 yKYdv6pGdqN1w== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 9B08310002E; Sat, 9 Aug 2025 03:47:27 -0400 (EDT) Received: from asado (unknown [144.85.248.254]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 23FEE120B16; Sat, 9 Aug 2025 03:47:25 -0400 (EDT) From: Stefan Monnier In-Reply-To: <87sei22d6h.fsf@zephyr.silentflame.com> Message-ID: References: <87sei22d6h.fsf@zephyr.silentflame.com> Date: Sat, 09 Aug 2025 03:47:23 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.004 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > I think that the following would fix the problem; how does it look: > > --8<---------------cut here---------------start------------->8--- > diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el > index 46c99052090..f2d21d7ef45 100644 > --- a/lisp/emacs-lisp/easy-mmode.el > +++ b/lisp/emacs-lisp/easy-mmode.el > @@ -500,7 +500,8 @@ define-globalized-minor-mode > (intern (concat global-mode-name "-enable-in-buffer"))) > (minor-MODE-hook (intern (concat mode-name "-hook"))) > (MODE-set-explicitly (intern (concat mode-name "-set-explicitly"))) > - (MODE-major-mode (intern (concat (symbol-name mode) "-major-mode"))) > + (MODE-major-mode (intern (concat (symbol-name global-mode) > + "-major-mode"))) > (MODE-predicate (intern (concat (replace-regexp-in-string > "-mode\\'" "" global-mode-name) > "-modes"))) > --8<---------------cut here---------------end--------------->8--- I tend to agree and would suggest to put a "--" in there as well, since it's used internally by the global major mode and is not meant to be used by other code. [ Same for the "-set-explicitly" which should be "--set-explicitly". ] Stefan From unknown Mon Aug 18 17:56:28 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Sean Whitton Subject: bug#79198: closed (Re: bug#79198: 31.0.50; Problem with multiple global auto-revert modes) Message-ID: References: <87zfc8zv6z.fsf@zephyr.silentflame.com> <87sei22d6h.fsf@zephyr.silentflame.com> X-Gnu-PR-Message: they-closed 79198 X-Gnu-PR-Package: emacs Reply-To: 79198@debbugs.gnu.org Date: Sat, 09 Aug 2025 09:45:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1754732702-23194-1" This is a multi-part message in MIME format... ------------=_1754732702-23194-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #79198: 31.0.50; Problem with multiple global auto-revert modes which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 79198@debbugs.gnu.org. --=20 79198: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D79198 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1754732702-23194-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 79198-done) by debbugs.gnu.org; 9 Aug 2025 09:44:02 +0000 Received: from localhost ([127.0.0.1]:40236 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ukg7O-000606-4u for submit@debbugs.gnu.org; Sat, 09 Aug 2025 05:44:02 -0400 Received: from sendmail.purelymail.com ([34.202.193.197]:48994) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ukg7L-0005zQ-Ok for 79198-done@debbugs.gnu.org; Sat, 09 Aug 2025 05:44:00 -0400 DKIM-Signature: a=rsa-sha256; b=BKiEpul15k0j0dp6lYsbKRnmBLDZgpSek9ZFLHjB0jqVLd1YTM2e6c6pRRRm+RDNHU5+V7ldQV21o7EKjvvJXZEJJfeZJNU3qq4+xfqfGHcUqMLg+CwTdAUv7oo0EgMObY+H8thj7LjCc7+ir19HpVO0YfpyFBabxUwn4EQN2r+dJq30EOyz5i7cljlAZuUN37R+uhKF+vBJ2Y3XW29Lv2OmKsBDKPzYtlHFzkqv8HwhHBYpu1spXvt2F1mRzZRYwGwGxqNe+kBBYObMxGr9QLSlNRps97BuxbSfguhWC3bPnpJGUSqGqgrox+ok3HEQ/ySKXdSBbi9Nb8Zfl0N6+A==; s=purelymail1; d=spwhitton.name; v=1; bh=oa7NVkVmdZF2u2TPxmJMic3RWoTXRyEeqg4a1/h2fM0=; h=Received:Received:From:To:Subject:Date; DKIM-Signature: a=rsa-sha256; b=bytc4tlgNugy2YE5a7Ch1CTDbMzzCMRAqOezdX2OnGqFKq7oERMGpQ+FD7GUQbKKN/rtXcUjQ+ZxBUN83KFyocYDOBVDUQgKlPG9xji8STXu6hKac/ouLUbkREnJjym0Y/NhTXbMrHJ9AF5YIraD1UkJdkG+yrChuLhHyJr3ser+rzCJz13fTR3LkcTkfH3p5Cc5hM8tPxaws9kI4qxhfNlS8rYtnzxQ9stNO8dtD59qVdJb5a5iM8/CbaAubAKjBvCJHYKTqeZECmTzWLw3K7j2WYg1nvUCfwveZNaJBzQNjeCLeARvSJLIV0OKMkBljyvHKbxllkrC9OlbOnD7Ng==; s=purelymail1; d=purelymail.com; v=1; bh=oa7NVkVmdZF2u2TPxmJMic3RWoTXRyEeqg4a1/h2fM0=; h=Feedback-ID:Received:Received:From:To:Subject:Date; Feedback-ID: 20115:3760:null:purelymail X-Pm-Original-To: 79198-done@debbugs.gnu.org Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPSA id -1836246602; (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Sat, 09 Aug 2025 09:43:48 +0000 (UTC) Received: by zephyr.silentflame.com (Postfix, from userid 1000) id 1204594012D; Sat, 09 Aug 2025 10:43:48 +0100 (BST) From: Sean Whitton To: Stefan Monnier Subject: Re: bug#79198: 31.0.50; Problem with multiple global auto-revert modes In-Reply-To: References: <87sei22d6h.fsf@zephyr.silentflame.com> Date: Sat, 09 Aug 2025 10:43:48 +0100 Message-ID: <87zfc8zv6z.fsf@zephyr.silentflame.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 79198-done Cc: sbaugh@janestreet.com, jonas@bernoul.li, 79198-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hello, On Sat 09 Aug 2025 at 03:47am -04, Stefan Monnier wrote: >> I think that the following would fix the problem; how does it look: >> >> --8<---------------cut here---------------start------------->8--- >> diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el >> index 46c99052090..f2d21d7ef45 100644 >> --- a/lisp/emacs-lisp/easy-mmode.el >> +++ b/lisp/emacs-lisp/easy-mmode.el >> @@ -500,7 +500,8 @@ define-globalized-minor-mode >> (intern (concat global-mode-name "-enable-in-buffer"))) >> (minor-MODE-hook (intern (concat mode-name "-hook"))) >> (MODE-set-explicitly (intern (concat mode-name "-set-explicitly"))) >> - (MODE-major-mode (intern (concat (symbol-name mode) "-major-mode"))) >> + (MODE-major-mode (intern (concat (symbol-name global-mode) >> + "-major-mode"))) >> (MODE-predicate (intern (concat (replace-regexp-in-string >> "-mode\\'" "" global-mode-name) >> "-modes"))) >> --8<---------------cut here---------------end--------------->8--- > > I tend to agree and would suggest to put a "--" in there as well, since > it's used internally by the global major mode and is not meant to be > used by other code. > [ Same for the "-set-explicitly" which should be "--set-explicitly". ] Thanks for reviewing, now done. -- Sean Whitton ------------=_1754732702-23194-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 8 Aug 2025 12:47:21 +0000 Received: from localhost ([127.0.0.1]:37602 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ukMVE-0006S0-QX for submit@debbugs.gnu.org; Fri, 08 Aug 2025 08:47:21 -0400 Received: from lists.gnu.org ([2001:470:142::17]:56296) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ukMVB-0006Rf-7C for submit@debbugs.gnu.org; Fri, 08 Aug 2025 08:47:19 -0400 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 1ukMV3-0002Jk-78 for bug-gnu-emacs@gnu.org; Fri, 08 Aug 2025 08:47:09 -0400 Received: from sendmail.purelymail.com ([34.202.193.197]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ukMUz-000667-48 for bug-gnu-emacs@gnu.org; Fri, 08 Aug 2025 08:47:08 -0400 DKIM-Signature: a=rsa-sha256; b=OyupoAWakaQOj9O+VhC23pnt4yCNxY2GRbvJhG5p5k9+Dobfd07TNpH5iul4zmqy4lEgeRqyDh3IwM/Yk3Bn3mq6K0L1Y8bXfSQR3Yn1X+RL6zEPD5ULtsmJoUIPK2bZ+s9gX/DaYfQPERmB+iQEscOWlDLl8IIXc2JnIKl51ZyrsPmAH0gUVBHbb6FgGJPAk/YoeAFAqqyQ9kw7J/WSLcU/uzXmJLDLBqSGRZQWgJvqYm0Ud2PiIRP/TKNDgQIk0Qi5KE4shc4ZbQBfmgzPsnFcJmkSf+/sCHxUupda9zSk/oqA9q1Egh24p0zrb9hKUMxOmlSkOY+27JIXLyi76A==; s=purelymail1; d=spwhitton.name; v=1; bh=ldWGLZZRB2qRcxgbb6UJMO07hhQxESJ5UVTRBTtSbbs=; h=Received:Received:From:To:Subject:Date; DKIM-Signature: a=rsa-sha256; b=rBGX4+VnSQuBr5Ho/ly/S6LVmah3GQUNH81cwiWy1T3h6fo5OzAxs1hoNVxdW5ad79N2x2nLKRvrNyBpJmACZjp1NLY/BWCJNs3PPtCVo3BKfkhgYu9PPq+AWGPadbYR5iX2lTI5HtBr7SgzxA3VYFze8SocFxX8BjeaaXrdummg+JHaInT8kEfCheH1no4z26aExhtqImkKWc6CGHSYGARsMtmEpqkGl8YakTQHs21qGH6XiivGkhCUBFPloV108Yb+277dvY5n2k7bJQiOWqYHsfHwtEW6tvyo68pemE16sz0828IvNrd2mXSesNmIcOtoVc19JhYyB6ar+veu7Q==; s=purelymail1; d=purelymail.com; v=1; bh=ldWGLZZRB2qRcxgbb6UJMO07hhQxESJ5UVTRBTtSbbs=; h=Feedback-ID:Received:Received:From:To:Subject:Date; Feedback-ID: 20115:3760:null:purelymail X-Pm-Original-To: bug-gnu-emacs@gnu.org Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPSA id -1418453772 for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Fri, 08 Aug 2025 12:47:02 +0000 (UTC) Received: by zephyr.silentflame.com (Postfix, from userid 1000) id 2AC8C94012E; Fri, 08 Aug 2025 13:47:02 +0100 (BST) From: Sean Whitton To: bug-gnu-emacs@gnu.org Subject: 31.0.50; Problem with multiple global auto-revert modes Date: Fri, 08 Aug 2025 13:47:02 +0100 Message-ID: <87sei22d6h.fsf@zephyr.silentflame.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=34.202.193.197; envelope-from=spwhitton@spwhitton.name; helo=sendmail.purelymail.com 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, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) X-debbugs-cc: jonas@bernoul.li, monnier@iro.umontreal.ca, sbaugh@janestreet.com Hello, Currently, between Emacs core and Magit, there are three globalized versions of auto-revert-mode: global-auto-revert-mode, magit-auto-revert-mode and the new vc-auto-revert-mode. global-auto-revert-mode has a custom definition, but magit-auto-revert-mode and vc-auto-revert-mode both use define-globalized-minor-mode. That means they both make use of the variable auto-revert-mode-major-mode. Macroexpanding, --8<---------------cut here---------------start------------->8--- (defun vc-auto-revert-mode-enable-in-buffer () (unless auto-revert-mode-set-explicitly (unless (eq auto-revert-mode-major-mode major-mode) ; <-- HERE (if auto-revert-mode (progn (auto-revert-mode -1) (funcall (function vc-turn-on-auto-revert-mode-for-tracked-files))) (funcall (function vc-turn-on-auto-revert-mode-for-tracked-files))))) (setq auto-revert-mode-major-mode major-mode)) --8<---------------cut here---------------end--------------->8--- and --8<---------------cut here---------------start------------->8--- (defun magit-auto-revert-mode-enable-in-buffer () (unless auto-revert-mode-set-explicitly (unless (eq auto-revert-mode-major-mode major-mode) ; <-- HERE (if auto-revert-mode (progn (auto-revert-mode -1) (funcall (function magit-turn-on-auto-revert-mode-if-desired))) (funcall (function magit-turn-on-auto-revert-mode-if-desired))))) (setq auto-revert-mode-major-mode major-mode)) --8<---------------cut here---------------end--------------->8--- But now the following problem can occur: 1. Enable magit-auto-revert-mode. 2. *Subsequently*, enable vc-auto-revert-mode. 3. Visit a tracked file in a non-Git VC repository. Expected behaviour: vc-auto-revert-mode turns on auto-revert-mode because it's a buffer visiting a VCS-tracked file. Actual behaviour: magit-auto-revert-mode-enable-in-buffer declines to enable auto-revert-mode because it's not a Git repository. It sets auto-revert-mode-major-mode to non-nil. But then vc-auto-revert-mode-enable-in-buffer thinks it has already been called, and also does nothing. I think that the following would fix the problem; how does it look: --8<---------------cut here---------------start------------->8--- diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el index 46c99052090..f2d21d7ef45 100644 --- a/lisp/emacs-lisp/easy-mmode.el +++ b/lisp/emacs-lisp/easy-mmode.el @@ -500,7 +500,8 @@ define-globalized-minor-mode (intern (concat global-mode-name "-enable-in-buffer"))) (minor-MODE-hook (intern (concat mode-name "-hook"))) (MODE-set-explicitly (intern (concat mode-name "-set-explicitly"))) - (MODE-major-mode (intern (concat (symbol-name mode) "-major-mode"))) + (MODE-major-mode (intern (concat (symbol-name global-mode) + "-major-mode"))) (MODE-predicate (intern (concat (replace-regexp-in-string "-mode\\'" "" global-mode-name) "-modes"))) --8<---------------cut here---------------end--------------->8--- -- Sean Whitton ------------=_1754732702-23194-1-- From unknown Mon Aug 18 17:56:28 2025 X-Loop: help-debbugs@gnu.org Subject: bug#79198: 31.0.50; Problem with multiple global auto-revert modes Resent-From: Jonas Bernoulli Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 09 Aug 2025 14:58:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 79198 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Sean Whitton , Stefan Monnier Cc: sbaugh@janestreet.com, 79198-done@debbugs.gnu.org Received: via spool by 79198-done@debbugs.gnu.org id=D79198.17547514737602 (code D ref 79198); Sat, 09 Aug 2025 14:58:02 +0000 Received: (at 79198-done) by debbugs.gnu.org; 9 Aug 2025 14:57:53 +0000 Received: from localhost ([127.0.0.1]:42735 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ukl17-0001yV-27 for submit@debbugs.gnu.org; Sat, 09 Aug 2025 10:57:53 -0400 Received: from mail.hostpark.net ([212.243.197.30]:43978) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ukl11-0001yF-Ps for 79198-done@debbugs.gnu.org; Sat, 09 Aug 2025 10:57:50 -0400 Received: from localhost (localhost [127.0.0.1]) by mail.hostpark.net (Postfix) with ESMTP id F3E9C16189; Sat, 09 Aug 2025 16:57:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=bernoul.li; h= content-type:content-type:mime-version:message-id:date:date :references:in-reply-to:subject:subject:from:from; s=sel2011a; t=1754751464; bh=Oy4LXUXHcGdswd0McFOWxM5pQkMPvgoln18jNwpzi00=; b= cN73TpzkRx8HQa1JarAR2rDrxFp78o+gXOQgl0QU0GWufHvIgkWa2jP5xgPbS8C+ KDHzEkIAo4o8mQ78OBYDk/2XGAqJbMa23BT2pm0R1polKOxAjfhgv2O8ju1vuibT nesDtixK0V5UGnSXC/XJiceADgfoIvzg1EwFa3rU0Zc= X-Virus-Scanned: by Hostpark/NetZone Mailprotection at hostpark.net Received: from mail.hostpark.net ([127.0.0.1]) by localhost (mail1.hostpark.net [127.0.0.1]) (amavis, port 10224) with ESMTP id T5LMmXpPAMbk; Sat, 9 Aug 2025 16:57:44 +0200 (CEST) Received: from customer (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange secp256r1 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mail.hostpark.net (Postfix) with ESMTPSA id 31B3F1614C; Sat, 09 Aug 2025 16:57:43 +0200 (CEST) From: Jonas Bernoulli In-Reply-To: <87zfc8zv6z.fsf@zephyr.silentflame.com> References: <87sei22d6h.fsf@zephyr.silentflame.com> <87zfc8zv6z.fsf@zephyr.silentflame.com> Date: Sat, 09 Aug 2025 16:57:42 +0200 Message-ID: <877bzciluh.fsf@bernoul.li> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Sean Whitton writes: > Hello, > > On Sat 09 Aug 2025 at 03:47am -04, Stefan Monnier wrote: > >>> I think that the following would fix the problem; how does it look: >>> >>> --8<---------------cut here---------------start------------->8--- >>> diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el >>> index 46c99052090..f2d21d7ef45 100644 >>> --- a/lisp/emacs-lisp/easy-mmode.el >>> +++ b/lisp/emacs-lisp/easy-mmode.el >>> @@ -500,7 +500,8 @@ define-globalized-minor-mode >>> (intern (concat global-mode-name "-enable-in-buffer"))) >>> (minor-MODE-hook (intern (concat mode-name "-hook"))) >>> (MODE-set-explicitly (intern (concat mode-name "-set-explicitly"))) >>> - (MODE-major-mode (intern (concat (symbol-name mode) "-major-mode"))) >>> + (MODE-major-mode (intern (concat (symbol-name global-mode) >>> + "-major-mode"))) >>> (MODE-predicate (intern (concat (replace-regexp-in-string >>> "-mode\\'" "" global-mode-name) >>> "-modes"))) >>> --8<---------------cut here---------------end--------------->8--- >> >> I tend to agree and would suggest to put a "--" in there as well, since >> it's used internally by the global major mode and is not meant to be >> used by other code. >> [ Same for the "-set-explicitly" which should be "--set-explicitly". ] > > Thanks for reviewing, now done. Makes sense to me too. Instead of (symbol-name global-mode) you could use global-mode-name. Cheers, Jonas From unknown Mon Aug 18 17:56:28 2025 X-Loop: help-debbugs@gnu.org Subject: bug#79198: 31.0.50; Problem with multiple global auto-revert modes Resent-From: Sean Whitton Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 10 Aug 2025 09:53:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 79198 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Jonas Bernoulli Cc: sbaugh@janestreet.com, Stefan Monnier , 79198-done@debbugs.gnu.org Received: via spool by 79198-done@debbugs.gnu.org id=D79198.17548195234395 (code D ref 79198); Sun, 10 Aug 2025 09:53:01 +0000 Received: (at 79198-done) by debbugs.gnu.org; 10 Aug 2025 09:52:03 +0000 Received: from localhost ([127.0.0.1]:44047 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ul2ig-00018n-JU for submit@debbugs.gnu.org; Sun, 10 Aug 2025 05:52:02 -0400 Received: from sendmail.purelymail.com ([34.202.193.197]:60294) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ul2ie-00018A-Na for 79198-done@debbugs.gnu.org; Sun, 10 Aug 2025 05:52:01 -0400 DKIM-Signature: a=rsa-sha256; b=o/jLjcxxxCjuXZqhDbYlp8n2PSceoU8tLgracp6bbjgrfEYN5e84v3HPjbDeAm8oIV/fuMdYyNV/lA7sZ80OqgLWvJA7ych7thzE3yDMvCoLCF4XUT8WbkaFJ4ctOGyKT6tLk84s6CZnMiRbah+rQA6SaBplSCD9/+eY7ZpHfDPt77k/FER65RS1nZlJTncxRFRdc23EmJhTUBUG66UUp9QX0K8VGs/hJdQ0aGKikExKKqg3crDnzGv0sc1AR8pnwneudY7ylPInd8JlvGsXaZDydSDlHK6VHcWho7HndGOSSB53/2Rl3d8U2BxX/MAjsP8LvFHVnTz1odIhmn4HJQ==; s=purelymail1; d=spwhitton.name; v=1; bh=SrmM5ztLiRLEHKq94o2lBnWB9yRNtSQetJY81iFFAJk=; h=Received:Received:From:To:Subject:Date; DKIM-Signature: a=rsa-sha256; b=GI23IDywHhMqc9RdrJJYa+uj1GEEOCLpq1MEJlF42HTC0RXAvReVdI5zFJuyTP9+ArhuBKufRAyUxeRpVm9Cjq6b0SIezFm/cXcC1mQPoewtfK5NmtHyx4qZM7j4X7WtBsDuis66CdpMuQmeOTCsUYwH9ruwvkePpiR9fxF7OFBB30HXTH+WcMd2RSSwGM3yPCl4N7Ew/EImPMduTmI7jFpMYAUkuqU+9oCGHJ6eRsk0AGwUxfYmariL3PoyabfKzvJVR5A6N5R19i9Pf7bN2dpjATnSw8ItqfEA112AAgn4tBQS1qyzCqDz2mj2YQrWpfXxV/mUXem3IGHyECxz0Q==; s=purelymail1; d=purelymail.com; v=1; bh=SrmM5ztLiRLEHKq94o2lBnWB9yRNtSQetJY81iFFAJk=; h=Feedback-ID:Received:Received:From:To:Subject:Date; Feedback-ID: 20115:3760:null:purelymail X-Pm-Original-To: 79198-done@debbugs.gnu.org Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPSA id -924966298; (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Sun, 10 Aug 2025 09:51:50 +0000 (UTC) Received: by zephyr.silentflame.com (Postfix, from userid 1000) id 6AE8D9404C4; Sun, 10 Aug 2025 10:51:48 +0100 (BST) From: Sean Whitton In-Reply-To: <877bzciluh.fsf@bernoul.li> References: <87sei22d6h.fsf@zephyr.silentflame.com> <87zfc8zv6z.fsf@zephyr.silentflame.com> <877bzciluh.fsf@bernoul.li> Date: Sun, 10 Aug 2025 10:51:48 +0100 Message-ID: <87o6snwll7.fsf@zephyr.silentflame.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hello, Ah, thanks! -- Sean Whitton