GNU bug report logs - #63759
29.0.91; dockerfile-ts-mode--imenu returns invalid index

Previous Next

Package: emacs;

Reported by: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>

Date: Sat, 27 May 2023 17:39:02 UTC

Severity: normal

Found in version 29.0.91

Done: Eli Zaretskii <eliz <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 63759 in the body.
You can then email your comments to 63759 AT debbugs.gnu.org in the normal way.

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#63759; Package emacs. (Sat, 27 May 2023 17:39:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 27 May 2023 17:39:02 GMT) Full text and rfc822 format available.

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

From: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 29.0.91; dockerfile-ts-mode--imenu returns invalid index
Date: Sat, 27 May 2023 18:38:29 +0100
Reproduction:

0. Open a Emacs GUI, i.e. NS port
1. C-x C-f /some/nonexistent/Dockerfile
2. M-x toggle-debug-on-error
2. M-x imenu-add-menubar-index
3. Click on the Index > Stage menu item
4. Observe the following error pops up

Expectation:

If the dockerfile-ts-mode buffer is empty, there should not be an extra
item preset in the imenu index that when clicked on will jump to a
non-existent location and result in an error.

```
Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p nil)
  imenu-default-goto-function("Stage" nil)
  imenu(("Stage" nil imenu-default-goto-function))
  imenu(("Stage"))
  imenu--menubar-select(("Stage"))
  #f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>)()
  funcall-interactively(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>))
  #<subr call-interactively>(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil)
  call-interactively <at> ido-cr+-record-current-command(#<subr call-interactively> #f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil)
  apply(call-interactively <at> ido-cr+-record-current-command #<subr call-interactively> (#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil))
  call-interactively(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil)
  command-execute(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>))
```


In GNU Emacs 29.0.91 (build 1, aarch64-apple-darwin22.4.0, NS
 appkit-2299.50 Version 13.3.1 (a) (Build 22E772610a)) of 2023-05-26
 built on MobileCat.localdomain
Windowing system distributor 'Apple', version 10.3.2299
System Description:  macOS 13.3.1

Configured using:
 'configure --prefix=/opt/local --disable-silent-rules --without-dbus
 --without-gconf --without-libotf --without-m17n-flt --with-libgmp
 --with-gnutls --with-json --with-xml2 --with-modules --infodir
 /opt/local/share/info/emacs --with-sqlite3 --with-webp --with-ns
 --with-lcms2 --without-harfbuzz --without-imagemagick --without-xaw3d
 --with-tree-sitter --with-rsvg --with-xwidgets
 --with-native-compilation=aot 'CFLAGS=-pipe -Os -Wno-attributes
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk -arch
 arm64' 'CPPFLAGS=-I/opt/local/include
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk'
 'LDFLAGS=-L/opt/local/lib -Wl,-headerpad_max_install_names -Wl,-rpath
 /opt/local/lib/gcc12 -Wl,-no_pie
 -Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk
 -arch arm64''

Configured features:
ACL GIF GLIB GMP GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP
NOTIFY KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XWIDGETS ZLIB

Important settings:
  value of $LANG: en_GB.UTF-8
  locale-coding-system: utf-8-unix

Major mode: ELisp/l

Minor modes in effect:
  company-quickhelp-mode: t
  company-quickhelp-local-mode: t
  company-prescient-mode: t
  prescient-persist-mode: t
  rainbow-mode: t
  elisp-def-mode: t
  display-line-numbers-mode: t
  subword-mode: t
  page-break-lines-mode: t
  beginend-prog-mode: t
  imenu-list-minor-mode: t
  purpose-mode: t
  windmove-mode: t
  magit-todos-mode: t
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  diff-hl-flydiff-mode: t
  projectile-rails-global-mode: t
  projectile-mode: t
  shell-dirtrack-mode: t
  pdf-occur-global-minor-mode: t
  crm-custom-mode: t
  override-global-mode: t
  dap-tooltip-mode: t
  dap-ui-many-windows-mode: t
  dap-ui-controls-mode: t
  dap-ui-mode: t
  treemacs-filewatch-mode: t
  treemacs-follow-mode: t
  treemacs-git-mode: t
  treemacs-fringe-indicator-mode: t
  winner-mode: t
  which-key-mode: t
  which-function-mode: t
  smooth-scrolling-mode: t
  show-smartparens-global-mode: t
  show-smartparens-mode: t
  smartparens-global-mode: t
  smartparens-mode: t
  server-mode: t
  savehist-mode: t
  save-place-mode: t
  rxt-global-mode: t
  rxt-mode: t
  recentf-mode: t
  minibuffer-depth-indicate-mode: t
  ido-vertical-mode: t
  ido-ubiquitous-mode: t
  global-whitespace-cleanup-mode: t
  whitespace-cleanup-mode: t
  global-so-long-mode: t
  global-origami-mode: t
  origami-mode: t
  global-move-dup-mode: t
  move-dup-mode: t
  global-hl-line-mode: t
  global-flycheck-mode: t
  global-diff-hl-show-hunk-mouse-mode: t
  diff-hl-show-hunk-mouse-mode: t
  global-diff-hl-mode: t
  diff-hl-mode: t
  global-company-mode: t
  company-mode: t
  global-auto-revert-mode: t
  global-aggressive-indent-mode: t
  gcmh-mode: t
  flx-ido-mode: t
  ido-everywhere: t
  icomplete-vertical-mode: t
  icomplete-mode: t
  editorconfig-mode: t
  direnv-mode: t
  desktop-save-mode: t
  delete-selection-mode: t
  dap-auto-configure-mode: t
  dap-mode: t
  yas-minor-mode: t
  auto-compile-on-save-mode: t
  auto-compile-mode: t
  amx-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  window-divider-mode: t
  buffer-read-only: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  visual-line-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  temp-buffer-resize-mode: t

Load-path shadows:
/Users/wyuenho/.emacs.d/elpa/transient-20230519.1940/transient hides /Applications/MacPorts/Emacs.app/Contents/Resources/lisp/transient

Features:
(shadow sort mail-extr misearch multi-isearch visual-regexp-steroids
visual-regexp helpful cc-langs trace edebug info-look elisp-refs
emacsbug cl-print flycheck-inline flycheck-cask facemenu two-column
dired-aux vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs diff-hl-dired
all-the-icons-dired dired-collapse dired-hacks-utils tcl
company-quickhelp pos-tip company-prescient prescient char-fold
company-keywords company-etags etags fileloop company-gtags
company-dabbrev-code company-dabbrev company-yasnippet company-capf
company-files company-cmake company-clang company-semantic
company-template company-bbdb rainbow-mode elisp-def ert debug backtrace
display-line-numbers cap-words superword subword smartparens-rust
smartparens-config smartparens-javascript smartparens-ruby
smartparens-org smartparens-python smartparens-markdown smartparens-text
smartparens-c page-break-lines beginend window-purpose-x shut-up
imenu-list hideshow window-purpose window-purpose-fixes
window-purpose-prefix-overload window-purpose-switch
window-purpose-layout window-purpose-core window-purpose-configuration
window-purpose-utils ibuffer-projectile windmove dired-hide-dotfiles
shrink-path git-timemachine vc-git magit-lfs magit-todos hl-todo async
forge-list forge-commands forge-semi forge-bitbucket buck forge-gogs
gogs forge-gitea gtea forge-gitlab glab forge-github ghub-graphql treepy
gsexp ghub forge-notify forge-revnote forge-pullreq forge-issue
forge-topic bug-reference forge-post forge-repo forge forge-core
forge-db closql emacsql-sqlite-common emacsql emacsql-compiler
magit-bookmark magit-submodule magit-blame magit-stash magit-reflog
magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote
magit-commit magit-sequence magit-notes magit-worktree magit-tag
magit-merge magit-branch magit-reset magit-files magit-refs magit-status
magit magit-repos magit-apply magit-wip magit-log magit-diff smerge-mode
git-commit log-edit add-log magit-core magit-autorevert magit-margin
magit-transient magit-process with-editor magit-mode magit-git
magit-base magit-section cursor-sensor crm diff-hl-flydiff diff
ediff-merg ediff-mult ediff-wind ediff-diff ediff-help ediff-init
ediff-util rg rg-info-hack rg-menu rg-ibuffer rg-result wgrep-rg wgrep
rg-history rg-header projectile-rails rake inflections inf-ruby
ruby-mode smie autoinsert lsp-metals view lsp-metals-treeview
treemacs-extensions treemacs-mouse-interface lsp-metals-protocol
lsp-sourcekit dap-java lsp-java request lsp cargo cargo-process
rust-ts-mode cmake-ts-mode yard-mode lsp-pyright pet lsp-jedi
python-pytest projectile grep transient python-isort python-black python
compat python-insert-docstring typescript-ts-mode prettier tramp
tramp-loaddefs trampver tramp-integration files-x tramp-compat ls-lisp
nvm iter2 generator reformatter flycheck-package package-lint finder
dockerfile-ts-mode toml-ts-mode yaml-ts-mode eterm-256color term
disp-table native-complete shell ehelp xterm-color verb js c-ts-common
treesit cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align
cc-engine cc-vars cc-defs url-queue url-file org ob ob-tangle ob-ref
ob-lob ob-table ob-exp org-macro org-src ob-comint org-pcomplete
pcomplete org-list org-footnote org-faces org-entities ob-emacs-lisp
ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys
oc org-loaddefs cal-menu calendar cal-loaddefs org-version org-compat
org-macs quick-peek lsp-ui lsp-ui-flycheck lsp-ui-doc xwidget goto-addr
lsp-ui-imenu lsp-ui-peek lsp-ui-sideline lsp-ui-util face-remap
pdf-loader pdf-occur ibuf-ext ibuffer ibuffer-loaddefs tablist
tablist-filter semantic/wisent/comp semantic/wisent
semantic/wisent/wisent semantic/util-modes semantic/util semantic
semantic/tag semantic/lex semantic/fw mode-local cedet pdf-isearch
pdf-misc pdf-tools pdf-view treemacs-bookmarks treemacs-tags bookmark
jka-compr pdf-cache pdf-info tq pdf-util format-spec pdf-macs image-mode
exif iedit iedit-lib mc-hide-unmatched-lines-mode mc-mark-more
mc-cycle-cursors multiple-cursors-core rect crm-custom scroll-on-jump
pager-default-keybindings pager browse-kill-ring edmacro kmacro
use-package-bind-key bind-key use-package-delight exec-path-from-shell
all-the-icons all-the-icons-faces all-the-icons-data-material-icons
all-the-icons-data-fluentui-system-icons
all-the-icons-data-fontawesome-4 all-the-icons-data-weather-icons
all-the-icons-data-vscode-codicons all-the-icons-data-octicons
all-the-icons-data-mfixx all-the-icons-data-file-icons
all-the-icons-data-devopicons all-the-icons-data-alltheicons svg dom xml
parse-time iso8601 spaceline-config spaceline-segments spaceline
powerline powerline-separators powerline-themes solarized-dark-theme
solarized-theme solarized solarized-faces delight quelpa-use-package
use-package-core quelpa lisp-mnt help-fns radix-tree finder-inf
mm-archive message sendmail yank-media dired dired-loaddefs rfc822 mml
mml-sec epa gnus-util time-date mailabbrev gmm-utils mailheader
mm-decode mm-bodies mm-encode mail-utils gnutls url-cache url-http
url-auth mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums
mail-prsvr url-gw dap-mouse dap-ui lsp-treemacs lsp-treemacs-generic
lsp-treemacs-themes treemacs-treelib treemacs treemacs-header-line
treemacs-compatibility treemacs-mode treemacs-interface
treemacs-persistence treemacs-filewatch-mode treemacs-follow-mode
treemacs-rendering treemacs-annotations treemacs-async
treemacs-workspaces treemacs-dom treemacs-visuals
treemacs-fringe-indicator pulse treemacs-faces treemacs-icons
treemacs-scope treemacs-themes treemacs-core-utils pfuture
treemacs-logging treemacs-customization treemacs-macros gdb-mi bindat
gud bui bui-list bui-info bui-entry bui-core bui-history bui-button
bui-utils lsp-lens winner which-key which-func smooth-scrolling
smartparens loadhist server savehist saveplace pcre2el rxt re-builder
recentf mb-depth ido-vertical-mode ido-completing-read+ memoize cus-edit
pp minibuf-eldef help-at-pt whitespace-cleanup-mode whitespace so-long
origami origami-parsers cl move-dup hl-line flycheck find-func
diff-hl-show-hunk diff-hl-inline-popup diff-hl log-view pcvs-util vc-dir
vc vc-dispatcher company autorevert aggressive-indent gcmh flx-ido
advice flx ido icomplete editorconfig editorconfig-core
editorconfig-core-handle editorconfig-fnmatch direnv diff-mode
easy-mmode desktop frameset delsel dap-mode dap-tasks dap-launch
lsp-docker yaml posframe dap-overlays lsp-mode lsp-protocol
yasnippet-snippets yasnippet xref project tree-widget wid-edit spinner
network-stream puny nsm markdown-mode color thingatpt noutline outline
lv inline imenu ht f f-shortdoc ewoc epg rfc6068 epg-config dash compile
text-property-search comint ansi-osc ansi-color ring auto-compile amx s
let-alist filenotify cus-load move-dup-autoloads gcmh-autoloads
yarn-mode-autoloads git-timemachine-autoloads web-mode-autoloads
docker-compose-mode-autoloads monky-autoloads auto-yasnippet-autoloads
company-prescient-autoloads cycle-quotes-autoloads forge-autoloads
auto-compile-autoloads python-docstring-autoloads
flycheck-plantuml-autoloads direnv-autoloads lsp-pyright-autoloads
graphviz-dot-mode-autoloads prettier-autoloads lsp-sourcekit-autoloads
protobuf-mode-autoloads lsp-java-autoloads
highlight-indent-guides-autoloads ts-comint-autoloads
impostman-autoloads macrostep-autoloads spaceline-autoloads
bug-hunter-autoloads graphql-mode-autoloads yard-mode-autoloads
git-modes-autoloads fontify-face-autoloads crm-custom-autoloads
buffer-move-autoloads window-purpose-autoloads shut-up-autoloads
pet-autoloads scroll-on-jump-autoloads package-build-autoloads derived
flycheck-package-autoloads magit-lfs-autoloads lsp-origami-autoloads
origami-autoloads pdf-tools-autoloads ido-completing-read+-autoloads
go-mode-autoloads verb-autoloads memoize-autoloads lsp-ui-autoloads
reason-mode-autoloads company-quickhelp-autoloads sbt-mode-autoloads
lsp-jedi-autoloads lsp-metals-autoloads dap-mode-autoloads
page-break-lines-autoloads smart-semicolon-autoloads
ssh-config-mode-autoloads sphinx-doc-autoloads
browse-kill-ring-autoloads dired-hide-dotfiles-autoloads
svg-lib-autoloads jsonian-autoloads amx-autoloads
eterm-256color-autoloads xterm-color-autoloads ialign-autoloads
dotenv-mode-autoloads shrink-path-autoloads default-text-scale-autoloads
iter2-autoloads enh-ruby-mode-autoloads swift-mode-autoloads
csv-mode-autoloads po-mode-autoloads dired-single-autoloads
flycheck-cask-autoloads tuareg-autoloads caml-autoloads
all-the-icons-dired-autoloads all-the-icons-autoloads jq-mode-autoloads
smartparens-autoloads flx-isearch-autoloads emmet-mode-autoloads
imenu-list-autoloads editorconfig-autoloads closql-autoloads
emacsql-autoloads cask-mode-autoloads ghub-autoloads
company-native-complete-autoloads native-complete-autoloads
company-autoloads focus-autoloads flycheck-projectile-autoloads
rainbow-mode-autoloads delight-autoloads flx-ido-autoloads
olivetti-autoloads lorem-ipsum-autoloads wgrep-ag-autoloads
buttercup-autoloads vundo-autoloads yaml-mode-autoloads
python-insert-docstring-autoloads cargo-autoloads
add-node-modules-path-autoloads request-autoloads pos-tip-autoloads
expand-region-autoloads sass-mode-autoloads haml-mode-autoloads
powerline-autoloads nvm-autoloads nodejs-repl-autoloads
prescient-autoloads string-inflection-autoloads
visual-regexp-steroids-autoloads terraform-mode-autoloads
flycheck-inline-autoloads whitespace-cleanup-mode-autoloads
projectile-rails-autoloads rake-autoloads inf-ruby-autoloads
inflections-autoloads lsp-docker-autoloads yaml-autoloads
python-pytest-autoloads flycheck-golangci-lint-autoloads
flycheck-autoloads pkg-info-autoloads epl-autoloads scala-mode-autoloads
quick-peek-autoloads tablist-autoloads groovy-mode-autoloads
imenu-anywhere-autoloads pager-default-keybindings-autoloads
pager-autoloads treepy-autoloads bui-autoloads repeat-help-autoloads
apib-mode-autoloads quelpa-use-package-autoloads quelpa-autoloads
package-lint-autoloads ido-vertical-mode-autoloads
multiple-cursors-autoloads solarized-theme-autoloads beginend-autoloads
smooth-scrolling-autoloads vterm-autoloads which-key-autoloads
aggressive-indent-autoloads diff-hl-autoloads ron-mode-autoloads
rg-autoloads wgrep-autoloads hcl-mode-autoloads visual-regexp-autoloads
udev-mode-autoloads dired-collapse-autoloads dired-hacks-utils-autoloads
ag-autoloads arduino-mode-autoloads ede/auto eieio-base crux-autoloads
elisp-def-autoloads coverage-autoloads ov-autoloads
shift-number-autoloads python-isort-autoloads magit-todos-autoloads
pcre2el-autoloads magit-autoloads magit-section-autoloads
git-commit-autoloads with-editor-autoloads transient-autoloads
hl-todo-autoloads compat-autoloads kurecolor-autoloads
ibuffer-projectile-autoloads projectile-autoloads flx-autoloads
lsp-treemacs-autoloads lsp-mode-autoloads markdown-mode-autoloads
spinner-autoloads treemacs-autoloads cfrs-autoloads posframe-autoloads
hydra-autoloads lv-autoloads pfuture-autoloads ace-window-autoloads
avy-autoloads yasnippet-snippets-autoloads yasnippet-autoloads
python-black-autoloads reformatter-autoloads async-autoloads
iedit-autoloads exec-path-from-shell-autoloads plantuml-mode-autoloads
helpful-autoloads elisp-refs-autoloads f-autoloads s-autoloads
ht-autoloads info dash-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 eieio eieio-core password-cache json map byte-opt url-vars
comp comp-cstr warnings icons subr-x rx cl-seq cl-macs cl-extra
help-mode bytecomp byte-compile gv pcase bootstrap-theme cl-loaddefs
cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify
ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/ns-win ns-win
ucs-normalize mule-util term/common-win 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 xwidget-internal kqueue cocoa
ns lcms2 multi-tty make-network-process native-compile emacs)

Memory information:
((conses 16 1505781 323512)
 (symbols 48 92767 0)
 (strings 32 373056 79327)
 (string-bytes 1 11185792)
 (vectors 16 166597)
 (vector-slots 8 3918931 479803)
 (floats 8 818 1811)
 (intervals 56 4328 1341)
 (buffers 984 30))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63759; Package emacs. (Sat, 27 May 2023 18:34:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>, Randy Taylor <dev <at> rjt.dev>
Cc: 63759 <at> debbugs.gnu.org
Subject: Re: bug#63759: 29.0.91;
 dockerfile-ts-mode--imenu returns invalid index
Date: Sat, 27 May 2023 21:34:18 +0300
> From: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>
> Date: Sat, 27 May 2023 18:38:29 +0100
> 
> 
> Reproduction:
> 
> 0. Open a Emacs GUI, i.e. NS port
> 1. C-x C-f /some/nonexistent/Dockerfile
> 2. M-x toggle-debug-on-error
> 2. M-x imenu-add-menubar-index
> 3. Click on the Index > Stage menu item
> 4. Observe the following error pops up
> 
> Expectation:
> 
> If the dockerfile-ts-mode buffer is empty, there should not be an extra
> item preset in the imenu index that when clicked on will jump to a
> non-existent location and result in an error.
> 
> ```
> Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p nil)
>   imenu-default-goto-function("Stage" nil)
>   imenu(("Stage" nil imenu-default-goto-function))
>   imenu(("Stage"))
>   imenu--menubar-select(("Stage"))
>   #f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>)()
>   funcall-interactively(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>))
>   #<subr call-interactively>(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil)
>   call-interactively <at> ido-cr+-record-current-command(#<subr call-interactively> #f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil)
>   apply(call-interactively <at> ido-cr+-record-current-command #<subr call-interactively> (#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil))
>   call-interactively(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil)
>   command-execute(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>))
> ```

Thanks.

Randy, can you p-lease look into this?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63759; Package emacs. (Sun, 28 May 2023 00:58:01 GMT) Full text and rfc822 format available.

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

From: Randy Taylor <dev <at> rjt.dev>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>, 63759 <at> debbugs.gnu.org
Subject: Re: bug#63759: 29.0.91;
 dockerfile-ts-mode--imenu returns invalid index
Date: Sun, 28 May 2023 00:57:03 +0000
[Message part 1 (text/plain, inline)]
On Saturday, May 27th, 2023 at 14:33, Eli Zaretskii <eliz <at> gnu.org> wrote:
> > From: Jimmy Yuen Ho Wong wyuenho <at> gmail.com
> 
> > Date: Sat, 27 May 2023 18:38:29 +0100
> > 
> > Reproduction:
> > 
> > 0. Open a Emacs GUI, i.e. NS port
> > 1. C-x C-f /some/nonexistent/Dockerfile
> > 2. M-x toggle-debug-on-error
> > 2. M-x imenu-add-menubar-index
> > 3. Click on the Index > Stage menu item
> > 4. Observe the following error pops up
> > 
> > Expectation:
> > 
> > If the dockerfile-ts-mode buffer is empty, there should not be an extra
> > item preset in the imenu index that when clicked on will jump to a
> > non-existent location and result in an error.
> > 
> > `Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p nil) imenu-default-goto-function("Stage" nil) imenu(("Stage" nil imenu-default-goto-function)) imenu(("Stage")) imenu--menubar-select(("Stage")) #f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>)() funcall-interactively(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>)) #<subr call-interactively>(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil) call-interactively <at> ido-cr+-record-current-command(#<subr call-interactively> #f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil) apply(call-interactively <at> ido-cr+-record-current-command #<subr call-interactively> (#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil)) call-interactively(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>) nil nil) command-execute(#f(compiled-function () (interactive nil) #<bytecode 0xcfe8182542f4cbd>))`
> 
> 
> Thanks.
> 
> Randy, can you p-lease look into this?

Thanks for the report Jimmy.

Patch attached.
[0001-dockerfile-ts-mode-Prevent-empty-categories-in-imenu.patch (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63759; Package emacs. (Sun, 28 May 2023 01:29:02 GMT) Full text and rfc822 format available.

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

From: Ruijie Yu <ruijie <at> netyu.xyz>
To: Randy Taylor <dev <at> rjt.dev>
Cc: Eli Zaretskii <eliz <at> gnu.org>, Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>,
 63759 <at> debbugs.gnu.org
Subject: Re: bug#63759: 29.0.91; dockerfile-ts-mode--imenu returns invalid
 index
Date: Sun, 28 May 2023 09:28:23 +0800
Randy Taylor <dev <at> rjt.dev> writes:

> Thanks for the report Jimmy.
>
> Patch attached.
>
> [2. text/x-patch; 0001-dockerfile-ts-mode-Prevent-empty-categories-in-imenu.patch]...

I think you can get rid of the `append' call, no?

-- 
Best,


RY




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63759; Package emacs. (Sun, 28 May 2023 02:09:01 GMT) Full text and rfc822 format available.

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

From: Randy Taylor <dev <at> rjt.dev>
To: Ruijie Yu <ruijie <at> netyu.xyz>
Cc: Eli Zaretskii <eliz <at> gnu.org>, Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>,
 63759 <at> debbugs.gnu.org
Subject: Re: bug#63759: 29.0.91;
 dockerfile-ts-mode--imenu returns invalid index
Date: Sun, 28 May 2023 02:08:07 +0000
[Message part 1 (text/plain, inline)]
On Saturday, May 27th, 2023 at 21:28, Ruijie Yu <ruijie <at> netyu.xyz> wrote:
> Randy Taylor dev <at> rjt.dev writes:
> 
> > Thanks for the report Jimmy.
> > 
> > Patch attached.
> > 
> > [2. text/x-patch; 0001-dockerfile-ts-mode-Prevent-empty-categories-in-imenu.patch]...
> 
> 
> I think you can get rid of the `append' call, no?
> 
> --
> Best,
> 
> 
> RY

Good point, thanks. That's what I get for lazily copying from my other tree-sitter mode :).

New patch attached.
[0001-dockerfile-ts-mode-Prevent-empty-categories-in-imenu.patch (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63759; Package emacs. (Sun, 28 May 2023 10:35:02 GMT) Full text and rfc822 format available.

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

From: Jimmy Wong <wyuenho <at> gmail.com>
To: Ruijie Yu <ruijie <at> netyu.xyz>, Randy Taylor <dev <at> rjt.dev>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 63759 <at> debbugs.gnu.org
Subject: Re: bug#63759: 29.0.91; dockerfile-ts-mode--imenu returns
 invalid index
Date: Sun, 28 May 2023 11:34:15 +0100
[Message part 1 (text/plain, inline)]
This patch works! Thank you!
On 28 May 2023 at 3:08 AM +0100, Randy Taylor <dev <at> rjt.dev>, wrote:
> On Saturday, May 27th, 2023 at 21:28, Ruijie Yu <ruijie <at> netyu.xyz> wrote:
> > Randy Taylor dev <at> rjt.dev writes:
> >
> > > Thanks for the report Jimmy.
> > >
> > > Patch attached.
> > >
> > > [2. text/x-patch; 0001-dockerfile-ts-mode-Prevent-empty-categories-in-imenu.patch]...
> >
> >
> > I think you can get rid of the `append' call, no?
> >
> > --
> > Best,
> >
> >
> > RY
>
> Good point, thanks. That's what I get for lazily copying from my other tree-sitter mode :).
>
> New patch attached.
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63759; Package emacs. (Wed, 31 May 2023 13:04:02 GMT) Full text and rfc822 format available.

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

From: Randy Taylor <dev <at> rjt.dev>
To: Jimmy Wong <wyuenho <at> gmail.com>
Cc: Ruijie Yu <ruijie <at> netyu.xyz>, Eli Zaretskii <eliz <at> gnu.org>,
 63759 <at> debbugs.gnu.org
Subject: Re: bug#63759: 29.0.91;
 dockerfile-ts-mode--imenu returns invalid index
Date: Wed, 31 May 2023 13:03:31 +0000
On Sunday, May 28th, 2023 at 06:34, Jimmy Wong <wyuenho <at> gmail.com> wrote:
> This patch works! Thank you!

Thanks for testing.

Would someone be able to install the patch to emacs-29?

> On 28 May 2023 at 3:08 AM +0100, Randy Taylor <dev <at> rjt.dev>, wrote:
> 
> > On Saturday, May 27th, 2023 at 21:28, Ruijie Yu <ruijie <at> netyu.xyz> wrote:
> > 
> > > Randy Taylor dev <at> rjt.dev writes:
> > > 
> > > 
> > > > Thanks for the report Jimmy.
> > > > 
> > > > Patch attached.
> > > > 
> > > > [2. text/x-patch; 0001-dockerfile-ts-mode-Prevent-empty-categories-in-imenu.patch]...
> > > 
> > > 
> > > 
> > > I think you can get rid of the `append' call, no?
> > > 
> > > --
> > > Best,
> > > 
> > > 
> > > RY
> > 
> > 
> > Good point, thanks. That's what I get for lazily copying from my other tree-sitter mode :).
> > 
> > New patch attached.




Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Wed, 31 May 2023 13:19:02 GMT) Full text and rfc822 format available.

Notification sent to Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>:
bug acknowledged by developer. (Wed, 31 May 2023 13:19:02 GMT) Full text and rfc822 format available.

Message #28 received at 63759-done <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Randy Taylor <dev <at> rjt.dev>
Cc: ruijie <at> netyu.xyz, wyuenho <at> gmail.com, 63759-done <at> debbugs.gnu.org
Subject: Re: bug#63759: 29.0.91;
 dockerfile-ts-mode--imenu returns invalid index
Date: Wed, 31 May 2023 16:19:03 +0300
> Date: Sun, 28 May 2023 02:08:07 +0000
> From: Randy Taylor <dev <at> rjt.dev>
> Cc: Eli Zaretskii <eliz <at> gnu.org>, Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>, 63759 <at> debbugs.gnu.org
> 
> On Saturday, May 27th, 2023 at 21:28, Ruijie Yu <ruijie <at> netyu.xyz> wrote:
> > I think you can get rid of the `append' call, no?
> > 
> > --
> > Best,
> > 
> > 
> > RY
> 
> Good point, thanks. That's what I get for lazily copying from my other tree-sitter mode :).
> 
> New patch attached.

Thanks, installed on the emacs-29 branch, and closing the bug.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 29 Jun 2023 11:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 299 days ago.

Previous Next


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