GNU bug report logs - #76430
30.0.93; Error running timer ‘ac-update-greedy’: (wrong-type-argument sequencep #<obarray n=1>)

Previous Next

Package: emacs;

Reported by: yoshinori kawahara <yoshinori.kawahara <at> gmail.com>

Date: Thu, 20 Feb 2025 05:07:02 UTC

Severity: normal

Found in version 30.0.93

To reply to this bug, email your comments to 76430 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#76430; Package emacs. (Thu, 20 Feb 2025 05:07:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to yoshinori kawahara <yoshinori.kawahara <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Thu, 20 Feb 2025 05:07:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: yoshinori kawahara <yoshinori.kawahara <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 30.0.93; Error running timer ‘ac-update-greedy’: (wrong-type-argument sequencep #<obarray n=1>)
Date: Thu, 20 Feb 2025 12:13:13 +1100
The auto-complete package no longer works in emacs 30.
When enabling autocomplete I get the following error when an
autocompletion attempt is made

    Error running timer ‘ac-update-greedy’: (wrong-type-argument
sequencep #<obarray n=1>)

This is the traceback

Debugger entered--Lisp error: (wrong-type-argument sequencep #<obarray n=1>)
  vconcat(#<obarray n=1> #<obarray n=1>)
  (append (vconcat local-abbrev-table global-abbrev-table) nil)
  (mapcar 'popup-x-to-string (append (vconcat local-abbrev-table
global-abbrev-table) nil))
  eval((mapcar 'popup-x-to-string (append (vconcat local-abbrev-table
global-abbrev-table) nil)))
  ac-candidates-1(((prefix . ac-prefix-default) (candidates mapcar
'popup-x-to-string (append (vconcat local-abbrev-table
global-abbrev-table) nil)) (action . expand-abbrev) (symbol . "a")
(cache)))
  ac-candidates()
  ac-update(nil)
  ac-update-greedy()
  apply(ac-update-greedy nil)
  timer-event-handler([t 0 0 100000 0.1 ac-update-greedy nil idle 0 nil])



I can provoke a similar error by evaluating the following in a *scratch* buffer:

(vconcat (obarray-make) (obarray-make))

This snippet evaluates with a problem on emacs 29, but fails on emacs 30


In GNU Emacs 30.0.93 (build 1, x86_64-pc-linux-gnu, GTK+ Version
 3.24.48, cairo version 1.18.2) of 2025-02-19 built on frameworknori
Repository revision: 68bcabf58afddb377d172857ce7648ad3ff09618
Repository branch: HEAD
Windowing system distributor 'The X.Org Foundation', version 11.0.12401005
System Description: Debian GNU/Linux trixie/sid

Configured using:
 'configure --prefix=/home/nori/opt'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB

Important settings:
  value of $LANG: en_AU.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Text

Minor modes in effect:
  global-auto-complete-mode: t
  which-key-mode: t
  vertico-mode: t
  override-global-mode: t
  display-time-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  minibuffer-regexp-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/home/nori/.emacs.d/elpa/transient-0.8.4/transient hides
/home/nori/opt/share/emacs/30.0.93/lisp/transient

Features:
(shadow sort mail-extr emacsbug message yank-media puny rfc822 mml
mml-sec epa derived epg rfc6068 epg-config gnus-util time-date mm-decode
mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader
sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils
dired-aux vertico-directory dired dired-loaddefs flymake project
warnings thingatpt paredit cus-edit cus-start cus-load wid-edit
auto-complete-config auto-complete popup leuven-theme which-key consult
bookmark bbdb bbdb-site timezone edmacro kmacro erc format-spec
erc-backend erc-networks erc-common erc-compat erc-loaddefs grep compile
text-property-search comint ansi-osc ansi-color ring advice ebrowse
ebuff-menu view vertico compat pp cl-extra help-mode use-package
use-package-ensure use-package-delight use-package-diminish
use-package-bind-key bind-key easy-mmode use-package-core finder-inf
time auto-complete-autoloads bbdb-autoloads consult-autoloads
magit-autoloads pcase magit-section-autoloads llama-autoloads
paredit-autoloads popup-autoloads transient-autoloads vertico-autoloads
info with-editor-autoloads package browse-url url url-proxy url-privacy
url-expand url-methods url-history url-cookie generate-lisp-file
url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq
eieio eieio-core cl-macs icons password-cache json subr-x map byte-opt
gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc iso-transl
tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd
touch-screen tool-bar dnd fontset image regexp-opt fringe tabulated-list
replace newcomment text-mode lisp-mode prog-mode register page tab-bar
menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse
jit-lock font-lock syntax font-core term/tty-colors frame minibuffer
nadvice seq simple cl-generic indonesian philippine 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 composite emoji-zwj charscript charprop
case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads dbusbind inotify lcms2 dynamic-setting system-font-setting
font-render-setting cairo gtk x-toolkit xinput2 x multi-tty move-toolbar
make-network-process emacs)

Memory information:
((conses 16 302553 22068) (symbols 48 22161 0) (strings 32 95746 3206)
 (string-bytes 1 2323129) (vectors 16 35034)
 (vector-slots 8 719338 89421) (floats 8 118 96) (intervals 56 696 0)
 (buffers 992 13))

-- 

Yoshinori Kawahara




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76430; Package emacs. (Thu, 20 Feb 2025 07:57:02 GMT) Full text and rfc822 format available.

Message #8 received at 76430 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: yoshinori kawahara <yoshinori.kawahara <at> gmail.com>
Cc: 76430 <at> debbugs.gnu.org
Subject: Re: bug#76430: 30.0.93;
 Error running timer ‘ac-update-greedy’:
 (wrong-type-argument sequencep #<obarray n=1>)
Date: Thu, 20 Feb 2025 09:55:59 +0200
> From: yoshinori kawahara <yoshinori.kawahara <at> gmail.com>
> Date: Thu, 20 Feb 2025 12:13:13 +1100
> 
> The auto-complete package no longer works in emacs 30.
> When enabling autocomplete I get the following error when an
> autocompletion attempt is made
> 
>     Error running timer ‘ac-update-greedy’: (wrong-type-argument
> sequencep #<obarray n=1>)
> 
> This is the traceback
> 
> Debugger entered--Lisp error: (wrong-type-argument sequencep #<obarray n=1>)
>   vconcat(#<obarray n=1> #<obarray n=1>)
>   (append (vconcat local-abbrev-table global-abbrev-table) nil)
>   (mapcar 'popup-x-to-string (append (vconcat local-abbrev-table
> global-abbrev-table) nil))
>   eval((mapcar 'popup-x-to-string (append (vconcat local-abbrev-table
> global-abbrev-table) nil)))
>   ac-candidates-1(((prefix . ac-prefix-default) (candidates mapcar
> 'popup-x-to-string (append (vconcat local-abbrev-table
> global-abbrev-table) nil)) (action . expand-abbrev) (symbol . "a")
> (cache)))
>   ac-candidates()
>   ac-update(nil)
>   ac-update-greedy()
>   apply(ac-update-greedy nil)
>   timer-event-handler([t 0 0 100000 0.1 ac-update-greedy nil idle 0 nil])
> 
> 
> 
> I can provoke a similar error by evaluating the following in a *scratch* buffer:
> 
> (vconcat (obarray-make) (obarray-make))
> 
> This snippet evaluates with a problem on emacs 29, but fails on emacs 30

Thanks.  Would you please report this to the developers of
auto-complete?  AFAIU, this package is not part of Emacs and is not on
ELPA, and it probably needs some adjustments to Emacs 30.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76430; Package emacs. (Thu, 20 Feb 2025 10:11:01 GMT) Full text and rfc822 format available.

Message #11 received at 76430 <at> debbugs.gnu.org (full text, mbox):

From: yoshinori kawahara <yoshinori.kawahara <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 76430 <at> debbugs.gnu.org
Subject: Re: bug#76430: 30.0.93; Error running timer ‘ac-update-greedy’: (wrong-type-argument sequencep #<obarray n=1>)
Date: Thu, 20 Feb 2025 21:09:24 +1100
Hello,
OK i'll see how to raise this with the developers of auto-complete
thank you

On Thu, 20 Feb 2025 at 18:56, Eli Zaretskii <eliz <at> gnu.org> wrote:
>
> > From: yoshinori kawahara <yoshinori.kawahara <at> gmail.com>
> > Date: Thu, 20 Feb 2025 12:13:13 +1100
> >
> > The auto-complete package no longer works in emacs 30.
> > When enabling autocomplete I get the following error when an
> > autocompletion attempt is made
> >
> >     Error running timer ‘ac-update-greedy’: (wrong-type-argument
> > sequencep #<obarray n=1>)
> >
> > This is the traceback
> >
> > Debugger entered--Lisp error: (wrong-type-argument sequencep #<obarray n=1>)
> >   vconcat(#<obarray n=1> #<obarray n=1>)
> >   (append (vconcat local-abbrev-table global-abbrev-table) nil)
> >   (mapcar 'popup-x-to-string (append (vconcat local-abbrev-table
> > global-abbrev-table) nil))
> >   eval((mapcar 'popup-x-to-string (append (vconcat local-abbrev-table
> > global-abbrev-table) nil)))
> >   ac-candidates-1(((prefix . ac-prefix-default) (candidates mapcar
> > 'popup-x-to-string (append (vconcat local-abbrev-table
> > global-abbrev-table) nil)) (action . expand-abbrev) (symbol . "a")
> > (cache)))
> >   ac-candidates()
> >   ac-update(nil)
> >   ac-update-greedy()
> >   apply(ac-update-greedy nil)
> >   timer-event-handler([t 0 0 100000 0.1 ac-update-greedy nil idle 0 nil])
> >
> >
> >
> > I can provoke a similar error by evaluating the following in a *scratch* buffer:
> >
> > (vconcat (obarray-make) (obarray-make))
> >
> > This snippet evaluates with a problem on emacs 29, but fails on emacs 30
>
> Thanks.  Would you please report this to the developers of
> auto-complete?  AFAIU, this package is not part of Emacs and is not on
> ELPA, and it probably needs some adjustments to Emacs 30.



-- 

Yoshinori Kawahara




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76430; Package emacs. (Fri, 25 Apr 2025 03:11:01 GMT) Full text and rfc822 format available.

Message #14 received at 76430 <at> debbugs.gnu.org (full text, mbox):

From: Oleg Kostiuchenko <olegk <at> sdf.org>
To: 76430 <at> debbugs.gnu.org
Subject: Re: bug#76430: 30.0.93; Error running timer ‘ac-update-greedy’:
 (wrong-type-argument sequencep #<obarray n=1>)
Date: Thu, 24 Apr 2025 22:56:23 +0000
Hi guys,

This issue affects myself as well since I switched to Emacs 30 so thanks for the confirmation,

Just to add my two cents: While the fix is not rolled out, the easiest possible workaround is to go to the offending line in auto-complete.el, and replace the value of "candidates":

(mapcar 'popup-x-to-string (append (vconcat local-abbrev-table global-abbrev-table) nil))

- with a plain nil. The only downside of that change would be a loss of the abbrev completion source, but at least ac-complete will return to the line.

Thanks
Oleg




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#76430; Package emacs. (Wed, 11 Jun 2025 18:52:02 GMT) Full text and rfc822 format available.

Message #17 received at 76430 <at> debbugs.gnu.org (full text, mbox):

From: Oleg Kostiuchenko <olegk <at> sdf.org>
To: 76430 <at> debbugs.gnu.org
Subject: Re: bug#76430: 30.0.93; Error running timer ‘ac-update-greedy’:
 (wrong-type-argument sequencep #<obarray n=1>)
Date: Wed, 11 Jun 2025 18:51:20 +0000
Hi guys,

This issue affects myself as well since I switched to Emacs 30 so thanks for the confirmation,

Just to add my two cents: While the fix is not rolled out, the easiest possible workaround is to go to the offending line in auto-complete.el, and replace the value of "candidates":

(mapcar 'popup-x-to-string (append (vconcat local-abbrev-table global-abbrev-table) nil))

- with a plain nil. The only downside of that change would be a loss of the abbrev completion source, but at least ac-complete will return to the line.

Thanks
Oleg




This bug report was last modified 3 days ago.

Previous Next


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