GNU bug report logs -
#21971
25.1.50; EUDC conversion to BBDB 3 incompatibility
Previous Next
Reported by: George McNinch <gmcninch <at> gmail.com>
Date: Sat, 21 Nov 2015 16:33:03 UTC
Severity: normal
Found in version 25.1.50
Fixed in version 25.1
Done: Glenn Morris <rgm <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 21971 in the body.
You can then email your comments to 21971 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21971
; Package
emacs
.
(Sat, 21 Nov 2015 16:33:03 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
George McNinch <gmcninch <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Sat, 21 Nov 2015 16:33:03 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
I'm reporting an incompatibility between functions found in
eudc-export.el and BBDB3.
The version of eudc should be implied by the emacs-25 version info
below. The version of bbdb is
bbdb-20151114.1541
installed from MELPA.
Here is how to reproduce the issue.
I initialize/configure bbdb, eudc and ldap as follows:
;;---------------------------------------------------------------------------
;; bbdb
(use-package bbdb
:config
(bbdb-initialize 'gnus 'message 'sc 'aliases))
;;---------------------------------------------------------------------------
;; eudc and ldap
(use-package eudc
:config
(eudc-set-server "ldap.tufts.edu" 'ldap t)
(setq eudc-server-hotlist '(("ldap.tufts.edu" . ldap)))
(setq eudc-inline-expansion-servers 'hotlist)
(setq eudc-inline-query-format '((name)
(firstname)
(firstname name)
(email)
))
(setq eudc-ldap-bbdb-conversion-alist
`((name . cn)
(net . mail)
(address eudc-bbdbify-address postaladdress "Address"))))
(use-package ldap
:config
(setq ldap-host-parameters-alist
'(("ldap.tufts.edu" base "dc=tufts,dc=edu")))
(setq ldap-ldapsearch-args (quote ("-tt" "-LLL" "-x"))))
;;---------------------------------------------------------------------------
Now do
M-x eudc-query server
Any hit will do; with the above server setting, you can e.g. find *me*
by entering McNinch as NAME in the query form.
After pushing the "query server" button, enter the *Directory Query
Results* buffer, put point on a record (for an individual not already in
the bbdb), and press 'b' (or do M-x eudc-try-bbdb-insert ).
I get an error, which is reported in messages as
bbdb-change-record: Wrong type argument: listp, t
In fact, a record *has* been inserted into the bbdb; in this case it
looks like
["George" "McNinch" nil "George.McNinch <at> tufts.edu" nil nil nil nil ((creation-date . "2015-11-21 14:13:29 +0000") (timestamp . "2015-11-21 14:13:29 +0000")) nil]
(assuming McNinch was not already in the bbdb, of course).
This record seems "mangled" from the point-of-view of BBDB3 - the email
address should be "in a list" inside this record-vector. Perhaps other
things are amiss, as well.
Note also that the setting of eudc-ldap-bbdb-conversion-alist I made
above isn't quite the original value. If I instead use the original
value, e.g. by instead using the original value
[which amounts to:
(setq eudc-ldap-bbdb-conversion-alist
`((name . cn)
(net . mail)
(address eudc-bbdbify-address postaladdress "Address")
(phone
(eudc-bbdbify-phone telephonenumber "Phone")))
in the initialization of EUDC],
then when I press "b" on a record
in the *Directory Query Results* buffer, I get the error
eudc-bbdbify-phone: Symbol’s function definition is void:
bbdb-parse-phone-number
;;---------------------------------------------------------------------------
In GNU Emacs 25.1.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.14.5)
of 2015-11-15
Repository revision: 70f1fda4ae6abb5e11dcf281738c25f6f5b06061
Windowing system distributor 'The X.Org Foundation', version 11.0.11604000
System Description: Debian GNU/Linux 8.2 (jessie)
Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS
NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11
Important settings:
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8-unix
Major mode: Messages
Minor modes in effect:
override-global-mode: t
tooltip-mode: t
global-eldoc-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
buffer-read-only: t
line-number-mode: t
transient-mark-mode: t
Recent messages:
Parsing results... done
eudc-bbdbify-phone: Symbol’s function definition is void: bbdb-parse-phone-number
Quit
Load-path shadows:
None found.
Features:
(shadow sort bbdb-message mail-extr emacsbug sendmail bbdb-com crm
goto-addr thingatpt eudcb-ldap ldap eudc cus-edit cus-start cus-load
eudc-vars wid-edit bbdb bbdb-site timezone message dired format-spec
rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
rfc2047 rfc2045 ietf-drums mailabbrev mail-utils gmm-utils mailheader
use-package diminish bind-key easy-mmode url-handlers url-parse
auth-source cl-seq eieio byte-opt bytecomp byte-compile cl-extra cconv
eieio-core cl-macs gv gnus-util mm-util help-fns help-mode cl-loaddefs
pcase cl-lib mail-prsvr password-cache url-vars finder-inf info package
easymenu epg-config time-date mule-util tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel x-win term/common-win x-dnd
tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment
elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan
thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian
slovak czech european ethiopic indian cyrillic chinese charscript
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote dbusbind inotify
dynamic-setting system-font-setting font-render-setting move-toolbar gtk
x-toolkit x multi-tty make-network-process emacs)
Memory information:
((conses 16 135459 17741)
(symbols 48 24227 0)
(miscs 40 125 165)
(strings 32 27735 3761)
(string-bytes 1 835086)
(vectors 16 16572)
(vector-slots 8 486561 5903)
(floats 8 210 32)
(intervals 56 364 0)
(buffers 976 16)
(heap 1024 48378 1131))
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21971
; Package
emacs
.
(Sun, 22 Nov 2015 02:45:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 21971 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi George,
George McNinch <gmcninch <at> gmail.com> writes:
[...]
> In fact, a record *has* been inserted into the bbdb; in this case it
> looks like
>
> ["George" "McNinch" nil "George.McNinch <at> tufts.edu" nil nil nil nil ((creation-date . "2015-11-21 14:13:29 +0000") (timestamp . "2015-11-21 14:13:29 +0000")) nil]
>
> (assuming McNinch was not already in the bbdb, of course).
>
> This record seems "mangled" from the point-of-view of BBDB3 - the email
> address should be "in a list" inside this record-vector. Perhaps other
> things are amiss, as well.
Thank you for the detailed description of how to replicate the issue.
> Note also that the setting of eudc-ldap-bbdb-conversion-alist I made
> above isn't quite the original value. If I instead use the original
> value, e.g. by instead using the original value
>
> [which amounts to:
>
> (setq eudc-ldap-bbdb-conversion-alist
> `((name . cn)
> (net . mail)
> (address eudc-bbdbify-address postaladdress "Address")
> (phone
> (eudc-bbdbify-phone telephonenumber "Phone")))
>
>
> in the initialization of EUDC],
>
> then when I press "b" on a record
> in the *Directory Query Results* buffer, I get the error
>
> eudc-bbdbify-phone: Symbol’s function definition is void:
> bbdb-parse-phone-number
OK, this seems like a separate issue. I haven't investigated it yet.
With your eudc-ldap-bbdb-conversion-alist workaround still enabled, can
you try the attached patch to see if it fixes exporting for you?
Thanks,
Thomas
[0001-Add-BBDB-3-support-for-EUDC-export.patch (text/x-patch, attachment)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21971
; Package
emacs
.
(Sun, 22 Nov 2015 15:01:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 21971 <at> debbugs.gnu.org (full text, mbox):
Hi Thomas,
TF> With your eudc-ldap-bbdb-conversion-alist workaround still
TF> enabled, can you try the attached patch to see if it fixes
TF> exporting for you?
Indeed, this works fine for me; thanks!
>> Note also that the setting of eudc-ldap-bbdb-conversion-alist I
>> made above isn't quite the original value. If I instead use the
>> original value, e.g. by instead using the original value
>>
>> [which amounts to:
>>
>> (setq eudc-ldap-bbdb-conversion-alist `((name . cn) (net . mail)
>> (address eudc-bbdbify-address postaladdress "Address") (phone
>> (eudc-bbdbify-phone telephonenumber "Phone")))
>>
>>
>> in the initialization of EUDC],
>>
>> then when I press "b" on a record in the *Directory Query
>> Results* buffer, I get the error
>>
>> eudc-bbdbify-phone: Symbol’s function definition is void:
>> bbdb-parse-phone-number
TF> OK, this seems like a separate issue. I haven't investigated it
TF> yet.
Right; should I have made a separate report, or is this OK?
--------------------------------------------
By the way:
I wonder: if bbdb really now uses "mail" instead of "net", I'd think
that (?) that eudc-ldap-bbdb-conversion-alist should instead read:
(setq eudc-ldap-bbdb-conversion-alist
`((name . cn)
(mail . mail)
(address eudc-bbdbify-address postaladdress "Address")))
But that doesn't seem to work (I tried... I get then BBDB record with
*no* mail field at all).
In general, I find it difficult to work out what can be used in that
alist. E.g. it seems that there is a key symbol ou for the record
passed to eudc-create-bbdb-record.
So I tried adding the pair
(Organizations . ou)
to that alist, but it doens't seem to populate the "right part of the
BBDB record" - in fact, the BBDB record gets a new line with an
Organizations field, but it makes the BBDB unhappy (it eventually
complains of an "illegal field" or something). I'd hoped to populate the
bit that shows up to the right of the name when displaying the BBDB
record, which I thought was called "Organizations".
I also tried (organization . ou) and (company . ou) and maybe a few
others, but nothing seemed to work and guessing doesn't seem so healthy,
and looking at the code in eudc-export.el doesn't seem like
Well, this is a distraction, and only tangentially related to the patch,
but it does point out that it'd be nice to have a clearer definition of
the fields on both sides of this conversion...!
Best,
george
--
+ + + George McNinch <gmcninch <at> gmail.com>
+ + + http://gmcninch.math.tufts.edu
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21971
; Package
emacs
.
(Sun, 22 Nov 2015 16:37:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 21971 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
George McNinch <gmcninch <at> gmail.com> writes:
> Hi Thomas,
>
> TF> With your eudc-ldap-bbdb-conversion-alist workaround still
> TF> enabled, can you try the attached patch to see if it fixes
> TF> exporting for you?
>
> Indeed, this works fine for me; thanks!
>
> >> Note also that the setting of eudc-ldap-bbdb-conversion-alist I
> >> made above isn't quite the original value. If I instead use the
> >> original value, e.g. by instead using the original value
> >>
> >> [which amounts to:
> >>
> >> (setq eudc-ldap-bbdb-conversion-alist `((name . cn) (net . mail)
> >> (address eudc-bbdbify-address postaladdress "Address") (phone
> >> (eudc-bbdbify-phone telephonenumber "Phone")))
> >>
> >>
> >> in the initialization of EUDC],
> >>
> >> then when I press "b" on a record in the *Directory Query
> >> Results* buffer, I get the error
> >>
> >> eudc-bbdbify-phone: Symbol’s function definition is void:
> >> bbdb-parse-phone-number
>
> TF> OK, this seems like a separate issue. I haven't investigated it
> TF> yet.
>
> Right; should I have made a separate report, or is this OK?
It's fine, we can work on it here.
> --------------------------------------------
> By the way:
>
> I wonder: if bbdb really now uses "mail" instead of "net", I'd think
> that (?) that eudc-ldap-bbdb-conversion-alist should instead read:
>
> (setq eudc-ldap-bbdb-conversion-alist
> `((name . cn)
> (mail . mail)
> (address eudc-bbdbify-address postaladdress "Address")))
>
> But that doesn't seem to work (I tried... I get then BBDB record with
> *no* mail field at all).
>
> In general, I find it difficult to work out what can be used in that
> alist. E.g. it seems that there is a key symbol ou for the record
> passed to eudc-create-bbdb-record.
>
> So I tried adding the pair
>
> (Organizations . ou)
>
> to that alist, but it doens't seem to populate the "right part of the
> BBDB record" - in fact, the BBDB record gets a new line with an
> Organizations field, but it makes the BBDB unhappy (it eventually
> complains of an "illegal field" or something). I'd hoped to populate the
> bit that shows up to the right of the name when displaying the BBDB
> record, which I thought was called "Organizations".
>
> I also tried (organization . ou) and (company . ou) and maybe a few
> others, but nothing seemed to work and guessing doesn't seem so healthy,
> and looking at the code in eudc-export.el doesn't seem like
>
> Well, this is a distraction, and only tangentially related to the patch,
> but it does point out that it'd be nice to have a clearer definition of
> the fields on both sides of this conversion...!
Can you remove your eudc-ldap-bbdb-conversion-alist customization and
try the attached patch? I think it will fix both the phone parsing and
organization missing issues.
I wouldn't worry about 'net unless you're customizing it directly. It's
a change and I left the old 'net as the customization entry point, but
it will get converted to 'mail depending on which version of BBDB is in
use.
Thomas
[0001-Improve-EUDC-to-BBDB-3-export.patch (text/x-patch, attachment)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21971
; Package
emacs
.
(Sun, 22 Nov 2015 17:03:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 21971 <at> debbugs.gnu.org (full text, mbox):
Hi Thomas,
TF> Can you remove your eudc-ldap-bbdb-conversion-alist
TF> customization and try the attached patch? I think it will fix
TF> both the phone parsing and organization missing issues.
Both issues are resolved for me; thanks!
Best,
george
--
φ-φ-φ George McNinch <gmcninch <at> gmail.com>
φ-φ-φ http://gmcninch.math.tufts.edu
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21971
; Package
emacs
.
(Mon, 23 Nov 2015 02:47:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 21971 <at> debbugs.gnu.org (full text, mbox):
fixed 21971 25.1
thanks
George McNinch <gmcninch <at> gmail.com> writes:
> Hi Thomas,
>
> TF> Can you remove your eudc-ldap-bbdb-conversion-alist
> TF> customization and try the attached patch? I think it will fix
> TF> both the phone parsing and organization missing issues.
>
> Both issues are resolved for me; thanks!
I pushed the fixes to the emacs-25 branch. They'll subsequently get
merged from there to master.
Thanks for the report. Closing.
Thomas
bug marked as fixed in version 25.1, send any further explanations to
21971 <at> debbugs.gnu.org and George McNinch <gmcninch <at> gmail.com>
Request was from
Glenn Morris <rgm <at> gnu.org>
to
control <at> debbugs.gnu.org
.
(Mon, 23 Nov 2015 18:31:02 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Tue, 22 Dec 2015 12:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 9 years and 185 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.