X-Loop: help-debbugs@HIDDEN Subject: bug#65897: 29.1.50; Debugging errors surfaced through emacsclient is hard Resent-From: Spencer Baugh <sbaugh@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 12 Sep 2023 19:43:02 +0000 Resent-Message-ID: <handler.65897.B.169454778026590 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 65897 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 65897 <at> debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.169454778026590 (code B ref -1); Tue, 12 Sep 2023 19:43:02 +0000 Received: (at submit) by debbugs.gnu.org; 12 Sep 2023 19:43:00 +0000 Received: from localhost ([127.0.0.1]:60119 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qg9Hn-0006un-M3 for submit <at> debbugs.gnu.org; Tue, 12 Sep 2023 15:43:00 -0400 Received: from lists.gnu.org ([2001:470:142::17]:37378) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <sbaugh@HIDDEN>) id 1qg9Hl-0006uV-Bn for submit <at> debbugs.gnu.org; Tue, 12 Sep 2023 15:42:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <sbaugh@HIDDEN>) id 1qg9HW-00038L-Eg for bug-gnu-emacs@HIDDEN; Tue, 12 Sep 2023 15:42:43 -0400 Received: from mxout5.mail.janestreet.com ([64.215.233.18]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <sbaugh@HIDDEN>) id 1qg9HT-0000Qq-Na for bug-gnu-emacs@HIDDEN; Tue, 12 Sep 2023 15:42:42 -0400 From: Spencer Baugh <sbaugh@HIDDEN> Date: Tue, 12 Sep 2023 15:42:37 -0400 Message-ID: <iery1hb9o0i.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=64.215.233.18; envelope-from=sbaugh@HIDDEN; helo=mxout5.mail.janestreet.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.9 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.1 (/) Errors which happen through emacsclient never trigger the debugger and only print a simple error message, which makes it very difficult to debug them. If there's an error which, for some reason, only happens when running emacsclient, then life becomes very difficult. I just encountered this with one of my users - I still have no idea why the error only affected emacsclient, or how I could have reproduced it without emacsclient, I eventually fixed it by bisecting their .emacs. Toy example: 1. emacs -Q 2. (server-start) 3. (add-hook 'before-make-frame-hook (lambda () (error "frame hook error"))) 4. emacsclient -c The output of emacsclient is: Waiting for Emacs... *ERROR*: frame hook error That's all, there is no way to get more information about the error that happened. Ideally, when emacsclient encounters an error and debug-on-error is non-nil, it should cause Emacs to enter the debugger. In GNU Emacs 29.1.50 (build 4, x86_64-pc-linux-gnu, X toolkit, cairo version 1.15.12, Xaw scroll bars) of 2023-09-11 built on Repository revision: f9bc92d0b36bc631d11c194e4b580f43b7b8dcba Repository branch: emacs-29 Windowing system distributor 'The X.Org Foundation', version 11.0.12011000 System Description: Rocky Linux 8.8 (Green Obsidian) Configured using: 'configure --config-cache --with-x-toolkit=lucid --with-gif=ifavailable' Configured features: CAIRO DBUS FREETYPE GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XINPUT2 XPM LUCID ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: ELisp/l Minor modes in effect: bug-reference-prog-mode: t global-so-long-mode: t pixel-scroll-precision-mode: t jane-fe-minor-mode: t jane-fe-jenga-minor-mode: t editorconfig-mode: t which-function-mode: t global-git-commit-mode: t magit-auto-revert-mode: t auto-revert-mode: t shell-dirtrack-mode: t server-mode: t windmove-mode: t savehist-mode: t save-place-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tab-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t context-menu-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Features: (shadow emacsbug calc calc-loaddefs rect calc-macs pcmpl-unix pcmpl-gnu mule-util reposition face-remap package-x descr-text etags fileloop cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs log-view bug-reference cus-start qp sort smiley gnus-cite mail-extr textsec uni-scripts idna-mapping ucs-normalize uni-confusable textsec-check gnus-async gnus-bcklg gnus-agent gnus-srvr gnus-score score-mode nnvirtual nntp gnus-ml gnus-msg disp-table nndoc gnus-cache gnus-dup mm-archive url-http-ntlm ntlm hmac-md5 hex-util md4 network-stream url-cache debbugs-gnu debbugs-compat debbugs soap-client url-http url-gw nsm rng-xsd rng-dt rng-util xsd-regexp vc-git shortdoc async-bytecomp async tramp-cmds tramp-sh tramp-cache time-stamp hl-line vc vc-dispatcher sh-script treesit cl-print help-fns radix-tree misc conf-mode dabbrev display-line-numbers goto-addr executable pulse misearch multi-isearch dired-aux org-element org-persist org-id org-refile avl-tree generator oc-basic ol-eww eww xdg url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range gnus-win ol-docview doc-view jka-compr image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi vc-fe find-dired so-long jane-fe-read-feature pixel-scroll cua-base vc-hg tramp tramp-loaddefs trampver tramp-integration tramp-compat parse-time iso8601 ffap jane-merlin merlin-imenu let-alist merlin-xref merlin-cap merlin jane-async-merlin jane-completion grep jane-common jane-comint org-protocol jane-fe-project xref files-x jane-fe-menu ecaml_plugin view gopcaml magit-bookmark bookmark image+ advice image-file image-converter editorconfig editorconfig-core editorconfig-core-handle editorconfig-fnmatch whitespace jane-auto-modes vba-mode markdown-mode color jane jane-yasnippet jane-micro-features ert ewoc debug backtrace jane-diff unified-test-mode shell-file core core-buffer core-error jane-sexp jane-python jane-ocaml jane-tuareg-theme tuareg tuareg-compat tuareg-opam skeleton flymake-proc flymake warnings thingatpt smie caml-types caml-help caml-emacs find-file compile jane-cr jane-codeium jane-align jane-deprecated jane-smerge gnu-elpa-keyring-update jane-ocp-indent ocp-indent jane-eglot yasnippet-autoloads swiper-autoloads htmlize-autoloads eglot-autoloads editorconfig-autoloads codeium-autoloads jane-autoloads jane-util ob-shell page-ext dired-x magit-extras project magit-submodule magit-obsolete 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 which-func imenu magit-diff smerge-mode diff diff-mode git-commit log-edit message sendmail yank-media puny dired dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader pcvs-util add-log magit-core magit-autorevert autorevert filenotify magit-margin magit-transient magit-process with-editor shell server magit-mode transient edmacro kmacro magit-git magit-section magit-utils crm dash gnus nnheader gnus-util text-property-search mail-utils range mm-util mail-prsvr cl-extra help-mode windmove 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 time-date noutline outline ob-emacs-lisp ob-core ob-eval org-cycle org-table ol rx org-fold org-fold-core org-keys oc org-loaddefs find-func cal-menu calendar cal-loaddefs org-version org-compat org-macs format-spec gdb-mi bindat gud easy-mmode comint ansi-osc ansi-color ring vundo modus-vivendi-theme modus-themes pcase savehist saveplace cus-edit pp cus-load icons wid-edit adaptive-wrap-autoloads csv-mode-autoloads cyberpunk-theme-autoloads evil-autoloads exwm-autoloads helm-autoloads helm-core-autoloads async-autoloads ivy-autoloads magit-autoloads git-commit-autoloads finder-inf magit-section-autoloads dash-autoloads popup-autoloads url-http-ntlm-autoloads url-auth vc-hgcmd-autoloads vundo-autoloads info with-editor-autoloads xelb-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 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 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 dynamic-setting system-font-setting font-render-setting cairo x-toolkit xinput2 x multi-tty make-network-process emacs) Memory information: ((conses 16 1290183 152090) (symbols 48 57370 1) (strings 32 222722 19140) (string-bytes 1 8502817) (vectors 16 116575) (vector-slots 8 2371281 184939) (floats 8 770 630) (intervals 56 99161 3193) (buffers 976 171))
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Spencer Baugh <sbaugh@HIDDEN> Subject: bug#65897: Acknowledgement (29.1.50; Debugging errors surfaced through emacsclient is hard) Message-ID: <handler.65897.B.169454778026590.ack <at> debbugs.gnu.org> References: <iery1hb9o0i.fsf@HIDDEN> X-Gnu-PR-Message: ack 65897 X-Gnu-PR-Package: emacs Reply-To: 65897 <at> debbugs.gnu.org Date: Tue, 12 Sep 2023 19:43:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-gnu-emacs@HIDDEN If you wish to submit further information on this problem, please send it to 65897 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 65897: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D65897 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: bug#65897: 29.1.50; Debugging errors surfaced through emacsclient is hard Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Thu, 14 Sep 2023 14:55:02 +0000 Resent-Message-ID: <handler.65897.B65897.169470329211186 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 65897 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Spencer Baugh <sbaugh@HIDDEN>, Stefan Monnier <monnier@HIDDEN> Cc: 65897 <at> debbugs.gnu.org Received: via spool by 65897-submit <at> debbugs.gnu.org id=B65897.169470329211186 (code B ref 65897); Thu, 14 Sep 2023 14:55:02 +0000 Received: (at 65897) by debbugs.gnu.org; 14 Sep 2023 14:54:52 +0000 Received: from localhost ([127.0.0.1]:40836 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgnk4-0002uM-2h for submit <at> debbugs.gnu.org; Thu, 14 Sep 2023 10:54:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44818) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1qgnk2-0002u9-E8 for 65897 <at> debbugs.gnu.org; Thu, 14 Sep 2023 10:54:51 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1qgnjq-0003aU-GZ; Thu, 14 Sep 2023 10:54:38 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=AYiBs0+zYVs3HrnpRQmelgA2YEDQP72zCp5RABDmA2k=; b=aZL4tx+05LM4 7e9seAOazir2QWKRvFsDj6db8pgnK/lDsGawOqjIGcAlF/Pv0EINX2KGgVljhNxsS/Vqa2wMtj/Db gqmwzMne0/7GBUF7jLOScyHFHeV3zsvUlTFCI6Zo+w8B6ulHPPJXyd6cI+ucm3N6Wq7w1aBHLExM7 yZT19L073d7HdeN88vlBASPDVadLA6mRbOpydTdRVQCpcRPIa/kBPRNX2WwxbqwFr63F0NiGIwY2t cnbGO4EnSucYZlJtefpXdNPG04+ef8Y/w5hHKJb+Gopq5gGo3TiSG8vfQGlGW3rjvnLSpDAGzbvST oYVuce+cVGmQgG2SIGA1/w==; Date: Thu, 14 Sep 2023 17:54:28 +0300 Message-Id: <83msxols9n.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <iery1hb9o0i.fsf@HIDDEN> (message from Spencer Baugh on Tue, 12 Sep 2023 15:42:37 -0400) References: <iery1hb9o0i.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Spencer Baugh <sbaugh@HIDDEN> > Date: Tue, 12 Sep 2023 15:42:37 -0400 > > Toy example: > 1. emacs -Q > 2. (server-start) > 3. (add-hook 'before-make-frame-hook (lambda () (error "frame hook error"))) > 4. emacsclient -c > > The output of emacsclient is: > > Waiting for Emacs... > *ERROR*: frame hook error > > That's all, there is no way to get more information about the error that > happened. > > Ideally, when emacsclient encounters an error and debug-on-error is > non-nil, it should cause Emacs to enter the debugger. I'm not sure we can allow entering the debugger from server-execute. That function is documented as being called from timers and process filters, so entering the debugger might be unsafe. Stefan, any comments?
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.