all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Reiner Steib <reinersteib+gmane@imap.cc>
To: rms@gnu.org
Cc: emacs-devel@gnu.org, ding@gnus.org
Subject: Reducing Gnus dependencies in message.el (was: Sending attachments)
Date: Wed, 15 Jul 2009 23:51:56 +0200	[thread overview]
Message-ID: <87hbxdsjgj.fsf_-_@marauder.physik.uni-ulm.de> (raw)
In-Reply-To: <E1MMrcO-0000SJ-K8@fencepost.gnu.org> (Richard Stallman's message of "Fri, 03 Jul 2009 18:52:32 -0400")

On Sat, Jul 04 2009, Richard Stallman wrote:

>     > I object strenuously to the idea of replacing the very simple Mail
>     > mode with something complex from Gnus.
>
>     It's a question of necessary complexity.
>
> I don't think so.  Look at all the libraries message.el loads.
>
>
>     (require 'hashcash)
>     (require 'canlock)

We can eliminate these by using autoloads.  canlock is used for news
postings in Gnus by default.  Hashcash is an optional feature for
mail.

>     (require 'mailheader)

[mailheader.el is not part of Gnus, but part of Emacs.]  Required to
insert correctly formated (quoting, folding, ...) headers into mail
message buffers.

;;; mailheader.el --- mail header parsing, merging, formatting
[...]
;;; Commentary:

;; This package provides an abstraction to RFC822-style messages, used in
;; mail, news, and some other systems.  The simple syntactic rules for such
;; headers, such as quoting and line folding, are routinely reimplemented
;; in many individual packages.  This package removes the need for this
;; redundancy [...]

>     (require 'gmm-utils)

;;; gmm-utils.el --- Utility functions for Gnus, Message and MML

... is an attempt to reduce Gnus dependencies from Message and MML
files.

>     (require 'nnheader)
>
>       That loads
> 	(require 'mail-utils)

[mailutils.el is not part of Gnus, but part of Emacs].  It provides
utility functions for mail handling.  Both, rmail.el and sendmail.el
use it.  I see no point in avoiding using it.

;;; mail-utils.el --- utility functions used both by rmail and rnews
[...]
;; Utility functions for mail and netnews handling.  These handle fine
;; points of header parsing.

> 	(require 'mm-util)

;;; mm-util.el --- Utility functions for Mule and low level things
... needed for MIME.

> 	(require 'gnus-util)

I will try to eliminate this dependency.

>     ;; This is apparently necessary even though things are autoloaded.
>     ;; Because we dynamically bind mail-abbrev-mode-regexp, we'd better
>     ;; require mailabbrev here.
>     (if (featurep 'xemacs)
> 	(require 'mail-abbrevs)
>       (require 'mailabbrev))

Handling expansions of mail aliases.

>     (require 'mail-parse)

For parsing and encoding headers and body correctly.

>     (require 'mml)

Required for MIME handling (e.g. sending attachments).

>     (require 'rfc822)

[rfc822.el is not part of Gnus, but part of Emacs.]  Uses to ensure that
address headers are RFC822-compliant.  Is also used in rmail.el.

>     (require 'ecomplete)

We can eliminate these by using autoloads.  ecomplete is optional.

> I don't want to replace the simple sendmail.el with this tremendous
> pile of complexity.
>
> message.el is also 8000 lines long, where sendmail.el is under 2000
> lines.  I expect that sending attachments won't require more than 200
> lines.

Doing all aspects of MIME mostly correct is not quite simple.  Many
MUAs (Mail User Agent) have severe bugs WRT this.  When reading about
non-trivial topics in the relevant newsgroups, most of the time only
mutt and Gnus do the right thing.

Bye, Reiner.
-- 
       ,,,
      (o o)
---ooO-(_)-Ooo---  |  PGP key available  |  http://rsteib.home.pages.de/



  parent reply	other threads:[~2009-07-15 21:51 UTC|newest]

Thread overview: 167+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-01 19:47 Sending attachments Richard Stallman
2009-07-01 19:58 ` Alfred M. Szmidt
2009-07-05  0:06   ` Richard Stallman
2009-07-05 21:52     ` Stefan Monnier
2009-07-06  3:12       ` Eli Zaretskii
2009-07-11 15:38         ` Stefan Monnier
2009-07-06 15:04       ` Richard Stallman
2009-07-11 15:40         ` Stefan Monnier
2009-07-12 10:11           ` Richard Stallman
2009-07-13 12:14             ` Stefan Monnier
2009-07-14 10:44               ` Richard Stallman
2009-07-14 13:10                 ` Leo
2009-07-14 13:52                 ` Stephen J. Turnbull
2009-07-15 16:45                   ` Ted Zlatanov
2009-07-15 18:18                     ` Frank Schmitt
2009-07-16  4:42                       ` Stephen J. Turnbull
2009-07-16  5:19                         ` Jason Rumney
2009-07-16 14:30                           ` Ted Zlatanov
2009-07-15 18:27                     ` Stefan Monnier
2009-07-16 16:17                     ` Richard Stallman
2009-07-16 18:17                       ` Ted Zlatanov
2009-07-17 12:20                         ` Stephen J. Turnbull
2009-07-19  0:55                           ` Mike Kupfer
2009-07-16  1:10                   ` Richard Stallman
2009-07-16  5:30                     ` Stephen J. Turnbull
2009-07-19  4:37                       ` Richard Stallman
2009-07-16 14:45                     ` Ted Zlatanov
2009-07-17 13:30                       ` Richard Stallman
2009-07-17 18:05                         ` Ted Zlatanov
2009-07-18 17:11                           ` Richard Stallman
2009-07-18 19:15                             ` rfc2047.el dependencies on mm-util.el (was: Sending attachments) Reiner Steib
2009-07-19  4:36                               ` Richard Stallman
2009-07-19  5:30                                 ` rfc2047.el dependencies on mm-util.el Stefan Monnier
2009-07-19 23:21                                   ` Richard Stallman
2009-07-20 18:21                                     ` Stefan Monnier
2009-07-20 18:26                                       ` Bastien
2009-07-20 18:45                                         ` Chong Yidong
2009-07-21 14:41                                           ` Richard Stallman
2009-07-19 18:10                                 ` rfc2047.el dependencies on mm-util.el (was: Sending attachments) Eli Zaretskii
2009-07-19 23:22                                   ` Richard Stallman
2009-07-22 21:57                                   ` Kevin Ryde
2009-07-18 17:11                           ` Sending attachments Richard Stallman
2009-07-14 16:17                 ` Jonathan Rockway
2009-07-14 18:33                 ` Bastien
2009-07-14 18:48                 ` Stefan Monnier
2009-07-16  1:11                   ` Richard Stallman
2009-07-16  1:12                   ` Richard Stallman
2009-07-05 22:39     ` Alfred M. Szmidt
2009-07-06 15:05       ` Richard Stallman
2009-07-07  9:43         ` Alfred M. Szmidt
2009-07-01 23:34 ` Miles Bader
2009-07-02 19:21   ` Richard Stallman
2009-07-03  2:37     ` Miles Bader
2009-07-03  7:44       ` message-mode / mail-mode (was: Sending attachments) Teemu Likonen
2009-07-03  8:43         ` message-mode / mail-mode Miles Bader
2009-07-03  8:55           ` Miles Bader
2009-07-03  9:07           ` Teemu Likonen
2009-07-05 21:40           ` Stefan Monnier
2009-07-06  6:45             ` Reiner Steib
2009-07-11 10:04               ` Stefan Monnier
2009-07-02  1:01 ` Sending attachments Robert J. Chassell
2009-07-02 13:39   ` Miles Bader
2009-07-02 14:33     ` Jason Rumney
2009-07-02 16:40     ` Reiner Steib
2009-07-03 22:52       ` Richard Stallman
2009-07-04 14:39         ` Robert J. Chassell
2009-07-04 15:19         ` Andreas Schwab
2009-07-02 17:26     ` Chong Yidong
2009-07-03 13:47       ` Richard Stallman
2009-07-03 14:21         ` Alfred M. Szmidt
2009-07-05 21:41           ` Stefan Monnier
2009-07-06 15:05             ` Richard Stallman
2009-07-06 16:07               ` Chong Yidong
2009-07-07 10:05                 ` Richard Stallman
2009-07-07 12:19                   ` Andreas Schwab
2009-07-08  0:16                     ` Richard Stallman
2009-07-08  9:46                       ` Andreas Schwab
2009-07-08 18:34                         ` Richard Stallman
2009-07-08 20:36                           ` Reiner Steib
2009-07-09 11:53                             ` Richard Stallman
2009-07-08 11:41                       ` Jason Rumney
2009-07-08 13:41                         ` Miles Bader
2009-07-08 14:16                           ` Teemu Likonen
2009-07-08 14:27                             ` Miles Bader
2009-07-08 14:40                               ` Teemu Likonen
2009-07-08 15:09                               ` Jason Rumney
2009-07-09  2:47                                 ` Miles Bader
2009-07-09 11:54                               ` Richard Stallman
2009-07-09 20:43                                 ` Reiner Steib
2009-07-10  6:39                                   ` Richard Stallman
2009-07-10  9:02                                     ` Stephen J. Turnbull
2009-07-10 11:01                                       ` Eli Zaretskii
2009-07-10 11:55                                         ` Jason Rumney
2009-07-11 18:30                                           ` Richard Stallman
2009-07-10 12:42                                         ` Stephen J. Turnbull
2009-07-11 18:29                                       ` Richard Stallman
2009-07-10  9:17                                     ` Jason Rumney
2009-07-08 19:07                         ` Reiner Steib
2009-07-09 11:54                         ` Richard Stallman
2009-07-09 20:47                           ` Reiner Steib
2009-07-08 19:08                       ` Reiner Steib
2009-07-07 12:48                   ` Jason Rumney
2009-07-06 16:16               ` Glenn Morris
2009-07-07 10:05                 ` Richard Stallman
2009-07-03 17:37         ` Chong Yidong
2009-07-03 22:52           ` Richard Stallman
2009-07-04 15:11             ` Teemu Likonen
2009-07-04 15:54               ` Leo
2009-07-05 14:47             ` Chong Yidong
2009-07-06 20:13               ` Eli Zaretskii
2009-07-07  1:12                 ` Miles Bader
2009-07-07  3:22                   ` Eli Zaretskii
2009-07-07  4:54                     ` Miles Bader
2009-07-07 19:14                       ` Eli Zaretskii
2009-07-11 18:50                         ` Stefan Monnier
2009-07-11 20:25                           ` Eli Zaretskii
2009-07-07  9:43                   ` Alfred M. Szmidt
2009-07-07 10:11                     ` Richard Riley
2009-07-07 13:53                     ` Chong Yidong
2009-07-07 10:05               ` Richard Stallman
2009-07-07 13:49                 ` Chong Yidong
2009-07-08  0:16                   ` Richard Stallman
2009-07-10 13:29                     ` Chong Yidong
2009-07-11 19:02                     ` Stefan Monnier
2009-07-15 21:51             ` Reiner Steib [this message]
2009-07-03 14:21       ` Alfred M. Szmidt
2009-07-04 15:33         ` Chad Brown
2009-07-04 15:53           ` Eli Zaretskii
2009-07-04 17:08             ` Chad Brown
2009-07-05 10:18               ` Richard Stallman
2009-07-05  1:40             ` Daniel Pittman
2009-07-05  2:39             ` Miles Bader
2009-07-05  3:18               ` Eli Zaretskii
2009-07-05  3:44                 ` Miles Bader
2009-07-05 18:16                   ` Eli Zaretskii
2009-07-05 20:44                     ` Miles Bader
2009-07-06  3:15                       ` Eli Zaretskii
2009-07-06  3:50                         ` Miles Bader
2009-07-06  4:54                           ` Miles Bader
2009-07-06 20:06                             ` Eli Zaretskii
2009-07-06 22:35                               ` Miles Bader
2009-07-07  0:59                                 ` Kenichi Handa
2009-07-07  9:43                                   ` Alfred M. Szmidt
2009-07-08  0:16                                   ` Richard Stallman
2009-07-11 15:45                                     ` Stefan Monnier
2009-07-06  6:37                           ` Alfred M. Szmidt
2009-07-06  7:47                             ` Miles Bader
2009-07-06 20:08                               ` Eli Zaretskii
2009-07-06 14:13                             ` Chong Yidong
2009-07-06 20:15                               ` Eli Zaretskii
2009-07-07  5:57                             ` Giorgos Keramidas
2009-07-06 15:05                       ` Richard Stallman
2009-07-11 19:08                         ` Stefan Monnier
2009-07-11 19:41                           ` Alfred M. Szmidt
2009-07-12  3:05                             ` Leo
2009-07-12  3:10                               ` Lennart Borgman
2009-07-13 12:11                             ` Stefan Monnier
2009-07-15  9:35                               ` Alfred M. Szmidt
2009-07-15 11:44                                 ` Richard Riley
2009-07-15 14:22                                 ` Stefan Monnier
2009-07-05 22:56                     ` Chong Yidong
2009-07-06 20:10                       ` Eli Zaretskii
2009-07-05  8:01               ` Andreas Schwab
2009-07-05  8:30                 ` Miles Bader
2009-07-06 15:05               ` Richard Stallman
2009-07-05 20:05         ` Byung-Hee HWANG
2009-07-05 20:22           ` Alfred M. Szmidt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87hbxdsjgj.fsf_-_@marauder.physik.uni-ulm.de \
    --to=reinersteib+gmane@imap.cc \
    --cc=Reiner.Steib@gmx.de \
    --cc=ding@gnus.org \
    --cc=emacs-devel@gnu.org \
    --cc=rms@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.