From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Chris Siebenmann Newsgroups: gmane.emacs.bugs Subject: bug#67360: 29.1; MH-E forwarded email has a mangled default Subject header Date: Tue, 21 Nov 2023 19:49:24 -0500 Message-ID: <2330410.1700614164@apps0.cs.toronto.edu> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="37540"; mail-complaints-to="usenet@ciao.gmane.io" Cc: cks.emacsbugs-01@cs.toronto.edu To: 67360@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Nov 22 09:26:29 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1r5iZ3-0009WH-HC for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 22 Nov 2023 09:26:29 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r5iYb-0007Gz-Hq; Wed, 22 Nov 2023 03:26:01 -0500 Original-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 1r5iYZ-0007BT-Vf for bug-gnu-emacs@gnu.org; Wed, 22 Nov 2023 03:26:00 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r5iYZ-0003ZM-Nh for bug-gnu-emacs@gnu.org; Wed, 22 Nov 2023 03:25:59 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1r5iYc-00032L-QF for bug-gnu-emacs@gnu.org; Wed, 22 Nov 2023 03:26:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Chris Siebenmann Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 22 Nov 2023 08:26:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 67360 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.170064151311593 (code B ref -1); Wed, 22 Nov 2023 08:26:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 22 Nov 2023 08:25:13 +0000 Original-Received: from localhost ([127.0.0.1]:57950 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r5iXo-00030m-R1 for submit@debbugs.gnu.org; Wed, 22 Nov 2023 03:25:13 -0500 Original-Received: from lists.gnu.org ([2001:470:142::17]:52360) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r5bR5-0004Yd-Dg for submit@debbugs.gnu.org; Tue, 21 Nov 2023 19:49:48 -0500 Original-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 1r5bQw-0007y9-UO for bug-gnu-emacs@gnu.org; Tue, 21 Nov 2023 19:49:39 -0500 Original-Received: from cliff.cs.toronto.edu ([128.100.3.120]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r5bQn-0005v3-RI for bug-gnu-emacs@gnu.org; Tue, 21 Nov 2023 19:49:38 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=cs.toronto.edu; s=cs202005; h=Message-ID:Date:Content-ID:Content-Type: MIME-Version:Subject:cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References; bh=PMoIj4I5N6wSVtEcho7eonnFXoozr3hxUx+4Q9FaBGM=; b=XLBayhczBoa4vv8Gd0XbnQ5m49 y6Rdp61udzFj466PxAWBdLaQ1PTp9QFFuDRd69RfSBqnwBSQ9ay1RXdusH7euFnaAPkcz2CB2b3vC uoZNQ9tfZlTF72WDObkIukNKlW3uFtiMgL2Tay6qYQof29FwDafZJyzMbtgn8ZKPNYT1lBT4fzURE mW6apmqwgXTddU8Nvfa/BhDuBAuzybnzoQ9AMbxn7MTsr5tGMULKwaohi4f9FV06uW94C5FOI5NCI kVxxvrKcwYfw+uMLwbtQP3by+cSYakM2u0U2opHsIGCER4BZKmBY19da7f6FTYEHPAGnNsJLQl/3S 1IGXkAtQ==; Original-Received: from apps0.cs.toronto.edu ([128.100.3.40] ident=postfix) by cliff.cs.toronto.edu with esmtp (Exim 4.95) (envelope-from ) id 1r5bSK-009plq-VB; Tue, 21 Nov 2023 19:49:26 -0500 Original-Received: by apps0.cs.toronto.edu (Postfix, from userid 915) id 06CEC60296; Tue, 21 Nov 2023 19:49:25 -0500 (EST) Original-Received: from apps0.cs.toronto.edu (localhost [127.0.0.1]) by apps0.cs.toronto.edu (Postfix) with ESMTP id 046A36023B; Tue, 21 Nov 2023 19:49:25 -0500 (EST) Content-ID: <2330409.1700614164.1@apps0.cs.toronto.edu> Received-SPF: pass client-ip=128.100.3.120; envelope-from=cks.emacsbugs-01@cs.toronto.edu; helo=cliff.cs.toronto.edu X-Spam_score_int: -19 X-Spam_score: -2.0 X-Spam_bar: -- X-Spam_report: (-2.0 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_HELO_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Wed, 22 Nov 2023 03:25:09 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:274752 Archived-At: If you attempt to forward an email message in MH-E with mh-forward (bound to eg 'f'), then the resulting Subject: of the draft message will be manged and come out as, for example: Subject: test forwarding subject (fwd) Chris Siebenmann: test forwarding subject The original subject of the test message was 'test forwarding subject'. The 'test forwarding subject (forw)' portion of the mh-forward Subject comes from the default Ubuntu 22.04 NMH 1.7.1 /etc/nmh/forwcomps file, used by 'forw' to create the NMH draft, which has: Subject:%<{nmh-subject} %(trim)%(putlit)%?{subject} %(trim)%(putlit) (fwd)%> The portion after it comes from the fact that mh-forward creates its own new Subject: for the forwarded message (using mh-forwarded-letter-subject, which in turn formats with mh-forward-subject-format), and then does: (mh-insert-fields "Subject:" forw-subject) I suspect that the intention is to replace any existing Subject:, or perhaps mh-forward assumes that the draft won't have one. Unfortunately for mh-forward, mh-insert-fields is specifically documented to *append* to the existing header field value, if there is one, not overwrite it, so the resulting Subject: of the draft is as we see here: the original subject created by 'forw', and then an appended Subject from mh-forward. This result is not terribly useful. Reproduction in emacs -Q provided you have NMH and MH-E set up: * enter MH-E with 'M-x mh-rmail' * arrange to have some message in your inbox that you can forward, for example by 'F r' to see all of your inbox. * display your test message to forward, eg cursor to it and hit Return * start to forward with 'f' or 'M-x mh-forward'. NOTE: while I have reproduced this in a clean Emacs (and NMH) environment with 'emacs -Q', this report is being filed from within my regular customized Emacs because life is too short. You can skip over the packages, shadowed load files, and so on. In GNU Emacs 29.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.33, cairo version 1.16.0) of 2023-10-30 built on comps3 Windowing system distributor 'The X.Org Foundation', version 11.0.12014000 System Description: Ubuntu 22.04.3 LTS Configured using: 'configure --prefix /u/cks/lib/x64-linux/emacs-29.1 --without-gsettings --with-x --with-x-toolkit=gtk3 --with-json --with-tree-sitter --with-native-compilation=aot' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB Important settings: value of $LC_COLLATE: C value of $LC_CTYPE: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Lisp Interaction Minor modes in effect: smartparens-mode: t global-corfu-mode: t corfu-mode: t marginalia-mode: t vertico-mouse-mode: t vertico-multiform-mode: t vertico-mode: t which-key-mode: t global-flycheck-mode: t flycheck-mode: t backward-forward-mode: t override-global-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 line-number-mode: t indent-tabs-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /u/cks/.emacs.d/elpa/transient-20231121.1154/transient hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/transient /u/cks/.emacs.d/elpa/use-package-20230426.2324/use-package-core hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/use-package/use-package-core /u/cks/.emacs.d/elpa/use-package-20230426.2324/use-package-diminish hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/use-package/use-package-diminish /u/cks/.emacs.d/elpa/bind-key-20230203.2004/bind-key hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/use-package/bind-key /u/cks/.emacs.d/elpa/use-package-20230426.2324/use-package-lint hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/use-package/use-package-lint /u/cks/.emacs.d/elpa/use-package-20230426.2324/use-package-jump hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/use-package/use-package-jump /u/cks/.emacs.d/elpa/use-package-20230426.2324/use-package hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/use-package/use-package /u/cks/.emacs.d/elpa/use-package-20230426.2324/use-package-delight hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/use-package/use-package-delight /u/cks/.emacs.d/elpa/use-package-20230426.2324/use-package-bind-key hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/use-package/use-package-bind-key /u/cks/.emacs.d/elpa/use-package-20230426.2324/use-package-ensure hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/use-package/use-package-ensure /u/cks/.emacs.d/elpa/project-0.10.0/project hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/progmodes/project /u/cks/.emacs.d/elpa/seq-2.24/seq hides /u/cks/lib/x64-linux/emacs-29.1/share/emacs/29.1/lisp/emacs-lisp/seq Features: (shadow mh-identity mh-letter emacsbug mule-util project consult bookmark mail-extr mh-seq mh-inc hl-line mh-tool-bar flyspell ispell mh-xface mh-cks mh-cks-speed mh-speed speedbar ezimage dframe gnus-icalendar org-capture org-refile org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src ob-comint org-pcomplete pcomplete comint ansi-osc ring org-list org-footnote org-faces org-entities noutline outline ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys oc org-loaddefs org-version org-compat org-macs format-spec icalendar diary-lib diary-loaddefs cal-menu calendar cal-loaddefs mh-utils mh-mime mh-acros mh-show gnus-cite gnus-art mm-uu mml2015 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 parse-time iso8601 gnus-spec gnus-int message yank-media dired dired-loaddefs rfc822 mailabbrev gmm-utils mailheader gnus-win gnus-range gnus nnheader range wid-edit mh-comp sendmail mail-utils mh-gnus mml mm-view mml-smime mml-sec epa derived epg rfc6068 epg-config smime gnutls puny dig mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mh-folder which-func imenu gnus-util text-property-search time-date mh-scan mh-e mh-buffers mh-loaddefs goto-addr comp comp-cstr warnings icons smartparens advice loadhist thingatpt .emacs corfu marginalia vertico-mouse vertico-multiform vertico compat which-key flycheck ansi-color find-func rx dash backward-forward edmacro kmacro cl-extra help-mode pp diminish use-package use-package-ensure use-package-delight use-package-diminish use-package-bind-key bind-key easy-mmode use-package-core finder-inf company-autoloads consult-flycheck-autoloads consult-flyspell-autoloads consult-lsp-autoloads corfu-autoloads embark-consult-autoloads consult-autoloads embark-autoloads evil-autoloads expand-region-autoloads flycheck-golangci-lint-autoloads flycheck-autoloads fold-this-autoloads go-mode-autoloads goto-chg-autoloads lsp-ui-autoloads lsp-mode-autoloads magit-autoloads pcase git-commit-autoloads magit-section-autoloads marginalia-autoloads orderless-autoloads project-autoloads markdown-mode-autoloads f-autoloads rust-mode-autoloads smartparens-autoloads transient-autoloads try-autoloads vertico-autoloads vundo-autoloads which-key-autoloads with-editor-autoloads info compat-autoloads seq-autoloads yaml-mode-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 lcms2 dynamic-setting font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 545270 248252) (symbols 48 33083 301) (strings 32 163048 44156) (string-bytes 1 5324563) (vectors 16 58484) (vector-slots 8 1033146 512517) (floats 8 416 1220) (intervals 56 937 397) (buffers 984 16))