From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Unbalanced change hooks (part 2) [Documentation fix still remaining] Date: Wed, 10 Aug 2016 19:03:04 +0300 Message-ID: <831t1wharr.fsf@gnu.org> References: <83fuqnm6og.fsf@gnu.org> <83eg67m3aq.fsf@gnu.org> <20160808143614.GA7208@acm.fritz.box> <83mvkni7xf.fsf@gnu.org> <20160808165449.GB7208@acm.fritz.box> <83d1lji3ih.fsf@gnu.org> <20160808184223.GC7208@acm.fritz.box> <838tw7hyk2.fsf@gnu.org> <20160808195459.GD7208@acm.fritz.box> <83tweugeu9.fsf@gnu.org> <20160809163814.GD4893@acm.fritz.box> <83inv9hkjd.fsf@gnu.org> <83h9ashfgx.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: blaine.gmane.org X-Trace: blaine.gmane.org 1470845075 20204 195.159.176.226 (10 Aug 2016 16:04:35 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 10 Aug 2016 16:04:35 +0000 (UTC) Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Aug 10 18:04:29 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bXVzY-000586-7i for ged-emacs-devel@m.gmane.org; Wed, 10 Aug 2016 18:04:28 +0200 Original-Received: from localhost ([::1]:42591 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXVzV-0000yg-46 for ged-emacs-devel@m.gmane.org; Wed, 10 Aug 2016 12:04:25 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:53409) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXVyc-0008Pq-BM for emacs-devel@gnu.org; Wed, 10 Aug 2016 12:03:31 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bXVyY-0000pn-5f for emacs-devel@gnu.org; Wed, 10 Aug 2016 12:03:29 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:42494) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXVyY-0000pa-32; Wed, 10 Aug 2016 12:03:26 -0400 Original-Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:4105 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1bXVyV-0008LZ-Hg; Wed, 10 Aug 2016 12:03:24 -0400 In-reply-to: (message from Stefan Monnier on Wed, 10 Aug 2016 10:56:59 -0400) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:206544 Archived-At: > From: Stefan Monnier > Date: Wed, 10 Aug 2016 10:56:59 -0400 > > > AFAICT, this is what happens, indeed, > > Then the old text was right: it's called before ANY modification. Convince Alan, and I will change it back. > > except that the call to before-change-functions in some cases does not > > precede the first modification of the series. IOW, by the time the > > hook is called, some modifications were already done. > > Sounds like a bug. I'm not convinced it's a bug. > In any case, my point is that the doc should still say "before any > modification" because that's really what the code *should* do. We could > add a blurb in the doc saying that the before and after hooks may not be > properly paired (neither in number of calls nor in the specific value of > BEG/END), but we should still claim that they're both called for any and > all modifications Which is inaccurate when modifications are done in several separate parts, and you already agreed it's okay to call the hooks only once. So "for any and all modifications" is bound to draw fire from people who take that at face value.