From unknown Sun Jun 22 11:41:32 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#58788 <58788@debbugs.gnu.org> To: bug#58788 <58788@debbugs.gnu.org> Subject: Status: 29.0.50; [PATCH] Respect inhibit-message Reply-To: bug#58788 <58788@debbugs.gnu.org> Date: Sun, 22 Jun 2025 18:41:32 +0000 retitle 58788 29.0.50; [PATCH] Respect inhibit-message reassign 58788 emacs submitter 58788 dick.r.chiang@gmail.com severity 58788 wishlist tag 58788 notabug patch thanks From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 26 01:07:40 2022 Received: (at submit) by debbugs.gnu.org; 26 Oct 2022 05:07:40 +0000 Received: from localhost ([127.0.0.1]:52939 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1onYde-0001sE-LQ for submit@debbugs.gnu.org; Wed, 26 Oct 2022 01:07:39 -0400 Received: from lists.gnu.org ([209.51.188.17]:42744) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1onR5d-0006Z2-00 for submit@debbugs.gnu.org; Tue, 25 Oct 2022 17:04:02 -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 ) id 1onR5c-0005KM-Ln for bug-gnu-emacs@gnu.org; Tue, 25 Oct 2022 17:04:00 -0400 Received: from mail-qk1-x730.google.com ([2607:f8b0:4864:20::730]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1onR5Z-0003UY-Do for bug-gnu-emacs@gnu.org; Tue, 25 Oct 2022 17:04:00 -0400 Received: by mail-qk1-x730.google.com with SMTP id b25so9094172qkk.7 for ; Tue, 25 Oct 2022 14:03:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:message-id:date:subject:to:from:from:to:cc :subject:date:message-id:reply-to; bh=DlDxiQZxbI8NEfRgcRkRZ1RMj7iOEDG8uaQwQfPcsR8=; b=jnEUg6uuLFVimZ9TvisgqTCqEiTXV/qTXecQTA0hH+HtJpYze7Db2UWUePNtmcLylx rVMNVM6IKA9VqKBf1s4y9C03GMA4HZc6ddJJdyTul4jq+sqij1f44ZM43Qlafnj+FleQ PWE/cC9R0em3BOPRjUk3hCOfcX3y7sV3dDZIC6g7RzBy0EeI3WVWkBw3V6xCCxf/VNNh FDYQund7ogWuRtRgLa0/GM4/LJWvp/EqSPrjBLA9ZBAGcAaoKdH3fW/AhelLe1hTENQU 6XXHEBww3ZWGXgu1WWl8WOj2YOSJQviM8B3rCFsHZWA7s2bXva+UHiXyKVqa3mrvda0h MCjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:message-id:date:subject:to:from :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=DlDxiQZxbI8NEfRgcRkRZ1RMj7iOEDG8uaQwQfPcsR8=; b=QXsIvLmyO911pDYrqeeyzF+9CZvbVP4S5A7ZSExKJwcV056UxjV+mY7Ht6aP2luvni sh3P8DYXDqgg0XWxm3xpmwlIlORU1rcvZqyOoaQlVjRuTqvx5ho92A5t+pV7jjShlxvQ 9ugqSadwzB31qfV81Oin9R2gU2Eenzwl/KV5gjhRCK3Hs2ansHNeRf5sd+0i5iOvHqSX FhrFU+n4/c0faaftpcXRIEdqDh4HAG2swGjLxjl7+5QHM+up49Tth6iq32nUHoO0GJM9 S4jMq9PIgXHJ88bMHJqt2HFlbSM4BSGoRGGRnMlXiaqmIaGYYS44t5mOhYKtYABB4K9N 5y+w== X-Gm-Message-State: ACrzQf0460cpYAUzmxCDy4PZLo4xyQMIKwf0E0yXodINxZHedGooImbn 5O1LdipW7orzoUU65IxCkcV9NP5Ydd8= X-Google-Smtp-Source: AMsMyM6tB4uzowNExDj+0iqw63VCdeahAq0rrdD3Qz3ZEBdVpg1t+rNb0gM35zHuO1cWAZT1bB39Bg== X-Received: by 2002:a05:620a:24d5:b0:6ee:d4bb:e5ba with SMTP id m21-20020a05620a24d500b006eed4bbe5bamr28410502qkn.457.1666731835180; Tue, 25 Oct 2022 14:03:55 -0700 (PDT) Received: from localhost (pool-173-56-234-28.nycmny.fios.verizon.net. [173.56.234.28]) by smtp.gmail.com with ESMTPSA id f14-20020a05620a280e00b006eec09eed39sm2757348qkp.40.2022.10.25.14.03.54 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Oct 2022 14:03:54 -0700 (PDT) From: dick.r.chiang@gmail.com To: bug-gnu-emacs Subject: 29.0.50; [PATCH] Respect inhibit-message Date: Tue, 25 Oct 2022 17:03:53 -0400 Message-ID: <87y1t3aa4m.fsf@dick> User-Agent: Gnus/5.14 (Gnus v5.14) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=2607:f8b0:4864:20::730; envelope-from=dick.r.chiang@gmail.com; helo=mail-qk1-x730.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Wed, 26 Oct 2022 01:07:34 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) --=-=-= Content-Type: text/plain It's borderline criminal that the echo area gets cleared when inhibit-message is true. emacs -Q -l cl-lib --eval " \ (let ((dont \"dont clear me\!\")) \ (message dont) \ (let ((inhibit-message t)) \ (message \"nice try\") \ (cl-assert (equal (current-message) dont) t)))" --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=0001-Respect-inhibit-message.patch >From 79e43be851ffd51e7353900207c254afd6123e84 Mon Sep 17 00:00:00 2001 From: dickmao Date: Tue, 25 Oct 2022 16:47:09 -0400 Subject: [PATCH] Respect inhibit-message That means not blithely clearing the echo area. * doc/lispref/display.texi (Displaying Messages): Revert 164a7eb. * lisp/minibuffer.el (clear-minibuffer-message): Revert 164a7eb. * src/xdisp.c (message3): Remove errant clear_message() from 2004. (clear_message): Revert 164a7eb. (syms_of_xdisp): Revert 164a7eb. * test/src/xdisp-tests.el (xdisp-tests--respect-inhibit-message): Test it. --- doc/lispref/display.texi | 5 +---- lisp/minibuffer.el | 6 +----- src/xdisp.c | 28 +++++++--------------------- test/src/xdisp-tests.el | 9 +++++++++ 4 files changed, 18 insertions(+), 30 deletions(-) diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi index 15cd5518d91..b7e39679bcb 100644 --- a/doc/lispref/display.texi +++ b/doc/lispref/display.texi @@ -337,10 +337,7 @@ Displaying Messages Usually this function is called when the next input event arrives after displaying an echo-area message. The function is expected to clear the message displayed by its counterpart function specified by -@code{set-message-function}, but doesn't have to. If the function -wants the echo area to remain uncleared, it should return the symbol -@code{dont-clear-message}; any other value will result in the echo -area being cleared. +@code{set-message-function}. The default value is the function that clears the message displayed in an active minibuffer. diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index a9f72d600de..98b68443c38 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el @@ -861,11 +861,7 @@ clear-minibuffer-message (setq minibuffer-message-timer nil)) (when (overlayp minibuffer-message-overlay) (delete-overlay minibuffer-message-overlay) - (setq minibuffer-message-overlay nil))) - - ;; Return nil telling the caller that the message - ;; should be also handled by the caller. - nil) + (setq minibuffer-message-overlay nil)))) (setq clear-message-function 'clear-minibuffer-message) diff --git a/src/xdisp.c b/src/xdisp.c index 1f7ac269e4e..24e129f13f8 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -11948,7 +11948,6 @@ message_log_check_duplicate (ptrdiff_t prev_bol_byte, ptrdiff_t this_bol_byte) void message3 (Lisp_Object m) { - clear_message (true, true); cancel_echoing (); /* First flush out any partial line written with print. */ @@ -12966,23 +12965,18 @@ set_message_1 (void *a1, Lisp_Object string) void clear_message (bool current_p, bool last_displayed_p) { - Lisp_Object preserve = Qnil; - if (current_p) { + echo_area_buffer[0] = Qnil; + message_cleared_p = true; + if (FUNCTIONP (Vclear_message_function)) { specpdl_ref count = SPECPDL_INDEX (); specbind (Qinhibit_quit, Qt); - preserve = safe_call (1, Vclear_message_function); + safe_call (1, Vclear_message_function); unbind_to (count, Qnil); } - - if (!EQ (preserve, Qdont_clear_message)) - { - echo_area_buffer[0] = Qnil; - message_cleared_p = true; - } } if (last_displayed_p) @@ -37171,20 +37165,12 @@ syms_of_xdisp (void) (which controls how error messages are displayed). */); Vset_message_function = Qnil; - DEFSYM (Qdont_clear_message, "dont-clear-message"); DEFVAR_LISP ("clear-message-function", Vclear_message_function, doc: /* If non-nil, function to clear echo-area messages. Usually this function is called when the next input event arrives. -It is expected to clear the message displayed by its counterpart -function specified by `set-message-function'. - -The function is called without arguments. - -If this function returns a value that isn't `dont-clear-message', the -message is cleared from the echo area as usual. If this function -returns `dont-clear-message', this means that the message was already -handled, and the original message text will not be cleared from the -echo area. */); +The function is called without arguments. It is expected to clear the +message displayed by its counterpart function specified by +`set-message-function'. */); Vclear_message_function = Qnil; DEFVAR_LISP ("redisplay--all-windows-cause", Vredisplay__all_windows_cause, diff --git a/test/src/xdisp-tests.el b/test/src/xdisp-tests.el index 6ff64d0431a..9e3ad3bd6eb 100644 --- a/test/src/xdisp-tests.el +++ b/test/src/xdisp-tests.el @@ -179,4 +179,13 @@ test-messages-buffer-name (buffer-string))) "foo\n"))) +(ert-deftest xdisp-tests--respect-inhibit-message () + "It's borderline criminal that inhibit-message still clears echo area." + (skip-unless (not noninteractive)) + (let ((dont "dont clear me!")) + (message dont) + (let ((inhibit-message t)) + (message "nice try") + (should (equal (current-message) dont))))) + ;;; xdisp-tests.el ends here -- 2.36.1 --=-=-= Content-Type: text/plain In Commercial Emacs 0.3.1snapshot 7273a2a in dev (upstream 29.0.50, x86_64-pc-linux-gnu) built on dick Repository revision: 7273a2a596b43da83866e42dbbbe4ea28cabf7bd Repository branch: dev Windowing system distributor 'The X.Org Foundation', version 11.0.12013000 System Description: Ubuntu 20.04.4 LTS Configured using: 'configure WERROR_CFLAGS=-Werror --prefix=/home/dick/.local --with-tree-sitter CC=gcc-10 PKG_CONFIG_PATH=/home/dick/.local/lib/pkgconfig CXX=gcc-10' Configured features: CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON TREE_SITTER LCMS2 LIBSELINUX LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Magit Minor modes in effect: global-git-commit-mode: t shell-dirtrack-mode: t projectile-mode: t flx-ido-mode: t global-hl-line-mode: t hl-line-mode: t winner-mode: t override-global-mode: t tooltip-mode: t global-eldoc-mode: t show-paren-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t buffer-read-only: t column-number-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/dick/xlsp/scratch hides /home/dick/org-gcal.el/scratch /home/dick/gomacro-mode/gomacro-mode hides /home/dick/.emacs.d/elpa/gomacro-mode-20200326.1103/gomacro-mode /home/dick/.emacs.d/elpa/go-rename-20190805.2101/go-rename hides /home/dick/.emacs.d/elpa/go-mode-1.6.0/go-rename /home/dick/.emacs.d/elpa/go-guru-20181012.330/go-guru hides /home/dick/.emacs.d/elpa/go-mode-1.6.0/go-guru /home/dick/.emacs.d/elpa/hydra-20170924.2259/lv hides /home/dick/.emacs.d/elpa/lv-0.1.0.1snapshot20200507.1518/lv /home/dick/org-gcal.el/org-gcal hides /home/dick/.emacs.d/elpa/org-gcal-0.3/org-gcal /home/dick/.emacs.d/elpa/request-deferred-0.2.0/request-deferred hides /home/dick/.emacs.d/elpa/request-0.3.3/request-deferred /home/dick/.emacs.d/elpa/chess-2.0.5/_pkg hides /home/dick/.local/share/emacs/site-lisp/_pkg /home/dick/.emacs.d/elpa/chess-2.0.5/chess-pos hides /home/dick/.local/share/emacs/site-lisp/chess-pos /home/dick/.emacs.d/elpa/chess-2.0.5/chess-module hides /home/dick/.local/share/emacs/site-lisp/chess-module /home/dick/.emacs.d/elpa/chess-2.0.5/chess-ucb hides /home/dick/.local/share/emacs/site-lisp/chess-ucb /home/dick/.emacs.d/elpa/chess-2.0.5/chess-scid hides /home/dick/.local/share/emacs/site-lisp/chess-scid /home/dick/.emacs.d/elpa/chess-2.0.5/chess-puzzle hides /home/dick/.local/share/emacs/site-lisp/chess-puzzle /home/dick/.emacs.d/elpa/chess-2.0.5/chess-irc hides /home/dick/.local/share/emacs/site-lisp/chess-irc /home/dick/.emacs.d/elpa/chess-2.0.5/chess-network hides /home/dick/.local/share/emacs/site-lisp/chess-network /home/dick/.emacs.d/elpa/chess-2.0.5/chess-autosave hides /home/dick/.local/share/emacs/site-lisp/chess-autosave /home/dick/.emacs.d/elpa/chess-2.0.5/chess-engine hides /home/dick/.local/share/emacs/site-lisp/chess-engine /home/dick/.emacs.d/elpa/chess-2.0.5/chess-tutorial hides /home/dick/.local/share/emacs/site-lisp/chess-tutorial /home/dick/.emacs.d/elpa/chess-2.0.5/chess-german hides /home/dick/.local/share/emacs/site-lisp/chess-german /home/dick/.emacs.d/elpa/chess-2.0.5/chess-file hides /home/dick/.local/share/emacs/site-lisp/chess-file /home/dick/.emacs.d/elpa/chess-2.0.5/chess-random hides /home/dick/.local/share/emacs/site-lisp/chess-random /home/dick/.emacs.d/elpa/chess-2.0.5/chess-stockfish hides /home/dick/.local/share/emacs/site-lisp/chess-stockfish /home/dick/.emacs.d/elpa/chess-2.0.5/chess-pgn hides /home/dick/.local/share/emacs/site-lisp/chess-pgn /home/dick/.emacs.d/elpa/chess-2.0.5/chess-kibitz hides /home/dick/.local/share/emacs/site-lisp/chess-kibitz /home/dick/.emacs.d/elpa/chess-2.0.5/chess-eco hides /home/dick/.local/share/emacs/site-lisp/chess-eco /home/dick/.emacs.d/elpa/chess-2.0.5/chess-display hides /home/dick/.local/share/emacs/site-lisp/chess-display /home/dick/.emacs.d/elpa/chess-2.0.5/chess-var hides /home/dick/.local/share/emacs/site-lisp/chess-var /home/dick/.emacs.d/elpa/chess-2.0.5/chess-test hides /home/dick/.local/share/emacs/site-lisp/chess-test /home/dick/.emacs.d/elpa/chess-2.0.5/chess-ply hides /home/dick/.local/share/emacs/site-lisp/chess-ply /home/dick/.emacs.d/elpa/chess-2.0.5/chess-message hides /home/dick/.local/share/emacs/site-lisp/chess-message /home/dick/.emacs.d/elpa/chess-2.0.5/chess-ics1 hides /home/dick/.local/share/emacs/site-lisp/chess-ics1 /home/dick/.emacs.d/elpa/chess-2.0.5/chess-phalanx hides /home/dick/.local/share/emacs/site-lisp/chess-phalanx /home/dick/.emacs.d/elpa/chess-2.0.5/chess-game hides /home/dick/.local/share/emacs/site-lisp/chess-game /home/dick/.emacs.d/elpa/chess-2.0.5/chess-log hides /home/dick/.local/share/emacs/site-lisp/chess-log /home/dick/.emacs.d/elpa/chess-2.0.5/chess-plain hides /home/dick/.local/share/emacs/site-lisp/chess-plain /home/dick/.emacs.d/elpa/chess-2.0.5/chess-perft hides /home/dick/.local/share/emacs/site-lisp/chess-perft /home/dick/.emacs.d/elpa/chess-2.0.5/chess-glaurung hides /home/dick/.local/share/emacs/site-lisp/chess-glaurung /home/dick/.emacs.d/elpa/chess-2.0.5/chess-ai hides /home/dick/.local/share/emacs/site-lisp/chess-ai /home/dick/.emacs.d/elpa/chess-2.0.5/chess-fruit hides /home/dick/.local/share/emacs/site-lisp/chess-fruit /home/dick/.emacs.d/elpa/chess-2.0.5/chess-uci hides /home/dick/.local/share/emacs/site-lisp/chess-uci /home/dick/.emacs.d/elpa/chess-2.0.5/chess-epd hides /home/dick/.local/share/emacs/site-lisp/chess-epd /home/dick/.emacs.d/elpa/chess-2.0.5/chess-database hides /home/dick/.local/share/emacs/site-lisp/chess-database /home/dick/.emacs.d/elpa/chess-2.0.5/chess-link hides /home/dick/.local/share/emacs/site-lisp/chess-link /home/dick/.emacs.d/elpa/chess-2.0.5/chess-transport hides /home/dick/.local/share/emacs/site-lisp/chess-transport /home/dick/.emacs.d/elpa/chess-2.0.5/chess-none hides /home/dick/.local/share/emacs/site-lisp/chess-none /home/dick/.emacs.d/elpa/chess-2.0.5/chess-polyglot hides /home/dick/.local/share/emacs/site-lisp/chess-polyglot /home/dick/.emacs.d/elpa/chess-2.0.5/chess-crafty hides /home/dick/.local/share/emacs/site-lisp/chess-crafty /home/dick/.emacs.d/elpa/chess-2.0.5/chess-chat hides /home/dick/.local/share/emacs/site-lisp/chess-chat /home/dick/.emacs.d/elpa/chess-2.0.5/chess hides /home/dick/.local/share/emacs/site-lisp/chess /home/dick/.emacs.d/elpa/chess-2.0.5/chess-images hides /home/dick/.local/share/emacs/site-lisp/chess-images /home/dick/.emacs.d/elpa/chess-2.0.5/chess-gnuchess hides /home/dick/.local/share/emacs/site-lisp/chess-gnuchess /home/dick/.emacs.d/elpa/chess-2.0.5/chess-fen hides /home/dick/.local/share/emacs/site-lisp/chess-fen /home/dick/.emacs.d/elpa/chess-2.0.5/chess-ics hides /home/dick/.local/share/emacs/site-lisp/chess-ics /home/dick/.emacs.d/elpa/chess-2.0.5/chess-ics2 hides /home/dick/.local/share/emacs/site-lisp/chess-ics2 /home/dick/.emacs.d/elpa/chess-2.0.5/chess-common hides /home/dick/.local/share/emacs/site-lisp/chess-common /home/dick/.emacs.d/elpa/chess-2.0.5/chess-input hides /home/dick/.local/share/emacs/site-lisp/chess-input /home/dick/.emacs.d/elpa/chess-2.0.5/chess-announce hides /home/dick/.local/share/emacs/site-lisp/chess-announce /home/dick/.emacs.d/elpa/chess-2.0.5/chess-clock hides /home/dick/.local/share/emacs/site-lisp/chess-clock /home/dick/.emacs.d/elpa/chess-2.0.5/chess-sound hides /home/dick/.local/share/emacs/site-lisp/chess-sound /home/dick/.emacs.d/elpa/chess-2.0.5/chess-sjeng hides /home/dick/.local/share/emacs/site-lisp/chess-sjeng /home/dick/.emacs.d/elpa/chess-2.0.5/chess-algebraic hides /home/dick/.local/share/emacs/site-lisp/chess-algebraic /home/dick/.emacs.d/elpa/transient-0.3.7snapshot/transient hides /home/dick/.local/share/emacs/0.3.1/lisp/transient Features: (shadow emacsbug texinfo texinfo-loaddefs emacs-news-mode goto-addr ivy delsel colir ivy-overlay ffap scheme nndoc debbugs-gnu debbugs-compat debbugs soap-client rng-xsd rng-dt rng-util xsd-regexp skeleton ibuf-macs loaddefs-gen tar-mode arc-mode archive-mode tramp-archive tramp-gvfs tramp-cache time-stamp zeroconf tramp tramp-loaddefs trampver tramp-integration tramp-compat ls-lisp elpaso-disc web-server web-server-status-codes ghub-graphql treepy gsexp ghub cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs completion dumb-jump canlock bbdb-message footnote nnselect whitespace flow-fill ag find-dired jka-compr cus-start files-x git-rebase magit-extras face-remap magit-patch-changelog magit-patch 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 edebug magit-diff git-commit log-edit add-log magit-core magit-margin magit-transient magit-process with-editor shell pcomplete server magit-mode transient smerge-mode diff bug-reference gnus-html pulse elpaso elpaso-admin elpaso-milky elpaso-defs timer-list novice disass mule-util display-line-numbers shortdoc help-fns radix-tree cl-print debug backtrace url-queue google-translate misearch multi-isearch qp sort smiley shr-color mm-archive gnus-async gnus-ml gravatar dns mail-extr textsec uni-scripts idna-mapping ucs-normalize uni-confusable textsec-check gnus-notifications gnus-fun notifications gnus-kill gnus-dup disp-table utf-7 url-cache benchmark nnrss nnfolder nndiscourse rbenv nnhackernews nntwitter nntwitter-api bbdb-gnus gnus-demon nntp nnmairix nnml nnreddit gnus-topic url-http url-auth url-gw network-stream nsm request virtualenvwrapper gud s json-rpc python gnus-score score-mode gnus-bcklg gnus-srvr gnus-cite anaphora bbdb-mua bbdb-com bbdb bbdb-site timezone gnus-delay gnus-draft gnus-cache gnus-agent gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom nndraft nnmh gnus-group mm-url gnus-undo use-package use-package-delight use-package-diminish gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo parse-time iso8601 gnus-spec gnus-int gnus-range message sendmail yank-media puny dired-x dired dired-loaddefs rfc822 mml mml-sec epa epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader gnus-win vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view pcvs-util tree-sitter vc company-oddmuse company-keywords company-etags company-gtags company-dabbrev-code company-dabbrev company-files company-clang company-capf company-cmake company-semantic company-template company-bbdb rust-utils rust-mode rust-rustfmt rust-playpen rust-compile rust-cargo vc-git diff-mode vc-dispatcher paredit-ext paredit inf-ruby ruby-mode smie company haskell-interactive-mode haskell-presentation-mode haskell-process haskell-session haskell-compile haskell-mode haskell-cabal haskell-utils haskell-font-lock haskell-indentation haskell-string haskell-sort-imports haskell-lexeme haskell-align-imports haskell-complete-module haskell-ghc-support noutline outline flymake-proc flymake etags fileloop generator dabbrev haskell-customize hydra lv use-package-ensure solarized-theme solarized-definitions projectile lisp-mnt ibuf-ext ibuffer ibuffer-loaddefs thingatpt magit-autorevert autorevert magit-git magit-base magit-section format-spec crm dash rx compat-27 compat-26 compat grep compile comint ansi-osc ansi-color gnus nnheader range mail-utils mm-util mail-prsvr gnus-util text-property-search time-date flx-ido flx xlsp xlsp-server xlsp-company xlsp-handle-notification xlsp-handle-request xlsp-struct let-alist xlsp-utils jsonrpc pcase warnings filenotify google-translate-default-ui google-translate-core-ui facemenu color ido google-translate-core google-translate-tk google-translate-backend auto-complete advice popup cus-edit pp cus-load icons wid-edit emms-player-mplayer emms-player-simple emms emms-compat hl-line winner edmacro kmacro cl-extra help-mode xref project ring use-package-bind-key bind-key easy-mmode use-package-core derived company-go-autoloads corfu-autoloads debbugs-autoloads elpaso-disc-autoloads elpaso-autoloads find-func company-autoloads flycheck-autoloads finder-inf go-mode-autoloads json-reformat-autoloads json-snatcher-autoloads lsp-bridge-autoloads lsp-mode-autoloads lv-autoloads magit-autoloads nnreddit-autoloads epl-autoloads posframe-autoloads projectile-autoloads markdown-mode-autoloads rust-mode-autoloads sml-mode-autoloads tornado-template-mode-autoloads typescript-mode-autoloads request-autoloads info wordnut-autoloads yasnippet-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 cconv cldefs url-vars cl-loaddefs cl-lib rmc iso-transl tooltip 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 lcms2 dynamic-setting system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process emacs) Memory information: ((conses 16 2619625 543846) (symbols 48 63468 69) (strings 32 410020 80927) (string-bytes 1 14668125) (vectors 16 156883) (vector-slots 8 3734166 214130) (floats 8 4034 2969) (intervals 56 115001 13059) (buffers 1008 90)) --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 26 01:36:59 2022 Received: (at 58788) by debbugs.gnu.org; 26 Oct 2022 05:36:59 +0000 Received: from localhost ([127.0.0.1]:52976 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1onZ62-0002j2-TI for submit@debbugs.gnu.org; Wed, 26 Oct 2022 01:36:59 -0400 Received: from mail-oi1-f170.google.com ([209.85.167.170]:37880) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1onZ60-0002im-2b for 58788@debbugs.gnu.org; Wed, 26 Oct 2022 01:36:57 -0400 Received: by mail-oi1-f170.google.com with SMTP id i7so3971326oif.4 for <58788@debbugs.gnu.org>; Tue, 25 Oct 2022 22:36:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:subject:message-id:date:mime-version:references:in-reply-to:from :from:to:cc:subject:date:message-id:reply-to; bh=bT5J97Cqt6wYICQma/okNbndTsXQ/I6tiJhWpnFCMdg=; b=X2zQ4CMeseKeyNls51MHriKWdWu8nheLVhcxpiC7501odqp4kp5uwzqc4CqDCNDUAO bjb49nHIeUxnSimkI3KbaLXBPYrfxe7mfBz/dNslSPxGJB3Ey66Ab80/R+d4g46Fa6/B 8txtNdbF3MGiuIIw/+DyYIgyqULA3y/Nk4DaCM0V2BuZloHOgXAgzT4pWepQ4pb8htch p6JhXdQFQEJuAeetHV4Lui5qujGvjY4RXmh5GryShWzdGOaHupYju5xGvxw3rT0Opml+ 22FtVRXB3r0njUJtnBRuNBPVX9fLmaCUqY+2E9b9ARpiWPS3JD+6bOumcb+c1r78iTkB s8Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:mime-version:references:in-reply-to:from :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=bT5J97Cqt6wYICQma/okNbndTsXQ/I6tiJhWpnFCMdg=; b=WhjIBB31tU5dCy0GQZQ4jLdxdWQHtppXO1EW+sJZ3GbeDCYuqAijAsrpRTXy3YsvhL YSBP+tbwLwVwtIwU3NWRM5KzEMqmyMXj+GAaC0Ym6kuaAbRRtlCuWh8fJZ8xgn+t9ABU 2cUWl2IbhyzfuJ4goRkWNwKiXTfzAmUBgmQ8n5xG9ovvli1z72w2F3B04iVqj5wtLJ4E +hr7HwO5HgL10G3KD6lFIl+kn+5srArWfIVbHC8ltBrlrSiWzGCd4r0OrWXeJD5pXswg +JridpcwxWZo7zaUtnfr1H6228xstYKAzayQK2CUCrVA4eWJTuYbvEH2HSEjE6BReUDN NSqw== X-Gm-Message-State: ACrzQf3mO/ffz21B54GX2jpUWhvON+puDAKulsiIsZBRt2bbfvLWDZNE LV3RFCH5GDiOnG6M0Clot5VM+oT5FLMRQCYHx1c= X-Google-Smtp-Source: AMsMyM65itPvmXkCZVOduWd/f54O0pATua0zV++pYrP2uaivfHia8INOAEu1AMGHPNfC4Wc88E/vb7anvNw/zI3/zq0= X-Received: by 2002:a05:6808:1186:b0:353:b77a:a481 with SMTP id j6-20020a056808118600b00353b77aa481mr980436oil.199.1666762609491; Tue, 25 Oct 2022 22:36:49 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Tue, 25 Oct 2022 22:36:48 -0700 From: Stefan Kangas In-Reply-To: <87y1t3aa4m.fsf@dick> References: <87y1t3aa4m.fsf@dick> X-Hashcash: 1:20:221026:dick.r.chiang@gmail.com::U0nr3XHiPnUMrz/4:8Duz MIME-Version: 1.0 Date: Tue, 25 Oct 2022 22:36:48 -0700 Message-ID: Subject: Re: bug#58788: 29.0.50; [PATCH] Respect inhibit-message To: dick.r.chiang@gmail.com, 58788@debbugs.gnu.org Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58788 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) severity 58788 wishlist thanks dick.r.chiang@gmail.com writes: > It's borderline criminal that the echo area gets cleared > when inhibit-message is true. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 27 12:51:12 2022 Received: (at 58788) by debbugs.gnu.org; 27 Oct 2022 16:51:12 +0000 Received: from localhost ([127.0.0.1]:59147 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oo664-0002VH-Ck for submit@debbugs.gnu.org; Thu, 27 Oct 2022 12:51:12 -0400 Received: from eggs.gnu.org ([209.51.188.92]:45670) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oo662-0002V2-Ia for 58788@debbugs.gnu.org; Thu, 27 Oct 2022 12:51:10 -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 ) id 1oo65x-0002ye-Aa; Thu, 27 Oct 2022 12:51:05 -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=WqvTjgHeGNGWbcU+gRKtsJAj/FgaRU1FZXzagF42sNk=; b=ZUThMMrcJskD 6KpAYhuhahrYJVV5alipLyX1WZYG/9hjfjKabiUiW+1oE5GtYDz/yRymB3C5n2y9RvRmzrYfEN/vs gClEY2utySKRoT126cI0T0/kQuu0zYUUotWF1y7gEI951Ur0wNwA1LjUOfaomNk6OU2XKSRws3Dbp Qx53993enfXp8ozH5XTRcdFR/6fQ4/dwi6MInjAJn0hiB/XtIMA2n0+QLNOu+o1JIwdbMk+7cI+2l BHfakxWb3JaOHQU/IM6cSU0r1cSb34Z4VrXbjQ37n1NaDIbHOBaxI62wPwhNHW9NfHn2mXZVQnSWD PaxNbZp9pNg2ePYmJ/+SOA==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oo65p-0007Df-Dy; Thu, 27 Oct 2022 12:51:04 -0400 Date: Thu, 27 Oct 2022 19:50:50 +0300 Message-Id: <83ilk5ky6t.fsf@gnu.org> From: Eli Zaretskii To: dick.r.chiang@gmail.com In-Reply-To: <87y1t3aa4m.fsf@dick> (dick.r.chiang@gmail.com) Subject: Re: bug#58788: 29.0.50; [PATCH] Respect inhibit-message References: <87y1t3aa4m.fsf@dick> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58788 Cc: 58788@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: dick.r.chiang@gmail.com > Date: Tue, 25 Oct 2022 17:03:53 -0400 > > It's borderline criminal that the echo area gets cleared > when inhibit-message is true. No documentation promised that the previous message will not be cleared when inhibit-message is set. We just avoid displaying new messages. We could extend the mechanism to allow it to prevent the clearing as well, but that would probably mean inhibit-message will have to be a tristate, because by now it's too late to change what its non-nil value produces. So we'd need to introduce a special value (not nil and not t) which will have this effect. > * doc/lispref/display.texi (Displaying Messages): Revert 164a7eb. > * lisp/minibuffer.el (clear-minibuffer-message): Revert 164a7eb. > * src/xdisp.c (message3): Remove errant clear_message() from 2004. I don't understand what that has to do with the dont-clear-message thingy. That is about something else: it prevents clearing the message when there's an input event, like if the user types some key. I see no reason why we should remove that feature. > +(ert-deftest xdisp-tests--respect-inhibit-message () > + "It's borderline criminal that inhibit-message still clears echo area." Please keep your contempt for other people out of the patches, if you want them applied. From debbugs-submit-bounces@debbugs.gnu.org Sun Nov 13 13:04:22 2022 Received: (at 58788) by debbugs.gnu.org; 13 Nov 2022 18:04:22 +0000 Received: from localhost ([127.0.0.1]:52468 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ouHLB-000527-QU for submit@debbugs.gnu.org; Sun, 13 Nov 2022 13:04:21 -0500 Received: from relay6-d.mail.gandi.net ([217.70.183.198]:33391) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ouHL6-00051l-0Y; Sun, 13 Nov 2022 13:04:20 -0500 Received: (Authenticated sender: juri@linkov.net) by mail.gandi.net (Postfix) with ESMTPSA id 70A65C0008; Sun, 13 Nov 2022 18:04:07 +0000 (UTC) From: Juri Linkov To: dick.r.chiang@gmail.com Subject: Re: bug#58788: 29.0.50; [PATCH] Respect inhibit-message In-Reply-To: <87y1t3aa4m.fsf@dick> (dick r. chiang's message of "Tue, 25 Oct 2022 17:03:53 -0400") Organization: LINKOV.NET References: <87y1t3aa4m.fsf@dick> Date: Sun, 13 Nov 2022 19:39:44 +0200 Message-ID: <86mt8udbl7.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58788 Cc: 58788@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) tags 58788 notabug close 58788 29.0.50 quit > (let ((dont \"dont clear me\!\")) \ > (message dont) \ > (let ((inhibit-message t)) \ > (message \"nice try\") \ > (cl-assert (equal (current-message) dont) t)))" (setq clear-message-function (lambda () (when inhibit-message 'dont-clear-message))) Problem solved. From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 14 04:12:19 2022 Received: (at 58788) by debbugs.gnu.org; 14 Nov 2022 09:12:19 +0000 Received: from localhost ([127.0.0.1]:48889 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ouVVp-0003Z0-Lj for submit@debbugs.gnu.org; Mon, 14 Nov 2022 04:12:19 -0500 Received: from mail-qv1-f47.google.com ([209.85.219.47]:41818) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ouHea-0007mp-RR for 58788@debbugs.gnu.org; Sun, 13 Nov 2022 13:24:27 -0500 Received: by mail-qv1-f47.google.com with SMTP id mi9so6630399qvb.8 for <58788@debbugs.gnu.org>; Sun, 13 Nov 2022 10:24:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:message-id:date:references:in-reply-to :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=p1Os0rfIrsmDnlucjNsnOdqdzly531IGbzbjTGscrJY=; b=C4FoMjuGJ7gCS8JfzzCDYncxsBXmXJYrtHi3at102qxgfzrVEzaHmzZCe7a2n1lHkh oMv9IGIM8KKSafrgwKNINVSHcf2sG2531Si8R6VTjAsiUmIkkrFlWr2MpnXEsqgS/rzG Ji+LDDrUKhX9zaxbRunzZjtW+ivNqZrGoyXcZdbQNP/33gdrU0y5JWoNOds7uVf5MqEI UXCzqDNJzABjPhS6CgVSt3dVX1gsI7TWQGKwgDqN6Lq6kdGYi52gNFqOjIyJhDlXp68m r/IiDJZXDc4T+9mfutkHr8dyaV/SiCW1KSH/qCke5NbXj0Ip34izj2ET7cVwCOSvJbN9 YwlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:message-id:date:references:in-reply-to :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=p1Os0rfIrsmDnlucjNsnOdqdzly531IGbzbjTGscrJY=; b=NwpYjROS2GLPXFpze/4eDCwrWLkclit/Xr5koylPJtfg5B4og8QruqVuHMNJxvby+D ixC3OPUJmspedFuGYEoATxilVZmjHuUh2iJgrs9TZqkg0t8fLtJT9oHTtOzHAXzt4td0 qdOLjCyETNhflGs7DlX5sFrx1QIu9n9601Gr1P67wz/+IOuFl+N7cvmUT3rD0xQYVIRx t2nQrR8VMyEkv+r0URc9LVxKijG5z0aCiFKIo7gHMPQaxYmiyjbujHv6ZnVjPg7zIBKW /3Ggyq1TcxHdJfdZUReZXacTvGJvJ7AXX6kHj0kiVfOFq3RjMnMQoYP5OLAlzgwvSKef GSOg== X-Gm-Message-State: ANoB5pkwRaxsHWA4IgK8jdrHvcvaUYENnpLm1u5nVv80M7TftAheRgDZ SoEilFaO/MFZDuRh08tjRjhQmkx/Cgc= X-Google-Smtp-Source: AA0mqf5UPcl64HNEqJfXbf/OEgojKAlMo4rYYGV03jjnB4Fi0cZI3sK1pTHGvqhtkJ5IGyw5XmdgYA== X-Received: by 2002:a05:6214:5a07:b0:4bb:70d5:5b15 with SMTP id lu7-20020a0562145a0700b004bb70d55b15mr9589165qvb.12.1668363859155; Sun, 13 Nov 2022 10:24:19 -0800 (PST) Received: from localhost (pool-173-56-234-28.nycmny.fios.verizon.net. [173.56.234.28]) by smtp.gmail.com with ESMTPSA id d5-20020ac86685000000b003a530a32f67sm4429886qtp.65.2022.11.13.10.24.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 13 Nov 2022 10:24:18 -0800 (PST) From: dick To: Juri Linkov Subject: Re: bug#58788: 29.0.50; [PATCH] Respect inhibit-message In-Reply-To: <86mt8udbl7.fsf@mail.linkov.net> (Juri Linkov's message of "Sun, 13 Nov 2022 19:39:44 +0200") References: <87y1t3aa4m.fsf@dick> <86mt8udbl7.fsf@mail.linkov.net> Date: Sun, 13 Nov 2022 13:24:18 -0500 Message-ID: <87h6z21zn1.fsf@dick> User-Agent: Gnus/5.14 (Gnus v5.14) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58788 X-Mailman-Approved-At: Mon, 14 Nov 2022 04:12:16 -0500 Cc: 58788@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) JL> Problem solved. I'm less irked by the comical obtuseness of your solution than the smugness with which you present it. Then again, I'm the king of smug. From unknown Sun Jun 22 11:41:32 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Mon, 12 Dec 2022 12:24:14 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator