GNU bug report logs -
#3375
23.0.94; Document incompatible change to format of bookmarks
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 3375 in the body.
You can then email your comments to 3375 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#3375
; Package
emacs
.
(Mon, 25 May 2009 21:30:05 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
"Drew Adams" <drew.adams <at> oracle.com>
:
New bug report received and forwarded. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
(Mon, 25 May 2009 21:30:06 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):
Emacs 23 apparently introduces an incompatible change to the format of
bookmarks. A bookmark that formerly would have had this form:
("Directories"
((front-context-string . "\n22.8 File Direc")
(rear-context-string . ": > Directories\n")
(position . 133657)
(filename . "c:/Emacs-23-0-3/info/emacs")
(info-node . "Directories")
(handler . Info-bookmark-jump)))
Now can have this form:
("Directories"
(front-context-string . "\n22.8 File Direc")
(rear-context-string . ": > Directories\n")
(position . 133657)
(filename . "c:/Emacs-23-0-3/info/emacs")
(info-node . "Directories")
(handler . Info-bookmark-jump))
The is handled in the changed definition of
`bookmark-get-bookmark-record', which accommodates both forms.
However, if you try to do, say, `C-x r l' in Emacs 22 and you have
created a bookmark of the latter form (using Emacs 23), then `C-x r l'
raises an error. That's normal - Emacs 22 can't know about the
incompatible change that Emacs 23 introduces.
I don't know why this change was necessary. (Why?) But let's assume
that it was in fact necessary. The bug is that it is totally
undocumented.
Please _at least_ document this in NEWS. The _only_ thing mentioned in
NEWS about bookmarks is this:
"*** bookmark provides `bookmark-make-record-function' so
special major modes like Info can teach bookmark.el how to save
and restore the relevant data."
In GNU Emacs 23.0.94.1 (i386-mingw-nt5.1.2600) of 2009-05-24 on
SOFT-MJASON Windowing system distributor `Microsoft Corp.', version
5.1.2600 configured using `configure --with-gcc (3.4)'
Reply sent
to
Karl Fogel <kfogel <at> red-bean.com>
:
You have taken responsibility.
(Fri, 09 Oct 2009 05:35:05 GMT)
Full text and
rfc822 format available.
Notification sent
to
"Drew Adams" <drew.adams <at> oracle.com>
:
bug acknowledged by developer.
(Fri, 09 Oct 2009 05:35:06 GMT)
Full text and
rfc822 format available.
Message #10 received at 3375-close <at> emacsbugs.donarmstrong.com (full text, mbox):
fixed
--
Thanks for the report. I've documented the format change in NEWS;
here's the commit:
$ cvs ci -F msg etc/NEWS etc/ChangeLog
/sources/emacs/emacs/etc/NEWS,v <-- etc/NEWS
new revision: 1.2100; previous revision: 1.2099
/sources/emacs/emacs/etc/ChangeLog,v <-- etc/ChangeLog
new revision: 1.812; previous revision: 1.811
Mailing notification to emacs-diffs <at> gnu.org... sent.
$
(I don't know why the default write-out format was changed, as I didn't
commit rev 1.114 of bookmark.el. We could investigate and find out, but
it would be of forensic interest only at this point -- the change is
made, and there's a long list of bookmark.el bugs to go. So I'm not
going to investigate the reasoning behind 1.114 closely; if you happen
to find out, please let me know.)
-Karl
Message #11 received at 3375-close <at> emacsbugs.donarmstrong.com (full text, mbox):
> Thanks for the report. I've documented the format change in NEWS;...
>
> (I don't know why the default write-out format was changed,
> as I didn't commit rev 1.114 of bookmark.el. We could investigate
> and find out, but it would be of forensic interest only at this
> point -- the change is made, and there's a long list of
> bookmark.el bugs to go. So I'm not going to investigate the
> reasoning behind 1.114 closely; if you happen to find out,
> please let me know.)
Thanks for adding the NEWS entry, Karl.
It's really too bad that this incompatible change was made without anyone
documenting the reason (at least I haven't found such documentation). Likewise,
without any discussion (that I'm aware of).
One can only hope that the change was truly necessary or at least somehow
useful, for whatever unknown reason.
The 1.114 log entry seems to suggest that it only adjusted some parts of the
code to work with "the 2 slightly different formats used until now in
bookmark.el's code."
It's unclear what that text really tries to mean, but if it is suggesting that
the new, Emacs 23 format was already in use in (some parts of) the bookmark
code, then that's not true (assuming that you're right that 1.114 is the
culprit, which it does seem to be).
This is an incompatible change in the basic bookmark format, starting with Emacs
23 (apparently, starting with 1.114). It seems to be a gratuitous change, but
how to tell, since no reason was given?
I wonder if, in making that change, Stefan was aware that the format is new, or
if he perhaps really thought that it had been in use previously. Perhaps he was
confused by the misleading (incorrect) comments in the file. Dunno. And we'll
likely never know, as you point out. Too bad.
We've now had at least two incompatible format changes to the `bookmark-alist'
structure, over its history. Neither of which brought anything useful to the
party, AFAICT. Oh well. Let's hope that next year someone doesn't mutate the
structure to a fourth format. ;-)
Thx - Drew
Information forwarded
to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#3375
; Package
emacs
.
(Fri, 09 Oct 2009 06:30:04 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
"Drew Adams" <drew.adams <at> oracle.com>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
(Fri, 09 Oct 2009 06:30:04 GMT)
Full text and
rfc822 format available.
Message #16 received at 3375 <at> emacsbugs.donarmstrong.com (full text, mbox):
Forgot to send to the bug thread. I keep forgetting that cc'ing the close
message doesn't copy the actual bug thread.
-----Original Message-----
From: Drew Adams Sent: Thursday, October 08, 2009 11:18 PM
To: 'Karl Fogel'; '3375-close <at> debbugs.gnu.org'
Subject: RE: Fix "Document incompatible change to format of bookmarks"
> Thanks for the report. I've documented the format change in NEWS;...
>
> (I don't know why the default write-out format was changed,
> as I didn't commit rev 1.114 of bookmark.el. We could investigate
> and find out, but it would be of forensic interest only at this
> point -- the change is made, and there's a long list of
> bookmark.el bugs to go. So I'm not going to investigate the
> reasoning behind 1.114 closely; if you happen to find out,
> please let me know.)
Thanks for adding the NEWS entry, Karl.
It's really too bad that this incompatible change was made without anyone
documenting the reason (at least I haven't found such documentation). Likewise,
without any discussion (that I'm aware of).
One can only hope that the change was truly necessary or at least somehow
useful, for whatever unknown reason.
The 1.114 log entry seems to suggest that it only adjusted some parts of the
code to work with "the 2 slightly different formats used until now in
bookmark.el's code."
It's unclear what that text really tries to mean, but if it is suggesting that
the new, Emacs 23 format was already in use in (some parts of) the bookmark
code, then that's not true (assuming that you're right that 1.114 is the
culprit, which it does seem to be).
This is an incompatible change in the basic bookmark format, starting with Emacs
23 (apparently, starting with 1.114). It seems to be a gratuitous change, but
how to tell, since no reason was given?
I wonder if, in making that change, Stefan was aware that the format is new, or
if he perhaps really thought that it had been in use previously. Perhaps he was
confused by the misleading (incorrect) comments in the file. Dunno. And we'll
likely never know, as you point out. Too bad.
We've now had at least two incompatible format changes to the `bookmark-alist'
structure, over its history. Neither of which brought anything useful to the
party, AFAICT. Oh well. Let's hope that next year someone doesn't mutate the
structure to a fourth format. ;-)
Thx - Drew
Message #17 received at 3375-close <at> emacsbugs.donarmstrong.com (full text, mbox):
"Drew Adams" <drew.adams <at> oracle.com> writes:
> Thanks for adding the NEWS entry, Karl.
>
> It's really too bad that this incompatible change was made without
> anyone documenting the reason (at least I haven't found such
> documentation). Likewise, without any discussion (that I'm aware of).
I agree. By the way, I may well be the guilty party -- I've been
hacking intermittently on bookmark.el for sixteen years now, and there
are many changes I've simply forgotten I ever made. It's quite likely
that when Stefan made rev 1.114, he was just continuing a trend I or
someone else had already started.
> One can only hope that the change was truly necessary or at least somehow
> useful, for whatever unknown reason.
Well, looking at it, I don't think it was really needed. However, now
that we have made the change, I think we should just stick with it and
make it be The One True Format. That's why I'm eager to write a truly
robust fix for bug #3646.
> The 1.114 log entry seems to suggest that it only adjusted some parts of the
> code to work with "the 2 slightly different formats used until now in
> bookmark.el's code."
Yup. I or someone else might have written a bug before then that caused
the nominal format 1 to be written out incorrectly (in what is now the
new format, as-yet-to-be-named "format 2" I guess).
> It's unclear what that text really tries to mean, but if it is
> suggesting that the new, Emacs 23 format was already in use in (some
> parts of) the bookmark code, then that's not true (assuming that
> you're right that 1.114 is the culprit, which it does seem to be).
>
> This is an incompatible change in the basic bookmark format, starting
> with Emacs 23 (apparently, starting with 1.114). It seems to be a
> gratuitous change, but how to tell, since no reason was given?
>
> I wonder if, in making that change, Stefan was aware that the format
> is new, or if he perhaps really thought that it had been in use
> previously. Perhaps he was confused by the misleading (incorrect)
> comments in the file. Dunno. And we'll likely never know, as you point
> out. Too bad.
The out-of-date comments certainly didn't help matters, yeah.
> We've now had at least two incompatible format changes to the `bookmark-alist'
> structure, over its history. Neither of which brought anything useful to the
> party, AFAICT. Oh well. Let's hope that next year someone doesn't mutate the
> structure to a fourth format. ;-)
We're going to document it for real this time, give the new format a
name, make sure the version number gets bumped, and explicitly request
that no one change the format again. It should be extensible enough as
it is, after all.
Thanks for noticing the problem and taking the time to describe it so
thoroughly; that was a huge help.
-Karl
Information forwarded
to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#3375
; Package
emacs
.
(Fri, 09 Oct 2009 07:25:06 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
"Drew Adams" <drew.adams <at> oracle.com>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
(Fri, 09 Oct 2009 07:25:06 GMT)
Full text and
rfc822 format available.
Message #22 received at 3375 <at> emacsbugs.donarmstrong.com (full text, mbox):
> Thanks for noticing the problem and taking the time to describe it so
> thoroughly; that was a huge help.
Thanks for your help on this. It helps even just to hear that it's normal to be
confused given the current state and the history. ;-) It's not obvious for
someone who tries to read the code and comments to stay convinced that s?he
understands. ;-)
- Drew
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> emacsbugs.donarmstrong.com
.
(Fri, 06 Nov 2009 15:24:12 GMT)
Full text and
rfc822 format available.
This bug report was last modified 15 years and 228 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.