all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#38654: 27.0.50; mml-to-mime may produce faulty email messages
@ 2019-12-17 21:16 Rainer Gemulla
  2020-01-10 14:04 ` bug#38654: Further details Rainer Gemulla
  2020-03-03 15:12 ` bug#38654: 27.0.50; mml-to-mime may produce faulty email messages Rainer Gemulla
  0 siblings, 2 replies; 3+ messages in thread
From: Rainer Gemulla @ 2019-12-17 21:16 UTC (permalink / raw)
  To: 38654


[-- Attachment #1.1: Type: text/plain, Size: 34760 bytes --]

(I am sending this again as HTML so that the MML tags below do not get 
destroyed.)

I found that some email messages that I sent (mostly forwarded messages) 
were incorrectly encoded by Emacs. This error happened inconsistently, 
and (since no user-visible error is thrown), I was unaware of the 
problem for a while. It is also reproducible on eacho of my machines.

After some playing around, I found a way to reproduce:

1. Run: emacs -Q
2. M-x message-mode
3. Clear scratch buffer, then paste message below into scratch buffer
4. M-: (mml-to-mime)
    --> gives correct result
5. Clear scratch buffer, then paste message below into scratch buffer
6. Insert a new line "<#secure method=pgpmime mode=sign>" at start of 
message (after line "--text follows this line--")
7. M-: (mml-to-mime)
   --> throws (expected) signer name error
8. Clear scratch buffer, then paste message below into scratch buffer
9. M-: (mml-to-mime)
   --> wrong result (first Content-Type after "text follows..." is wrong)

I tried to track down the bug and found this piece of code in 
mml-parse-1, line 284:

(setq tag (list 'part '(type . "text/plain"))
       no-markup-p t
       warn t)

During step 9, this statement is executed, but the tag variable is not 
set to the list mentioned in the statement (seriously!). In my case, it 
had value 'Content-Type: multipart/alternative; boundary="====-=-="' 
right afterwards (as in the incorrect result below). At this point I 
gave up, looks like a deeper problem.


BEGIN ORIGINAL MESSAGE
From: a@b.ce
To: c@d.de
Subject: Test
--text follows this line--
Test

<#mml type=message/rfc822 disposition=inline>
<#multipart type=alternative>
<#part type=text/plain charset="UTF-8" disposition=inline nofile=yes>
Some text.
<#part type=text/html charset="UTF-8" nofile=yes>
Some more text.
<#/multipart>
<#/mml>
END ORIGINAL MESSAGE


BEGIN INCORRECT RESULT AFTER STEP 9
From: a@b.ce
To: c@d.de
Subject: Test
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
--text follows this line--
--=-=-=
Content-Type: multipart/alternative; boundary="====-=-="
Content-Transfer-Encoding: base64

VGV4dAoK
--=-=-=
Content-Type: message/rfc822
Content-Disposition: inline

--====-=-=
Content-Disposition: inline
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="====-=-="

Some text.

--====-=-=
Content-Type: text/html; charset=utf-8

Some more text.

--====-=-=--

--=-=-=--
END INCORRECT RESULT AFTER STEP 9


In GNU Emacs 27.0.50 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.4)
  of 2019-12-17 built on potestas
Repository revision: dba1be0a9b3e92717f7921335f8507c007df8ca6
Repository branch: master
Windowing system distributor 'HC-Consult', version 11.0.12001004
System Description: Ubuntu 18.10

Recent messages:
    - ‘edebug-Go-nonstop-mode’ originally mapped on ‘G’
Quit
uncompressing mml.el.gz...done
uncompressing mml.el.gz...done
Searched 0/1 files
Searched 1/1 files
evil-line-move: Beginning of buffer
uncompressing mml.el.gz...done
Sticky Agenda buffer, use ‘r’ to refresh
Created gnus link.
"27.0.50"
Configured using:
  'configure --with-gnutls --with-jpeg --with-png --with-rsvg --with-tiff
  --with-xft --with-xml2 --with-xpm --with-imagemagick --with-xft
  --with-x-toolkit=gtk3 --with-pop --with-mailutils --with-xwidgets
  --with-modules --prefix=/usr/local/stow/emacs-master'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY INOTIFY GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS XWIDGETS
LIBSYSTEMD PDUMPER LCMS2 GMP

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

Major mode: notmuch-tree

Minor modes in effect:
   eval-sexp-fu-flash-mode: t
   flycheck-pos-tip-mode: t
   global-flycheck-mode: t
   Info-breadcrumbs-in-mode-line-mode: t
   gdb-many-windows: t
   yas-global-mode: t
   yas-minor-mode: t
   projectile-mode: t
   recentf-mode: t
   global-magit-file-mode: t
   global-git-commit-mode: t
   async-bytecomp-package-mode: t
   show-smartparens-global-mode: t
   show-smartparens-mode: t
   syncmails-minor-mode: t
   diff-hl-margin-mode: t
   pupo-mode: t
   purpose-mode: t
   evil-goggles-mode: t
   winner-mode: t
   company-quickhelp-mode: t
   company-quickhelp-local-mode: t
   global-spacemacs-whitespace-cleanup-mode: t
   spacemacs-whitespace-cleanup-mode: t
   ws-butler-global-mode: t
   ws-butler-mode: t
   winum-mode: t
   global-vi-tilde-fringe-mode: t
   spaceline-helm-mode: t
   save-place-mode: t
   savehist-mode: t
   persp-mode: t
   persistent-scratch-autosave-mode: t
   on-screen-global-mode: t
   ivy-rich-mode: t
   global-hl-todo-mode: t
   global-fasd-mode: t
   eyebrowse-mode: t
   evil-snipe-override-mode: t
   evil-snipe-mode: t
   global-evil-surround-mode: t
   global-anzu-mode: t
   anzu-mode: t
   engine-mode: t
   el-patch-use-package-mode: t
   editorconfig-mode: t
   diff-hl-flydiff-mode: t
   counsel-mode: t
   ivy-mode: t
   clean-aindent-mode: t
   which-key-mode: t
   override-global-mode: t
   global-undo-tree-mode: t
   undo-tree-mode: t
   shell-dirtrack-mode: t
   evil-mode: t
   evil-local-mode: t
   spacemacs-leader-override-mode: t
   global-spacemacs-leader-override-mode: t
   global-hl-line-mode: t
   hl-line-mode: t
   xterm-mouse-mode: t
   global-auto-revert-mode: t
   ido-vertical-mode: t
   global-page-break-lines-mode: t
   global-eldoc-mode: t
   electric-indent-mode: t
   mouse-wheel-mode: t
   file-name-shadow-mode: t
   global-font-lock-mode: t
   font-lock-mode: t
   auto-composition-mode: t
   auto-encryption-mode: t
   auto-compression-mode: t
   buffer-read-only: t
   column-number-mode: t
   line-number-mode: t
   global-visual-line-mode: t
   visual-line-mode: t
   transient-mark-mode: t
   auto-save-visited-mode: t

Load-path shadows:
/home/rgemulla/.emacs.d/elpa/develop/ht-20190924.704/ht hides 
/home/rgemulla/.emacs.d/core/libs/ht
/home/rgemulla/.spacemacs.d/private/rgmacs/so-long hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/so-long
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-texinfo 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-texinfo
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-publish 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-publish
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-org 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-org
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-odt 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-odt
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-md 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-md
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-man 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-man
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-latex 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-latex
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-icalendar 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-icalendar
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-html 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-html
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-beamer 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-beamer
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ox-ascii 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ox-ascii
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-version 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-version
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-timer 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-timer
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-tempo 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-tempo
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-table 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-table
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-src 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-src
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-protocol 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-protocol
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-plot 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-plot
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-pcomplete 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-pcomplete
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-num 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-num
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-mouse 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-mouse
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-mobile 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-mobile
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-macs 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-macs
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-macro 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-macro
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-loaddefs 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-loaddefs
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-list 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-list
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-lint 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-lint
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-keys 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-keys
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-install 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-install
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-inlinetask 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-inlinetask
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-indent 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-indent
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-id 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-id
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-habit 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-habit
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-goto 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-goto
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-footnote 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-footnote
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-feed 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-feed
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-faces 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-faces
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-entities 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-entities
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-element 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-element
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-duration 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-duration
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-datetree 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-datetree
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-ctags 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-ctags
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-crypt 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-crypt
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-compat 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-compat
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-colview 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-colview
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-clock 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-clock
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-capture 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-capture
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-attach 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-attach
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-attach-git 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-attach-git
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-archive 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-archive
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/org-agenda 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/org-agenda
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-w3m 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-w3m
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-rmail 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-rmail
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-mhe 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-mhe
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-irc 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-irc
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-info 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-info
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-gnus 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-gnus
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-eww 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-eww
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-eshell 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-eshell
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-docview 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-docview
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-bibtex 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-bibtex
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ol-bbdb 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ol-bbdb
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-vala 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-vala
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-tangle 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-tangle
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-table 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-table
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-stan 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-stan
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-sqlite 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-sqlite
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-sql 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-sql
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-shen 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-shen
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-shell 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-shell
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-sed 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-sed
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-screen 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-screen
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-scheme 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-scheme
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-sass 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-sass
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-ruby 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-ruby
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-ref 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-ref
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-R 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-R
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-python 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-python
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-processing 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-processing
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-plantuml 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-plantuml
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-picolisp 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-picolisp
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-perl 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-perl
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-org 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-org
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-octave 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-octave
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-ocaml 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-ocaml
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-mscgen 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-mscgen
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-maxima 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-maxima
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-matlab 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-matlab
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-makefile 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-makefile
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-lua 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-lua
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-lob 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-lob
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-lisp 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-lisp
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-lilypond 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-lilypond
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-ledger 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-ledger
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-latex 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-latex
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-js 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-js
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-java 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-java
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-J 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-J
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-io 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-io
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-hledger 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-hledger
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-haskell 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-haskell
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-groovy 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-groovy
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-gnuplot 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-gnuplot
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-fortran 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-fortran
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-forth 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-forth
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-exp 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-exp
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-eval 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-eval
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-eshell 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-eshell
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-emacs-lisp 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-emacs-lisp
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-ebnf 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-ebnf
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-dot 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-dot
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-ditaa 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-ditaa
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-css 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-css
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-core 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-core
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-coq 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-coq
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-comint 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-comint
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-clojure 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-clojure
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-calc 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-calc
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-C 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-C
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-awk 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-awk
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-asymptote 
hides 
/usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-asymptote
/home/rgemulla/.emacs.d/elpa/develop/org-plus-contrib-20191209/ob-abc 
hides /usr/local/stow/emacs-master/share/emacs/27.0.50/lisp/org/ob-abc

Features:
(shadow sort gnus-alias mail-extr emacsbug sendmail smex german-holidays
oauth2 org-gnus elisp-slime-nav flycheck-package package-lint finder
eval-sexp-fu auto-highlight-symbol evil-lisp-state flycheck-pos-tip
flycheck highlight-numbers parent-mode highlight-parentheses info+
rainbow-delimiters mule-util helpful trace edebug backtrace info-look
elisp-refs loop org-duration cal-iso company-capf org-eldoc org-ref
org-ref-helm-bibtex org-ref-helm helm-utils helm-bibtex
bibtex-completion biblio biblio-download biblio-dissemin biblio-ieee
biblio-hal biblio-dblp biblio-crossref biblio-arxiv timezone biblio-doi
biblio-core helm-net helm-help helm-config helm-easymenu org-ref-core
reftex-cite reftex reftex-loaddefs reftex-vars parsebib ox-odt rng-loc
rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns
nxml-enc xmltok nxml-util ox-latex ox-icalendar ox-html table ox-ascii
ox-publish ox org-ref-glossary org-ref-bibtex org-ref-citeproc key-chord
doi-utils org-ref-utils org-ref-pdf htmlize evil-org ob-groovy ob-R
ob-shell ob-C cc-mode-expansions cc-mode cc-fonts cc-guess cc-menus
cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs ob-java ob-scala
ensime-expand-region ensime ensime-mode ensime-sbt sbt-mode
sbt-mode-rgrep sbt-mode-comint sbt-mode-buffer sbt-mode-project
sbt-mode-vars ensime-http ensime-ui ensime-semantic-highlight ensime-doc
ensime-search ensime-helm helm helm-source helm-multi-match helm-lib
ensime-undo ensime-startup ensime-refactor ensime-popup ensime-eldoc
ensime-notes ensime-company ensime-editor ensime-ivy ensime-model popup
ensime-debug gdb-mi bindat gud ensime-stacktrace ensime-inf
ensime-overlay ensime-completion-util ensime-config ensime-util
ensime-client ensime-vars smartparens-scala scala-mode
scala-mode-prettify-symbols scala-mode-imenu scala-mode-map
scala-mode-fontlock scala-mode-indent scala-mode-paragraph
scala-mode-syntax scala-mode-lib pp hideshow flymake-proc flymake
arc-mode archive-mode ensime-macros ob-js org-bullets org-download
org-sticky-header toc-org yasnippet-snippets yasnippet org-indent
image-file org-element ol-eww ol-rmail ol-mhe ol-irc ol-info ol-gnus
nnir ol-docview doc-view image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m
editorconfig-core editorconfig-core-handle editorconfig-fnmatch
smartparens-org org-agenda-property org-agenda org-notmuch
org-projectile projectile skeleton find-dired grep org-category-capture
org-capture org-protocol the-org-mode-expansions calfw holidays
hol-loaddefs orgit evil-magit git-rebase recentf tree-widget 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 gnutls forge-notify forge-revnote forge-pullreq forge-issue
forge-topic bug-reference forge-post smartparens-markdown markdown-mode
forge-repo forge forge-core forge-db closql emacsql-sqlite emacsql
emacsql-compiler url-http url-auth url-gw nsm magit-submodule
magit-obsolete magit-popup 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
magit-core magit-autorevert magit-margin magit-transient magit-process
magit-mode transient git-commit magit-git magit-section benchmark
magit-utils which-func vc-git log-edit pcvs-util add-log with-editor
async-bytecomp async org org-macro org-footnote org-pcomplete org-list
org-entities org-version ob-emacs-lisp org-table org-loaddefs find-func
gnus-sum shr svg dom gnus-group gnus-undo gnus-start gnus-cloud nnimap
nnmail mail-source utf7 netrc nnoo gnus-spec gnus-int gnus-range
gnus-win gnus nnheader smartparens-config smartparens-text
smartparens-python smartparens notmuch notmuch-hello notmuch-tree
notmuch-show notmuch-print notmuch-crypto notmuch-mua notmuch-message
notmuch-draft notmuch-maildir-fcc notmuch-address notmuch-company
notmuch-parser notmuch-wash coolj notmuch-query icalendar diary-lib
diary-loaddefs cal-menu calendar cal-loaddefs notmuch-tag crm
notmuch-lib notmuch-compat mm-view mml-smime smime dig diff-hl-margin
diff-hl-dired spacemacs-purpose-popwin window-purpose-x ibuf-macs
imenu-list imenu ibuf-ext ibuffer ibuffer-loaddefs window-purpose
window-purpose-fixes window-purpose-prefix-overload
window-purpose-switch let-alist window-purpose-layout
window-purpose-core window-purpose-configuration window-purpose-utils
evil-goggles pulse message rmc puny rfc822 mml mml-sec epa gnus-util
rmail rmail-loaddefs text-property-search jka-compr mailabbrev
mail-utils gmm-utils mailheader winner company-files company-keywords
company-etags etags fileloop company-gtags company-dabbrev-code
company-dabbrev company-semantic company-template company-yasnippet
company-ispell company-quickhelp pos-tip company goto-addr server
diminish zoom-frm frame-cmds frame-fns avoid xterm-color
spacemacs-whitespace-cleanup ws-butler winum vi-tilde-fringe font-utils
unicode-fonts symbol-overlay string-inflection spaceline-config
spaceline-segments spaceline powerline powerline-separators
powerline-themes saveplace savehist org-faces pyvenv eshell-z em-dirs
esh-var esh-mode em-term term ehelp eshell esh-cmd esh-ext esh-opt
esh-proc esh-io esh-arg esh-module esh-groups esh-util elpy-shell popwin
plstore persp-mode persistent-soft list-utils pcache eieio-base
persistent-scratch on-screen ob-ipython python-el-fgallina-expansions
python tramp-sh tramp tramp-loaddefs trampver tramp-integration files-x
tramp-compat parse-time iso8601 ls-lisp dash-functional ob-python ob
ob-tangle ol org-src ob-ref ob-lob ob-table ob-exp ob-comint ob-core
ob-eval org-keys org-compat org-macs noflet cl-indent ivy-rich ivy-hydra
iflipb hl-todo fasd rg-dired-icons rg-dired-icons-w32
rg-dired-icons-cache eyebrowse evil-unimpaired f s dash
evil-textobj-line evil-snipe evil-embrace evil-surround embrace
expand-region text-mode-expansions er-basic-expansions
expand-region-core expand-region-custom evil-anzu anzu engine-mode
elfeed-curl url url-proxy url-privacy url-expand url-methods url-history
url-cookie url-domsuf mailcap elfeed-log elfeed-db elfeed-lib url-util
time-date avl-tree generator url-queue xml-query el-patch editorconfig
noutline outline face-remap diff-hl-flydiff diff-hl vc-dir ewoc vc
vc-dispatcher diff-mode counsel xdg xref project dired dired-loaddefs
compile swiper ivy flx delsel colir color ivy-overlay clean-aindent-mode
clang-format xml gh-common marshal tex-site hybrid-mode
evil-evilified-state which-key use-package use-package-ensure
use-package-delight use-package-diminish use-package-bind-key bind-key
use-package-core hydra lv cus-edit cus-start cus-load evil
evil-keybindings evil-integration undo-tree diff cl evil-maps
evil-commands reveal flyspell ispell evil-jumps evil-command-window
evil-types evil-search evil-ex shell pcomplete comint ansi-color
evil-macros evil-repeat evil-states evil-core evil-common windmove
thingatpt rect evil-digraphs evil-vars ring bind-map quelpa mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util
ietf-drums mail-prsvr lisp-mnt help-fns radix-tree hl-line xt-mouse
autorevert filenotify so-long disp-table wid-edit leuven-theme
format-spec info finder-inf init-rgmacs cl-extra ido-vertical-mode ido
core-spacemacs core-use-package-ext core-transient-state
core-micro-state core-toggle core-keybindings core-fonts-support
core-themes-support core-display-init core-jump core-release-management
core-custom-settings core-configuration-layer eieio-compat
core-progress-bar core-spacemacs-buffer core-funcs ht help-mode warnings
package browse-url url-handlers url-parse auth-source cl-seq
password-cache json map url-vars seq eieio byte-opt bytecomp
byte-compile cconv eieio-core eieio-loaddefs epg epg-config
core-command-line pcase core-debug edmacro kmacro derived cl-macs gv
profiler easymenu cl-loaddefs cl-lib core-hooks page-break-lines
easy-mmode core-env load-env-vars rx core-dotspacemacs advice
core-emacs-backports subr-x core-dumper tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type 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 elisp-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame minibuffer cl-generic 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 charscript charprop case-table epa-hook
jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote threads dbusbind inotify lcms2 dynamic-setting
system-font-setting font-render-setting xwidget-internal move-toolbar
gtk x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 16 2215720 1134039)
  (symbols 48 116965 1)
  (strings 32 422842 154750)
  (string-bytes 1 13887671)
  (vectors 16 88831)
  (vector-slots 8 1813590 402520)
  (floats 8 881 788)
  (intervals 56 16673 4021)
  (buffers 1000 58))

[-- Attachment #1.2: Type: text/html, Size: 37139 bytes --]

[-- Attachment #2: Type: application/pgp-signature, Size: 876 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#38654: Further details
  2019-12-17 21:16 bug#38654: 27.0.50; mml-to-mime may produce faulty email messages Rainer Gemulla
@ 2020-01-10 14:04 ` Rainer Gemulla
  2020-03-03 15:12 ` bug#38654: 27.0.50; mml-to-mime may produce faulty email messages Rainer Gemulla
  1 sibling, 0 replies; 3+ messages in thread
From: Rainer Gemulla @ 2020-01-10 14:04 UTC (permalink / raw)
  To: 38654


[-- Attachment #1.1: Type: text/plain, Size: 1692 bytes --]

The consequence of this bug is that Emacs sends incorrect messages 
without the sender noticing. When such a message is opened by the 
recipient (in any other email client I tried, including in Emacs), the 
content is not readable. This is an major bug.

The bug happens (mostly?) when a message is forwarded: the new parts 
added by the sender are lost because they are incorrectly encoded. The 
correct encoding and the incorrect one obtained in Emacs 27 below. The 
problematic parts are marked in red.

BEGIN CORRECT RESULT
From: a <at> b.ce
To: c <at> d.de
Subject: Test
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
--text follows this line--
--=-=-=
Content-Type: text/plain

Test


--=-=-=
Content-Type: message/rfc822
Content-Disposition: inline

--====-=-=
Content-Disposition: inline
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="====-=-="

Some text.

--====-=-=
Content-Type: text/html; charset=utf-8

Some more text.

--====-=-=--

--=-=-=--
END CORRECT RESULT
BEGIN INCORRECT RESULT AFTER STEP 9
From: a <at> b.ce
To: c <at> d.de
Subject: Test
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
--text follows this line--
--=-=-=
Content-Type: multipart/alternative; boundary="====-=-="
Content-Transfer-Encoding: base64

VGV4dAoK
--=-=-=
Content-Type: message/rfc822
Content-Disposition: inline

--====-=-=
Content-Disposition: inline
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="====-=-="

Some text.

--====-=-=
Content-Type: text/html; charset=utf-8

Some more text.

--====-=-=--

--=-=-=--
END INCORRECT RESULT AFTER STEP 9

[-- Attachment #1.2: Type: text/html, Size: 2703 bytes --]

[-- Attachment #2: Type: application/pgp-signature, Size: 876 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#38654: 27.0.50; mml-to-mime may produce faulty email messages
  2019-12-17 21:16 bug#38654: 27.0.50; mml-to-mime may produce faulty email messages Rainer Gemulla
  2020-01-10 14:04 ` bug#38654: Further details Rainer Gemulla
@ 2020-03-03 15:12 ` Rainer Gemulla
  1 sibling, 0 replies; 3+ messages in thread
From: Rainer Gemulla @ 2020-03-03 15:12 UTC (permalink / raw)
  To: 38654-done

[-- Attachment #1: Type: text/plain, Size: 54 bytes --]

Closing to resubmit with a more readable explanation.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-03-03 15:12 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-12-17 21:16 bug#38654: 27.0.50; mml-to-mime may produce faulty email messages Rainer Gemulla
2020-01-10 14:04 ` bug#38654: Further details Rainer Gemulla
2020-03-03 15:12 ` bug#38654: 27.0.50; mml-to-mime may produce faulty email messages Rainer Gemulla

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.