GNU bug report logs - #17407
obsolete-autoloads can clobber regular autoloads

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Severity: minor; Reported by: Glenn Morris <rgm@HIDDEN>; dated Mon, 5 May 2014 07:22:01 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.
Disconnected #18466 from all other report(s). Request was from Glenn Morris <rgm@HIDDEN> to control <at> debbugs.gnu.org. Full text available.
Merged 17407 18466. Request was from Glenn Morris <rgm@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 17407 <at> debbugs.gnu.org:


Received: (at 17407) by debbugs.gnu.org; 5 May 2014 17:56:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 05 13:56:25 2014
Received: from localhost ([127.0.0.1]:51908 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1WhN7o-0004JV-KC
	for submit <at> debbugs.gnu.org; Mon, 05 May 2014 13:56:24 -0400
Received: from fencepost.gnu.org ([208.118.235.10]:59881 ident=Debian-exim)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <rgm@HIDDEN>) id 1WhN7l-0004JM-Qm
 for 17407 <at> debbugs.gnu.org; Mon, 05 May 2014 13:56:22 -0400
Received: from rgm by fencepost.gnu.org with local (Exim 4.71)
 (envelope-from <rgm@HIDDEN>)
 id 1WhN7k-0005yi-VG; Mon, 05 May 2014 13:56:21 -0400
From: Glenn Morris <rgm@HIDDEN>
To: 17407 <at> debbugs.gnu.org
Subject: Re: bug#17407: obsolete-autoloads can clobber regular autoloads
References: <eqwqe0elmd.fsf@HIDDEN>
X-Spook: ICE M-14 Mantis AIEWS Bin Laden Taiwan supercomputer
X-Ran: l*)n{BDO!Dyno](yEU0v0^*tlNKU/l#,ku')'it:xK&`4J6]8}ATmX}F[=qsK=tcOKh:?;
X-Hue: red
X-Debbugs-No-Ack: yes
X-Attribution: GM
Date: Mon, 05 May 2014 13:56:20 -0400
Message-ID: <c7lhug154r.fsf@HIDDEN>
User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Spam-Score: -5.7 (-----)
X-Debbugs-Envelope-To: 17407
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.7 (-----)


PS irrespective of obsolete-autoloads, it seems like a potential problem
that `make autoloads' might leave you with a loaddefs.el that is not
strictly up-to-date. If it scans rmail.el first and adds its entry to
loaddefs.el, then scans rmailsum.el and so modifies rmail.el, the
rmail.el entry in loaddefs.el will have an outdated timestamp. So if you
immediately run `make autoloads' again, loaddefs.el will change.

Perhaps if when scanning file B, file A gets modified, it should go back
and update the stored timestamp of file A, if previously scanned.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#17407; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 5 May 2014 07:21:51 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 05 03:21:51 2014
Received: from localhost ([127.0.0.1]:51258 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1WhDDi-0001IL-UG
	for submit <at> debbugs.gnu.org; Mon, 05 May 2014 03:21:51 -0400
Received: from fencepost.gnu.org ([208.118.235.10]:46025 ident=Debian-exim)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <rgm@HIDDEN>) id 1WhDDg-0001IB-Jx
 for submit <at> debbugs.gnu.org; Mon, 05 May 2014 03:21:49 -0400
Received: from rgm by fencepost.gnu.org with local (Exim 4.71)
 (envelope-from <rgm@HIDDEN>)
 id 1WhDDf-0002fG-1T; Mon, 05 May 2014 03:21:47 -0400
From: Glenn Morris <rgm@HIDDEN>
To: submit <at> debbugs.gnu.org
Subject: obsolete-autoloads can clobber regular autoloads
X-Spook: Freeh bullion Qaddafi Reno Skipjack target CBNRC spy
X-Ran: -j)-45kTAHe\bB7cwa3loj$$o8VBaNo<ail;W:F!gl.Yrg;L#qkM4~%p9-m6mE#''s'8)u
X-Hue: cyan
X-Debbugs-No-Ack: yes
X-Attribution: GM
Date: Mon, 05 May 2014 03:21:46 -0400
Message-ID: <eqwqe0elmd.fsf@HIDDEN>
User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Spam-Score: -5.7 (-----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.7 (-----)

Package: emacs
Version: 24.4.50

Have an up-to-date build of current trunk:

cd lisp
make autoloads
cp loaddefs.el loaddefs.el.BAK
echo ";;foo" >> mail/rmailsum.el
make autoloads

diff loaddefs.el.BAK loaddefs.el
  - see that all the rmail.el autoloads have vanished

I believe this explains the failure in http://hydra.nixos.org/build/10824210 .

Analysis:

The batch-update-autoloads in `make autoload' extracts autoloads from
rmailsum.el into rmail.el, modifying the hash in the latter and the
file's timestamp. It then calles `make obsolete-autoloads'.
This calls batch-update-autoloads again. This notices that rmail.el has
a changed timestamp, so rescans it for autoloads. Because
generate-autoload-cookie is set to a non-standard value, it finds none,
so it erases them all from loaddefs.el.

I don't understand why `obsolete-autoloads' is scanning rmail.el, when
it calls "-f batch-update-autoloads ${lisp}/obsolete".
Why isn't it just restricting itself to scanning obsolete/, as instructed?




Report forwarded to bug-gnu-emacs@HIDDEN:
bug#17407; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Tue, 28 Feb 2017 21:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.