emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs trunk and Gnus master are fully sync'd now


From: Ted Zlatanov
Subject: Re: Emacs trunk and Gnus master are fully sync'd now
Date: Tue, 09 Jul 2013 15:39:29 -0400
User-agent: Gnus/5.130008 (Ma Gnus v0.8) Emacs/24.3.50 (gnu/linux)

On Tue, 09 Jul 2013 21:33:24 +0200 David Engster <address@hidden> wrote: 

DE> Giorgos Keramidas writes:
>> So the unexist ranges *are* there.  But as you said the information
>> seems to be lost somewhere between the time `.newsrc.eld' loads and the
>> time Gnus queries the imap server for group state.

DE> Yes, and I found the problem. I could not reproduce this initially
DE> because it only exists in Emacs trunk, not in Gnus git. After I switched
DE> to Emacs trunk, I saw the same thing.

DE> It's actually really simple: The problem is `gnus-clean-old-newsrc',
DE> where 'unexist' marks will be removed when you upgrade from an older
DE> Gnus version, probably because the format has changed. However, in Emacs
DE> trunk, `gnus-newsrc-file-version' is "Gnus v5.13", which is always
DE> considered *smaller* than "Ma Gnus v0.03", so it will always remove the
DE> marks:

DE>     (when (or force
DE>           (< (gnus-continuum-version gnus-newsrc-file-version)
DE>              (gnus-continuum-version "Ma Gnus v0.03")))
DE>       ;; Remove old `exist' marks from old nnimap groups.

DE> So this has to be changed or maybe completely removed. I'm not sure; I
DE> guess it *could* happen that someone running Ma Gnus v0.02 upgrades to
DE> Gnus from Emacs 24.4.

DE> Katsumi? Lars? Anybody?

It seems safest to always remove old exist/unexist/whatever marks that
can be recreated from the server if `gnus-newsrc-file-version' does not
equal the current Gnus version.  With a message saying why, and maybe a
way to disable it selectively and trigger it explicitly.  Worst case,
some users have to download things twice... but the logic is much
simpler regarding versions.

Ted




reply via email to

[Prev in Thread] Current Thread [Next in Thread]