Subject: bug#22754: closed (Re: bug#22754: 25.1.50; Rmail does not follow RFC 2822)

From: [email-masked] (GNU bug Tracking System)
Date: Mon, 22 Feb 2016 20:14:02 +0000

Your bug report

#22754: 25.1.50; Rmail does not follow RFC 2822

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
22754: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=22754
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#22754: 25.1.50; Rmail does not follow RFC 2822
From: Marcin Borkowski <[email-masked]>
To: Glenn Morris <[email-masked]>
Cc: [email-masked], Eli Zaretskii <[email-masked]>
Date: Mon, 22 Feb 2016 21:13:32 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

On 2016-02-22, at 19:14, Glenn Morris <[email-masked]> wrote:

> Eli Zaretskii wrote:
>
>>> From: Marcin Borkowski <[email-masked]>
>>> Date: Sun, 21 Feb 2016 11:28:27 +0100
>>> 
>>> Rmail inserts lower-case field names in the header, which goes against
>>> RFC 2822 (pp. 22 and 23, see
>>> https://tools.ietf.org/html/rfc2822#page-22).  It seems that the problem
>>> affects Cc: and In-reply-to: fields.
>>
>> I use Rmail all the time, and these headers are capitalized in my
>> reply messages.  So please provide a recipe starting from "emacs -Q",
>> there could be some other factor at work here.
>
> I assume it was a theoretical analysis...
>
> With sendmail-user-agent, mail-setup inserts "Cc" and "In-reply-to"
> directly (apparently the latter should be "In-Reply-To"?), ignoring the
> case passed via other-headers.
>
> With message-user-agent, message-mail explicitly uses capitalize on all
> headers.
>
> I suppose there's no guarantee that some other mail-user-agent won't use
> the headers as supplied, but perhaps that would be a bug in the
> user-agent?

Glenn, you mean what I did was theoretical analysis or what Eli did...?

For me, it was a real problem: I use mu4e as my email client, and it
didn't do the capitalization.  It is quite probable that it's mu4e's
bug, since indeed I could not reproduce it on emacs -Q (without mu4e).
It seems that your email saved me some analysis - you're right,
`message-mail' does the capitalization indeed.  When I have time
(probably Wednesday or Thursday), I'll propose a patch to the author of
mu4e.  For now, I'm closing this bug.

Nevertheless, I still think it is a bit sloppy: it looks like Emacs
depends on the incidental fact that all header field names are
capitalized, but AFAIU this is not a rule stated explicitly in RFC2822,
but just (it seems) a convention they have adopted.  IOW, in the
(unlikely of course - now /this/ is theoretical analysis!) case when
RFC2822 is superseded by another one, not adhering to this convention,
Emacs users will be in trouble, or, as a (not very elegant;-)) Polish
saying goes, "va qnex ohgg" (rot13'd since possibly NSFW). ;-)

Thanks and best regards

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Faculty of Mathematics and Computer Science
Adam Mickiewicz University

Subject: 25.1.50; Rmail does not follow RFC 2822
From: Marcin Borkowski <[email-masked]>
To: [email-masked]
Date: Sun, 21 Feb 2016 11:28:27 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Dear Devs,

Rmail inserts lower-case field names in the header, which goes against
RFC 2822 (pp. 22 and 23, see
https://tools.ietf.org/html/rfc2822#page-22).  It seems that the problem
affects Cc: and In-reply-to: fields.  Below is a simple patch which
seems to help.

Best,
mbork

--8<---------------cut here---------------start------------->8---
diff -u --label /home/mbork/ludzie-works/emacs/emacs/lisp/mail/rmail.el --label \#\<buffer\ rmail.el\> /home/mbork/ludzie-works/emacs/emacs/lisp/mail/rmail.el /tmp/buffer-content-1903Vxh
--- /home/mbork/ludzie-works/emacs/emacs/lisp/mail/rmail.el
+++ #<buffer rmail.el>
@@ -3699,8 +3699,8 @@
 	;; point and mark (see doc of sc-cite-original).
 	(setq yank-action
 	      `(rmail-yank-current-message ,replybuffer)))
-    (push (cons "cc" cc) other-headers)
-    (push (cons "in-reply-to" in-reply-to) other-headers)
+    (push (cons "Cc" cc) other-headers)
+    (push (cons "In-reply-to" in-reply-to) other-headers)
     (setq other-headers
 	  (mapcar #'(lambda (elt)
 		      (cons (car elt) (if (stringp (cdr elt))

Diff finished.  Sun Feb 21 11:24:47 2016
--8<---------------cut here---------------end--------------->8---

In GNU Emacs 25.1.50.2 (x86_64-unknown-linux-gnu, GTK+ Version 2.24.28)
 of 2016-02-10 built on jane
Repository revision: 4ccd2688911b90bcb8cdcd2a8de608e09471a91a
Windowing system distributor 'Fedora Project', version 11.0.11704000
Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GSETTINGS NOTIFY LIBSELINUX
GNUTLS LIBXML2 FREETYPE LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK2 X11

Important settings:
  value of $LC_COLLATE: pl_PL.UTF-8
  value of $LC_CTYPE: pl_PL.UTF-8
  value of $LC_MESSAGES: pl_PL.UTF-8
  value of $LANG: pl_PL.UTF-8
  value of $XMODIFIERS: @im=none
  locale-coding-system: utf-8-unix

Major mode: Diff

Minor modes in effect:
  whitespace-mode: t
  semantic-minor-modes-format: ((:eval (if (or semantic-highlight-edits-mode semantic-show-unmatched-syntax-mode)  S)))
  diff-auto-refine-mode: t
  global-git-commit-mode: t
  shell-dirtrack-mode: t
  beeminder-org-integration-mode: t
  TeX-PDF-mode: t
  pdf-occur-global-minor-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  savehist-mode: t
  ivy-mode: t
  show-paren-mode: t
  tooltip-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
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
Contacting host: debbugs.gnu.org:80
Wrote /tmp/debbugs19037cV/bug_18590.mbox
Counting messages...done
Showing message 16...done
Computing summary lines...done
Showing message 1...done
(New file)
Mark set [4 times]
You can run the command ‘diff-buffer-with-file’ with M-x d-b-w RET
Mark set [2 times]

Load-path shadows:
~/works/marcin/emacs/my-scrolls hides ~/.emacs.d/my-el-files/my-scrolls
~/works/marcin/emacs/org-insert-habit hides ~/.emacs.d/my-el-files/org-insert-habit
~/works/marcin/emacs/magic-tex-dollar hides ~/.emacs.d/my-el-files/magic-tex-dollar
~/works/marcin/emacs/zero-to-hyphen hides ~/.emacs.d/my-el-files/zero-to-hyphen
~/works/marcin/emacs/jumping-tab hides ~/.emacs.d/my-el-files/jumping-tab
~/works/marcin/emacs/ppauza hides ~/.emacs.d/my-el-files/ppauza
~/works/marcin/emacs/tie hides ~/.emacs.d/my-el-files/tie
~/ludzie-works/emacs/sierotki hides ~/.emacs.d/contrib/sierotki
~/ludzie-works/emacs/org-reveal/ox-reveal hides ~/.emacs.d/contrib/ox-reveal
~/.emacs.d/contrib/org-learn hides ~/ludzie-works/emacs/org-mode/contrib/lisp/org-learn
~/.emacs.d/contrib/org-drill hides ~/ludzie-works/emacs/org-mode/contrib/lisp/org-drill
~/ludzie-works/emacs/dired-details+ hides /home/mbork/.emacs.d/elpa/dired-details+-1.0/dired-details+
~/ludzie-works/emacs/dired-details hides /home/mbork/.emacs.d/elpa/dired-details-1.3.1/dired-details
~/ludzie-works/emacs/org-mode/contrib/lisp/htmlize hides /home/mbork/.emacs.d/elpa/htmlize-1.39/htmlize
~/works/marcin/emacs/pascal hides /usr/local/share/emacs/25.1.50/lisp/progmodes/pascal
~/ludzie-works/emacs/org-mode/lisp/org-capture hides /usr/local/share/emacs/25.1.50/lisp/org/org-capture
~/ludzie-works/emacs/org-mode/lisp/ob-ledger hides /usr/local/share/emacs/25.1.50/lisp/org/ob-ledger
~/ludzie-works/emacs/org-mode/lisp/ox-man hides /usr/local/share/emacs/25.1.50/lisp/org/ox-man
~/ludzie-works/emacs/org-mode/lisp/ob-shen hides /usr/local/share/emacs/25.1.50/lisp/org/ob-shen
~/ludzie-works/emacs/org-mode/lisp/org-ctags hides /usr/local/share/emacs/25.1.50/lisp/org/org-ctags
~/ludzie-works/emacs/org-mode/lisp/org-eshell hides /usr/local/share/emacs/25.1.50/lisp/org/org-eshell
~/ludzie-works/emacs/org-mode/lisp/org-faces hides /usr/local/share/emacs/25.1.50/lisp/org/org-faces
~/ludzie-works/emacs/org-mode/lisp/ob-sass hides /usr/local/share/emacs/25.1.50/lisp/org/ob-sass
~/ludzie-works/emacs/org-mode/lisp/org-footnote hides /usr/local/share/emacs/25.1.50/lisp/org/org-footnote
~/ludzie-works/emacs/org-mode/lisp/org-macs hides /usr/local/share/emacs/25.1.50/lisp/org/org-macs
~/ludzie-works/emacs/org-mode/lisp/org-loaddefs hides /usr/local/share/emacs/25.1.50/lisp/org/org-loaddefs
~/ludzie-works/emacs/org-mode/lisp/ox-html hides /usr/local/share/emacs/25.1.50/lisp/org/ox-html
~/ludzie-works/emacs/org-mode/lisp/ob-plantuml hides /usr/local/share/emacs/25.1.50/lisp/org/ob-plantuml
~/ludzie-works/emacs/org-mode/lisp/ob-gnuplot hides /usr/local/share/emacs/25.1.50/lisp/org/ob-gnuplot
~/ludzie-works/emacs/org-mode/lisp/ob-io hides /usr/local/share/emacs/25.1.50/lisp/org/ob-io
~/ludzie-works/emacs/org-mode/lisp/ob-ruby hides /usr/local/share/emacs/25.1.50/lisp/org/ob-ruby
~/ludzie-works/emacs/org-mode/lisp/ob-mscgen hides /usr/local/share/emacs/25.1.50/lisp/org/ob-mscgen
~/ludzie-works/emacs/org-mode/lisp/ob-lilypond hides /usr/local/share/emacs/25.1.50/lisp/org/ob-lilypond
~/ludzie-works/emacs/org-mode/lisp/ob-maxima hides /usr/local/share/emacs/25.1.50/lisp/org/ob-maxima
~/ludzie-works/emacs/org-mode/lisp/ob-lob hides /usr/local/share/emacs/25.1.50/lisp/org/ob-lob
~/ludzie-works/emacs/org-mode/lisp/ob-comint hides /usr/local/share/emacs/25.1.50/lisp/org/ob-comint
~/ludzie-works/emacs/org-mode/lisp/ob-java hides /usr/local/share/emacs/25.1.50/lisp/org/ob-java
~/ludzie-works/emacs/org-mode/lisp/org-version hides /usr/local/share/emacs/25.1.50/lisp/org/org-version
~/ludzie-works/emacs/org-mode/lisp/org-bibtex hides /usr/local/share/emacs/25.1.50/lisp/org/org-bibtex
~/ludzie-works/emacs/org-mode/lisp/ox-latex hides /usr/local/share/emacs/25.1.50/lisp/org/ox-latex
~/ludzie-works/emacs/org-mode/lisp/ox-odt hides /usr/local/share/emacs/25.1.50/lisp/org/ox-odt
~/ludzie-works/emacs/org-mode/lisp/ob-table hides /usr/local/share/emacs/25.1.50/lisp/org/ob-table
~/ludzie-works/emacs/org-mode/lisp/org-crypt hides /usr/local/share/emacs/25.1.50/lisp/org/org-crypt
~/ludzie-works/emacs/org-mode/lisp/org-gnus hides /usr/local/share/emacs/25.1.50/lisp/org/org-gnus
~/ludzie-works/emacs/org-mode/lisp/ob-lisp hides /usr/local/share/emacs/25.1.50/lisp/org/ob-lisp
~/ludzie-works/emacs/org-mode/lisp/org-pcomplete hides /usr/local/share/emacs/25.1.50/lisp/org/org-pcomplete
~/ludzie-works/emacs/org-mode/lisp/org-rmail hides /usr/local/share/emacs/25.1.50/lisp/org/org-rmail
~/ludzie-works/emacs/org-mode/lisp/ob-core hides /usr/local/share/emacs/25.1.50/lisp/org/ob-core
~/ludzie-works/emacs/org-mode/lisp/ob-scala hides /usr/local/share/emacs/25.1.50/lisp/org/ob-scala
~/ludzie-works/emacs/org-mode/lisp/ox-md hides /usr/local/share/emacs/25.1.50/lisp/org/ox-md
~/ludzie-works/emacs/org-mode/lisp/ob-matlab hides /usr/local/share/emacs/25.1.50/lisp/org/ob-matlab
~/ludzie-works/emacs/org-mode/lisp/ox-icalendar hides /usr/local/share/emacs/25.1.50/lisp/org/ox-icalendar
~/ludzie-works/emacs/org-mode/lisp/ob-ref hides /usr/local/share/emacs/25.1.50/lisp/org/ob-ref
~/ludzie-works/emacs/org-mode/lisp/ox-ascii hides /usr/local/share/emacs/25.1.50/lisp/org/ox-ascii
~/ludzie-works/emacs/org-mode/lisp/ob-awk hides /usr/local/share/emacs/25.1.50/lisp/org/ob-awk
~/ludzie-works/emacs/org-mode/lisp/org-indent hides /usr/local/share/emacs/25.1.50/lisp/org/org-indent
~/ludzie-works/emacs/org-mode/lisp/org-mouse hides /usr/local/share/emacs/25.1.50/lisp/org/org-mouse
~/ludzie-works/emacs/org-mode/lisp/ox hides /usr/local/share/emacs/25.1.50/lisp/org/ox
~/ludzie-works/emacs/org-mode/lisp/ob-latex hides /usr/local/share/emacs/25.1.50/lisp/org/ob-latex
~/ludzie-works/emacs/org-mode/lisp/ob-eval hides /usr/local/share/emacs/25.1.50/lisp/org/ob-eval
~/ludzie-works/emacs/org-mode/lisp/ob-calc hides /usr/local/share/emacs/25.1.50/lisp/org/ob-calc
~/ludzie-works/emacs/org-mode/lisp/ob-tangle hides /usr/local/share/emacs/25.1.50/lisp/org/ob-tangle
~/ludzie-works/emacs/org-mode/lisp/ob-picolisp hides /usr/local/share/emacs/25.1.50/lisp/org/ob-picolisp
~/ludzie-works/emacs/org-mode/lisp/org-attach hides /usr/local/share/emacs/25.1.50/lisp/org/org-attach
~/ludzie-works/emacs/org-mode/lisp/org-entities hides /usr/local/share/emacs/25.1.50/lisp/org/org-entities
~/ludzie-works/emacs/org-mode/lisp/org-compat hides /usr/local/share/emacs/25.1.50/lisp/org/org-compat
~/ludzie-works/emacs/org-mode/lisp/org-src hides /usr/local/share/emacs/25.1.50/lisp/org/org-src
~/ludzie-works/emacs/org-mode/lisp/ox-beamer hides /usr/local/share/emacs/25.1.50/lisp/org/ox-beamer
~/ludzie-works/emacs/org-mode/lisp/ox-org hides /usr/local/share/emacs/25.1.50/lisp/org/ox-org
~/ludzie-works/emacs/org-mode/lisp/ob-screen hides /usr/local/share/emacs/25.1.50/lisp/org/ob-screen
~/ludzie-works/emacs/org-mode/lisp/org-mobile hides /usr/local/share/emacs/25.1.50/lisp/org/org-mobile
~/ludzie-works/emacs/org-mode/lisp/ob-ocaml hides /usr/local/share/emacs/25.1.50/lisp/org/ob-ocaml
~/ludzie-works/emacs/org-mode/lisp/ob-fortran hides /usr/local/share/emacs/25.1.50/lisp/org/ob-fortran
~/ludzie-works/emacs/org-mode/lisp/org-bbdb hides /usr/local/share/emacs/25.1.50/lisp/org/org-bbdb
~/ludzie-works/emacs/org-mode/lisp/ob-emacs-lisp hides /usr/local/share/emacs/25.1.50/lisp/org/ob-emacs-lisp
~/ludzie-works/emacs/org-mode/lisp/org-habit hides /usr/local/share/emacs/25.1.50/lisp/org/org-habit
~/ludzie-works/emacs/org-mode/lisp/org-irc hides /usr/local/share/emacs/25.1.50/lisp/org/org-irc
~/ludzie-works/emacs/org-mode/lisp/org-w3m hides /usr/local/share/emacs/25.1.50/lisp/org/org-w3m
~/ludzie-works/emacs/org-mode/lisp/ob-js hides /usr/local/share/emacs/25.1.50/lisp/org/ob-js
~/ludzie-works/emacs/org-mode/lisp/ob-R hides /usr/local/share/emacs/25.1.50/lisp/org/ob-R
~/ludzie-works/emacs/org-mode/lisp/org-colview hides /usr/local/share/emacs/25.1.50/lisp/org/org-colview
~/ludzie-works/emacs/org-mode/lisp/ob-dot hides /usr/local/share/emacs/25.1.50/lisp/org/ob-dot
~/ludzie-works/emacs/org-mode/lisp/org-list hides /usr/local/share/emacs/25.1.50/lisp/org/org-list
~/ludzie-works/emacs/org-mode/lisp/ob-sqlite hides /usr/local/share/emacs/25.1.50/lisp/org/ob-sqlite
~/ludzie-works/emacs/org-mode/lisp/ob-keys hides /usr/local/share/emacs/25.1.50/lisp/org/ob-keys
~/ludzie-works/emacs/org-mode/lisp/ox-publish hides /usr/local/share/emacs/25.1.50/lisp/org/ox-publish
~/ludzie-works/emacs/org-mode/lisp/ob-asymptote hides /usr/local/share/emacs/25.1.50/lisp/org/ob-asymptote
~/ludzie-works/emacs/org-mode/lisp/org-timer hides /usr/local/share/emacs/25.1.50/lisp/org/org-timer
~/ludzie-works/emacs/org-mode/lisp/ob-ditaa hides /usr/local/share/emacs/25.1.50/lisp/org/ob-ditaa
~/ludzie-works/emacs/org-mode/lisp/org-id hides /usr/local/share/emacs/25.1.50/lisp/org/org-id
~/ludzie-works/emacs/org-mode/lisp/org-macro hides /usr/local/share/emacs/25.1.50/lisp/org/org-macro
~/ludzie-works/emacs/org-mode/lisp/org-mhe hides /usr/local/share/emacs/25.1.50/lisp/org/org-mhe
~/ludzie-works/emacs/org-mode/lisp/ob-haskell hides /usr/local/share/emacs/25.1.50/lisp/org/ob-haskell
~/ludzie-works/emacs/org-mode/lisp/org-datetree hides /usr/local/share/emacs/25.1.50/lisp/org/org-datetree
~/ludzie-works/emacs/org-mode/lisp/ob-C hides /usr/local/share/emacs/25.1.50/lisp/org/ob-C
~/ludzie-works/emacs/org-mode/lisp/ob-sql hides /usr/local/share/emacs/25.1.50/lisp/org/ob-sql
~/ludzie-works/emacs/org-mode/lisp/org hides /usr/local/share/emacs/25.1.50/lisp/org/org
~/ludzie-works/emacs/org-mode/lisp/ob-octave hides /usr/local/share/emacs/25.1.50/lisp/org/ob-octave
~/ludzie-works/emacs/org-mode/lisp/ob-perl hides /usr/local/share/emacs/25.1.50/lisp/org/ob-perl
~/ludzie-works/emacs/org-mode/lisp/ob-css hides /usr/local/share/emacs/25.1.50/lisp/org/ob-css
~/ludzie-works/emacs/org-mode/lisp/ob-clojure hides /usr/local/share/emacs/25.1.50/lisp/org/ob-clojure
~/ludzie-works/emacs/org-mode/lisp/org-archive hides /usr/local/share/emacs/25.1.50/lisp/org/org-archive
~/ludzie-works/emacs/org-mode/lisp/ox-texinfo hides /usr/local/share/emacs/25.1.50/lisp/org/ox-texinfo
~/ludzie-works/emacs/org-mode/lisp/ob-org hides /usr/local/share/emacs/25.1.50/lisp/org/ob-org
~/ludzie-works/emacs/org-mode/lisp/ob-exp hides /usr/local/share/emacs/25.1.50/lisp/org/ob-exp
~/ludzie-works/emacs/org-mode/lisp/org-agenda hides /usr/local/share/emacs/25.1.50/lisp/org/org-agenda
~/ludzie-works/emacs/org-mode/lisp/org-feed hides /usr/local/share/emacs/25.1.50/lisp/org/org-feed
~/ludzie-works/emacs/org-mode/lisp/org-info hides /usr/local/share/emacs/25.1.50/lisp/org/org-info
~/ludzie-works/emacs/org-mode/lisp/org-plot hides /usr/local/share/emacs/25.1.50/lisp/org/org-plot
~/ludzie-works/emacs/org-mode/lisp/org-install hides /usr/local/share/emacs/25.1.50/lisp/org/org-install
~/ludzie-works/emacs/org-mode/lisp/org-inlinetask hides /usr/local/share/emacs/25.1.50/lisp/org/org-inlinetask
~/ludzie-works/emacs/org-mode/lisp/org-docview hides /usr/local/share/emacs/25.1.50/lisp/org/org-docview
~/ludzie-works/emacs/org-mode/lisp/ob hides /usr/local/share/emacs/25.1.50/lisp/org/ob
~/ludzie-works/emacs/org-mode/lisp/org-protocol hides /usr/local/share/emacs/25.1.50/lisp/org/org-protocol
~/ludzie-works/emacs/org-mode/lisp/ob-scheme hides /usr/local/share/emacs/25.1.50/lisp/org/ob-scheme
~/ludzie-works/emacs/org-mode/lisp/ob-makefile hides /usr/local/share/emacs/25.1.50/lisp/org/ob-makefile
~/ludzie-works/emacs/org-mode/lisp/org-table hides /usr/local/share/emacs/25.1.50/lisp/org/org-table
~/ludzie-works/emacs/org-mode/lisp/org-clock hides /usr/local/share/emacs/25.1.50/lisp/org/org-clock
~/ludzie-works/emacs/org-mode/lisp/ob-python hides /usr/local/share/emacs/25.1.50/lisp/org/ob-python
~/ludzie-works/emacs/org-mode/lisp/org-element hides /usr/local/share/emacs/25.1.50/lisp/org/org-element
/home/mbork/.emacs.d/elpa/emms-20141202.1202/tq hides /usr/local/share/emacs/25.1.50/lisp/emacs-lisp/tq

Features:
(shadow emacsbug whitespace find-dired grep magit-extras org-table
face-remap time view battery image-file two-column info-look tex+
ox-oddmuse diary-lib diary-loaddefs cal-iso iso-transl org-datetree
quail tabify org-capture eww mm-url url-queue calc-map calc-alg calccomp
calc-incom calc-ext calc-misc calc-menu calc-aent calc calc-loaddefs
calc-macs cal-move context-en context pdf-sync pdf-annot pdf-outline
pdf-links pdf-history ld-script plain-tex arc-mode archive-mode
sh-script smie dired-aux epa-file ox-odt rng-loc rng-uri rng-parse
rng-match rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-org
ox-html ox-beamer ox-latex ox-publish ox shr-color dabbrev tmm diff
counsel lispy swiper iedit iedit-lib lispy-inline avy semantic/bovine/el
semantic/format semantic/tag-ls semantic/find semantic/ctxt
semantic/db-el eieio-opt semantic/bovine semantic/db eieio-base etags
ediff-merg ediff-wind ediff-diff ediff-mult ediff-help ediff-init
ediff-util ediff lispy-tags debug rmailsum rmailmm rmail rmail-loaddefs
gnus-async gnus-agent gnus-srvr gnus-score score-mode nnvirtual nntp
gnus-ml gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime dig
nndoc gnus-cache gnus-sum 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 mm-archive network-stream nsm starttls url-cache
debbugs-gnu debbugs soap-client warnings rng-xsd rng-dt rng-util
xsd-regexp xml edebug pulse xref project vc-git texmathp
multi-replace-regex vc vc-dispatcher vc-hg preview prv-emacs tex-buf
adaptive-wrap font-latex latex tex-style tex-mode latexenc emms-volume
emms-volume-amixer sgml-mode shr dom subr-x qp character-fold misearch
multi-isearch timezone parse-time executable mail-extr sort em-unix
em-term term disp-table ehelp em-script em-prompt em-ls em-hist em-pred
em-glob em-dirs em-cmpl em-basic em-banner em-alias linum magit-blame
magit-stash magit-bisect magit-remote magit-commit magit-sequence magit
magit-log magit-apply magit-wip magit-diff smerge-mode diff-mode
magit-core magit-process magit-popup magit-mode magit-git magit-section
magit-utils git-commit log-edit pcvs-util add-log with-editor tramp-sh
tramp tramp-compat tramp-loaddefs trampver ucs-normalize shell dash
colir color beeminder ewoc anaphora request url-http tls gnutls url-auth
url-gw puny url url-proxy url-privacy url-expand url-methods url-history
url-cookie url-domsuf url-util mailcap json map typopunct sierotki
emms-cache emms-info-ogginfo emms-info-mp3info emms-info later-do
emms-playlist-mode emms-player-vlc emms-player-mplayer
emms-player-simple emms-source-playlist emms-source-file locate
emms-setup emms emms-compat tex crm pdf-occur ibuf-ext ibuffer
ibuffer-loaddefs tablist tablist-filter semantic/wisent/comp
semantic/wisent semantic/wisent/wisent semantic/util-modes semantic/util
semantic semantic/tag semantic/lex semantic/fw mode-local cedet
pdf-isearch let-alist pdf-misc imenu pdf-tools compile cus-edit
cus-start cus-load wid-edit pdf-view bookmark pp pdf-cache pdf-info tq
pdf-util yasnippet org-info org-habit org-agenda org-docview
org-tree-slide org-timer org-drill savehist org-id hi-lock org-learn
org-protocol org-clock ledger-mode ledger-schedule ledger-xact
ledger-texi ledger-test ledger-state ledger-sort ledger-report
ledger-reconcile ledger-post ledger-occur ledger-init ledger-fonts
ledger-exec ledger-context ledger-complete ledger-commodities esh-var
esh-io esh-cmd esh-opt esh-ext esh-proc esh-groups eshell esh-module
esh-mode esh-arg esh-util ledger-regex rx hydra lv gnus-dired org-mu4e
org-element avl-tree org org-macro org-footnote org-pcomplete pcomplete
org-list org-faces org-entities noutline outline easy-mmode org-version
ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys
ob-comint ob-core ob-eval org-compat org-macs org-loaddefs find-func
cal-menu calendar cal-loaddefs mu4e-contrib mu4e mu4e-speedbar speedbar
sb-image ezimage dframe mu4e-main mu4e-view epa derived browse-url
comint ansi-color ring mu4e-headers mu4e-compose mu4e-draft mu4e-actions
ido seq rfc2368 smtpmail sendmail mu4e-mark mu4e-message html2text
mu4e-proc mu4e-utils doc-view jka-compr image-mode mu4e-lists mu4e-vars
message format-spec rfc822 mml mml-sec epg mm-decode mm-bodies mm-encode
mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev mail-utils
gmm-utils mailheader hl-line cl mu4e-meta advice ivy delsel ffap
thingatpt edmacro kmacro server dired-x dired dired-loaddefs paren
finder-inf adaptive-wrap-autoloads tex-site dired+-autoloads
dired-details+-autoloads dired-details-autoloads dired-dups-autoloads
dired-efap-autoloads f-autoloads flycheck-autoloads
git-gutter-fringe-autoloads fringe-helper-autoloads git-gutter-autoloads
htmlize-autoloads markdown-mode-autoloads epl-autoloads
js2-mode-autoloads typopunct-autoloads info dash-autoloads package
epg-config url-handlers url-parse auth-source cl-seq eieio byte-opt
bytecomp byte-compile cl-extra cconv eieio-core cl-macs gv
eieio-loaddefs gnus-util mm-util help-fns help-mode easymenu cl-loaddefs
pcase cl-lib mail-prsvr password-cache url-vars time-date mule-util
tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type
mwheel x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt
fringe tabulated-list newcomment elisp-mode lisp-mode prog-mode register
page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core frame 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 charscript case-table epa-hook
jka-cmpr-hook help simple abbrev obarray minibuffer 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 inotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit
x multi-tty make-network-process emacs)

Memory information:
((conses 16 1902618 307752)
 (symbols 48 84830 0)
 (miscs 40 9524 8402)
 (strings 32 361040 88925)
 (string-bytes 1 19365990)
 (vectors 16 113961)
 (vector-slots 8 2518261 72620)
 (floats 8 39348 7747)
 (intervals 56 128934 1174)
 (buffers 976 204)
 (heap 1024 160373 36304))
-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Faculty of Mathematics and Computer Science
Adam Mickiewicz University