Fix last commit.
[gnus] / GNUS-NEWS
1 GNUS NEWS -- history of user-visible changes.
2 Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
3 See the end for copying conditions.
4
5 Please send Gnus bug reports to bugs@gnus.org.
6 For older news, see Gnus info node "New Features".
7
8 \f
9 * Changes in Oort Gnus
10
11 ** The revised Gnus FAQ is included in the manual.
12 See the info node "Frequently Asked Questions".
13
14 ** Upgrading from previous (stable) version if you have used Oort.
15
16 If you have tried Oort (the unstable Gnus branch leading to this
17 release) but went back to a stable version, be careful when upgrading
18 to this version.  In particular, you will probably want to remove all
19 .marks (nnml) and .mrk (nnfolder) files, so that flags are read from
20 your ~/.newsrc.eld instead of from the .marks/.mrk file where this
21 release store flags.  See a later entry for more information about
22 marks.  Note that downgrading isn't save in general.
23
24 ** Article Buttons
25
26 More buttons for URLs, mail addresses, Message-IDs, Info links, man pages and
27 Emacs or Gnus related references, see the info node "Article Buttons".  The
28 variables `gnus-button-*-level' can be used to control the appearance of all
29 article buttons, see the info node "Article Button Levels".
30
31 ** Dired integration
32 `gnus-dired-minor-mode' installs key bindings in dired buffers to send
33 a file as an attachment (`C-c C-a'), open a file using the approriate
34 mailcap entry (`C-c C-l'), and print a file using the mailcap entry
35 (`C-c P').  It is enabled with 
36
37       (add-hook 'dired-mode-hook 'turn-on-gnus-dired-mode)
38
39 ** Gnus can display RSS newsfeeds as a newsgroup.  To get started do `B
40 nnrss RET RET' in the Group buffer.
41
42 ** Single-part yenc encoded attachments can be decoded.
43
44 ** Picons
45 The picons code has been reimplemented to work in GNU Emacs -- some of
46 the previous options have been removed or renamed.
47
48 Picons are small "personal icons" representing users, domain and
49 newsgroups, which can be displayed in the Article buffer.  To enable
50 picons, install the picons database from
51
52       http://www.cs.indiana.edu/picons/ftp/index.html
53
54 and point `gnus-picon-databases' to that location.
55
56 ** If the new option `gnus-treat-body-boundary' is non-nil, a boundary 
57 line is drawn at the end of the headers.
58
59 ** Retrieval of charters and control messages
60 There are new commands for fetching newsgroup charters (`H c') and
61 control messages (`H C').
62
63 ** Delayed articles
64 You can delay the sending of a message with `C-c C-j' in the Message
65 buffer.  The messages are delivered at specified time.  This is useful
66 for sending yourself reminders.  Setup with (gnus-delay-initialize).
67
68 ** If `auto-compression-mode' is enabled, attachments are automatically
69 decompressed when activated.
70
71 ** If the new option `nnml-use-compressed-files' is non-nil, 
72 the nnml back end allows compressed message files.
73
74 ** Signed article headers (X-PGP-Sig) can be verified with `W p'.
75
76 ** The Summary Buffer uses an arrow in the fringe to indicate the current 
77 article.  Use (setq gnus-summary-display-arrow nil) to disable it.
78
79 ** Warn about email replies to news
80 Do you often find yourself replying to news by email by mistake?  Then
81 the new option `gnus-confirm-mail-reply-to-news' is just the thing for
82 you.
83
84 ** If the new option `gnus-summary-display-while-building' is non-nil, 
85 the summary buffer is shown and updated as it's being built.
86
87 ** The new `recent' mark "." indicates newly arrived messages (as
88 opposed to old but unread messages).
89
90 ** The new option `gnus-gcc-mark-as-read' automatically marks 
91 Gcc articles as read.
92
93 ** The nndoc back end now supports mailman digests and exim bounces.
94
95 ** Gnus supports RFC 2369 mailing list headers, and adds a number of 
96 related commands in mailing list groups.
97
98 ** The Date header can be displayed in a format that can be read aloud
99 in English, see `gnus-treat-date-english'.
100
101 ** The envelope sender address can be customized when using Sendmail, see 
102 `message-sendmail-envelope-from'.
103
104 ** diffs are automatically highlighted in groups matching
105 `mm-uu-diff-groups-regexp'
106
107 ** TLS wrapper shipped with Gnus
108
109 TLS/SSL is now supported in IMAP and NNTP via tls.el and GNUTLS.  The
110 old TLS/SSL support via (external third party) ssl.el and OpenSSL
111 still works.
112
113 ** New make.bat for compiling and installing Gnus under MS Windows
114
115 Use make.bat if you want to install Gnus under MS Windows, the first
116 argument to the batch-program should be the directory where xemacs.exe
117 respectively emacs.exe is located, iff you want to install Gnus after
118 compiling it, give make.bat /copy as the second parameter.
119
120 Make.bat has been rewritten from scratch, it now features automatic
121 recognition of XEmacs and GNU Emacs, generates gnus-load.el, checks if
122 errors occur while compilation and generation of info files and reports
123 them at the end of the build process. It now uses makeinfo if it is
124 available and falls back to infohack.el otherwise. Make.bat should now
125 install all files which are necessary to run Gnus and be generally a
126 complete replacement for the "configure; make; make install" cycle used
127 under Unix systems.
128
129 The new make.bat makes make-x.bat superfluous, so it has been removed.
130
131 ** Support for non-ASCII domain names
132
133 Message supports non-ASCII domain names in From:, To: and Cc: and will
134 query you whether to perform encoding when you try to send a message.
135 The variable `message-use-idna' controls this.  Gnus will also decode
136 non-ASCII domain names in From:, To: and Cc: when you view a message.
137 The variable `gnus-use-idna' controls this.
138
139 ** Better handling of Microsoft citation styles
140
141 Gnus now tries to recognize the mangled header block that some Microsoft
142 mailers use to indicate that the rest of the message is a citation, even
143 though it is not quoted in any way.  The variable
144 `gnus-cite-unsightly-citation-regexp' matches the start of these
145 citations.
146
147 ** gnus-article-skip-boring
148
149 If you set `gnus-article-skip-boring' to t, then Gnus will not scroll
150 down to show you a page that contains only boring text, which by
151 default means cited text and signature.  You can customize what is
152 skippable using `gnus-article-boring-faces'.
153
154 This feature is especially useful if you read many articles that
155 consist of a little new content at the top with a long, untrimmed
156 message cited below.
157
158 ** The format spec %C for positioning point has changed to %*.
159
160 ** The new variable `gnus-parameters' can be used to set group parameters.
161
162 Earlier this was done only via `G p' (or `G c'), which stored the
163 parameters in ~/.newsrc.eld, but via this variable you can enjoy the
164 powers of customize, and simplified backups since you set the variable
165 in ~/.emacs instead of ~/.newsrc.eld.  The variable maps regular
166 expressions matching group names to group parameters, a'la:
167
168      (setq gnus-parameters
169            '(("mail\\..*"
170               (gnus-show-threads nil)
171               (gnus-use-scoring nil))
172              ("^nnimap:\\(foo.bar\\)$"
173               (to-group . "\\1"))))
174
175 ** Smileys (":-)", ";-)" etc) are now iconized for Emacs too.
176
177 Put (setq gnus-treat-display-smileys nil) in ~/.emacs to disable it.
178
179 ** Gnus no longer generate the Sender: header automatically.
180
181 Earlier it was generated iff the user configurable email address was
182 different from the Gnus guessed default user address.  As the guessing
183 algorithm is rarely correct these days, and (more controversally) the
184 only use of the Sender: header was to check if you are entitled to
185 cancel/supersede news (which is now solved by Cancel Locks instead,
186 see another entry), generation of the header has been disabled by
187 default.  See the variables `message-required-headers',
188 `message-required-news-headers', and `message-required-mail-headers'.
189
190 ** Features from third party message-utils.el added to message.el.
191
192 Message now asks if you wish to remove "(was: <old subject>)" from
193 subject lines (see `message-subject-trailing-was-query').  C-c M-m and
194 C-c M-f inserts markers indicating included text.  C-c C-f a adds a
195 X-No-Archive: header.  C-c C-f x inserts appropriate headers and a
196 note in the body for cross-postings and followups (see the variables
197 `message-cross-post-*').
198
199 ** References and X-Draft-Headers are no longer generated when you
200    start composing messages and `message-generate-headers-first' is nil.
201
202 ** Improved anti-spam features.
203
204 Gnus is now able to take out spam from your mail and news streams
205 using a wide variety of programs and filter rules. Among the supported
206 methods are RBL blocklists, bogofilter and white/blacklists.  Hooks
207 for easy use of external packages such as SpamAssassin and Hashcash
208 are also new.
209
210 ** Easy inclusion of X-Faces headers.
211
212 ** In the summary buffer, the new command / N inserts new messages and
213 / o inserts old messages.
214
215 ** Gnus decodes morse encoded messages if you press W m.
216
217 ** Unread count correct in nnimap groups.
218
219 The estimated number of unread articles in the group buffer should now
220 be correct for nnimap groups.  This is achieved by calling
221 `nnimap-fixup-unread-after-getting-new-news' from the
222 `gnus-setup-news-hook' (called on startup) and
223 gnus-after-getting-new-news-hook. (called after getting new mail).  If
224 you have modified those variables from the default, you may want to
225 add n-f-u-a-g-n-n again.  If you were happy with the estimate and want
226 to save some (minimal) time when getting new mail, remove the
227 function.
228
229 ** Group Carbon Copy (GCC) quoting
230
231 To support groups that contains SPC and other weird characters, groups
232 are quoted before they are placed in the Gcc: header.  This means
233 variables such as `gnus-message-archive-group' should no longer
234 contain quote characters to make groups containing SPC work.  Also, if
235 you are using the string "nnml:foo, nnml:bar" (indicating Gcc into two
236 groups) you must change it to return the list ("nnml:foo" "nnml:bar"),
237 otherwise the Gcc: line will be quoted incorrectly.  Note that
238 returning the string "nnml:foo, nnml:bar" was incorrect earlier, it
239 just didn't generate any problems since it was inserted directly.
240
241 ** ~/News/overview/ not used.
242
243 As a result of the following change, the ~/News/overview/ directory is
244 not used any more.  You can safely delete the entire hierarchy.
245
246 ** gnus-agent
247
248 The Gnus Agent has seen a major updated and is now enabled by default,
249 and all nntp and nnimap servers from gnus-select-method and
250 gnus-secondary-select-method are agentized by default. Earlier only
251 the server in gnus-select-method was agentized by the default, and the
252 agent was disabled by default.  When the agent is enabled, headers are
253 now also retrieved from the Agent cache instead of the backends when
254 possible. Earlier this only happened in the unplugged state.  You can
255 enroll or remove servers with `J a' and `J r' in the server buffer.
256 Gnus will not download articles into the Agent cache, unless you
257 instruct it to do so, though, by using `J u' or `J s' from the Group
258 buffer.  You revert to the old behaviour of having the Agent disabled
259 with `(setq gnus-agent nil)'.  Note that putting (gnus-agentize) in
260 ~/.gnus is not needed any more.
261
262 ** gnus-summary-line-format
263
264 The default value changed to "%U%R%z%I%(%[%4L: %-23,23f%]%) %s\n".
265 Moreover gnus-extra-headers, nnmail-extra-headers and
266 gnus-ignored-from-addresses changed their default so that the users
267 name will be replaced by the recipient's name or the group name
268 posting to for NNTP groups.
269
270 ** deuglify.el (gnus-article-outlook-deuglify-article)
271
272 A new file from Raymond Scholz <rscholz@zonix.de> for deuglifying
273 broken Outlook (Express) articles.
274
275 ** (require 'gnus-load)
276
277 If you use a stand-alone Gnus distribution, you'd better add (require
278 'gnus-load) into your ~/.emacs after adding the Gnus lisp directory
279 into load-path.
280
281 File gnus-load.el contains autoload commands, functions and variables,
282 some of which may not be included in distributions of Emacsen.
283
284 ** gnus-slave-unplugged
285
286 A new command which starts gnus offline in slave mode.
287
288 ** message-insinuate-rmail
289
290 Adding (message-insinuate-rmail) and (setq mail-user-agent
291 'gnus-user-agent) in .emacs convinces Rmail to compose, reply and
292 forward messages in message-mode, where you can enjoy the power of
293 MML.
294
295 ** message-minibuffer-local-map
296
297 The line below enables BBDB in resending a message:
298
299 (define-key message-minibuffer-local-map [(tab)] 'bbdb-complete-name)
300
301 ** Externalizing and deleting of attachments.
302
303 If gnus-gcc-externalize-attachments (or
304 message-fcc-externalize-attachments) is non-nil, attach local files as
305 external parts.
306
307 The command gnus-mime-save-part-and-strip (bound to `C-o' on MIME
308 buttons) saves a part and replaces the part with an external one.
309 gnus-mime-delete-part (bound to `d' on MIME buttons) removes a part.
310 It works only on back ends that support editing.
311
312 ** gnus-default-charset
313
314 The default value is determined from the current-language-environment
315 variable, instead of 'iso-8859-1. Also the ".*" item in
316 gnus-group-charset-alist is removed.
317
318 ** gnus-posting-styles
319
320 Add a new format of match like
321
322         ((header "to" "larsi.*org")
323          (Organization "Somewhere, Inc."))
324
325 The old format like the lines below is obsolete, but still accepted.
326
327         (header "to" "larsi.*org"
328          (Organization "Somewhere, Inc."))
329
330 ** message-ignored-news-headers and message-ignored-mail-headers
331
332 X-Draft-From and X-Gnus-Agent-Meta-Information have been added into
333 these two variables. If you customized those, perhaps you need add
334 those two headers too.
335
336 ** Gnus reads the NOV and articles in the Agent if plugged.
337
338 If one reads an article while plugged, and the article already exists
339 in the Agent, it won't get downloaded once more.  (setq
340 gnus-agent-cache nil) reverts to the old behavior.
341
342 ** Gnus supports the "format=flowed" (RFC 2646) parameter.
343
344 On composing messages, it is enabled by `use-hard-newlines'.  Decoding
345 format=flowed was present but not documented in earlier versions.
346
347 ** Gnus supports the generation of RFC 2298 Disposition Notification requests.
348
349 This is invoked with the C-c M-n key binding from message mode.
350
351 ** Gnus supports Maildir groups.
352
353 Gnus includes a new backend nnmaildir.el.
354
355 ** Printing capabilities are enhanced.
356
357 Gnus supports Muttprint natively with O P from the Summary and Article
358 buffers.  Also, each individual MIME part can be printed using p on
359 the MIME button.
360
361 ** Message supports the Importance: (RFC 2156) header.
362
363 In the message buffer, `C-c C-f C-i' or `C-c C-u' cycles through the
364 valid values.
365
366 ** Gnus supports Cancel Locks in News.
367
368 This means a header "Cancel-Lock" is inserted in news posting.  It is
369 used to determine if you wrote a article or not (for cancelling and
370 superseding).  Gnus generates a random password string the first time
371 you post a message, and saves it in your ~/.emacs using the Custom
372 system.  While the variable is called `canlock-password', it is not
373 security sensitive data.  Publishing your canlock string on the web
374 will not allow anyone to be able to anything she could not already do.
375 The behaviour can be changed by customizing `message-insert-canlock'.
376
377 ** Gnus supports server-side mail filtering using Sieve.
378
379 Sieve rules can be added as Group Parameters for groups, and the
380 complete Sieve script is generated using `D g' from the Group buffer,
381 and then uploaded to the server using `C-c C-l' in the generated Sieve
382 buffer.  Search the online Gnus manual for "sieve", and see the new
383 Sieve manual, for more information.
384
385 ** Extended format specs.
386
387 Format spec "%&user-date;" is added into
388 gnus-summary-line-format-alist.  Also, user defined extended format
389 specs are supported.  The extended format specs look like "%u&foo;",
390 which invokes function gnus-user-format-function-foo.  Because "&" is
391 used as the escape character, old user defined format "%u&" is no
392 longer supported.
393
394 ** `/ *' (gnus-summary-limit-include-cached) is rewritten.
395
396 It was aliased to `Y c' (gnus-summary-insert-cached-articles). The new
397 function filters out other articles.
398
399 ** Some limiting commands accept a C-u prefix to negate the match.
400
401 If C-u is used on subject, author or extra headers, i.e., `/ s', `/
402 a', and `/ x' (gnus-summary-limit-to-{subject,author,extra})
403 respectively, the result will be to display all articles that do not
404 match the expression.
405
406 ** Group names are treated as UTF-8 by default.
407
408 This is supposedly what USEFOR wanted to migrate to.  See
409 `gnus-group-name-charset-group-alist' and
410 `gnus-group-name-charset-method-alist' for customization.
411
412 ** The nnml and nnfolder backends store marks for each groups.
413
414 This makes it possible to take backup of nnml/nnfolder servers/groups
415 separately of ~/.newsrc.eld, while preserving marks.  It also makes it
416 possible to share articles and marks between users (without sharing
417 the ~/.newsrc.eld file) within e.g. a department.  It works by storing
418 the marks stored in ~/.newsrc.eld in a per-group file ".marks" (for
419 nnml) and "groupname.mrk" (for nnfolder, named "groupname").  If the
420 nnml/nnfolder is moved to another machine, Gnus will automatically use
421 the .marks or .mrk file instead of the information in ~/.newsrc.eld.
422 The new server variables `nnml-marks-is-evil' and
423 `nnfolder-marks-is-evil' can be used to disable this feature.
424
425 ** The menu bar item (in Group and Summary buffer) named "Misc" has
426 been renamed to "Gnus".
427
428 ** The menu bar item (in Message mode) named "MML" has been renamed to
429 "Attachments".  Note that this menu also contains security related
430 stuff, like signing and encryption.
431
432 ** gnus-group-charset-alist and gnus-group-ignored-charsets-alist.
433
434 The regexps in these variables are compared with full group names
435 instead of real group names in 5.8.  Users who customize these
436 variables should change those regexps accordingly. For example:
437
438    ("^han\\>" euc-kr) -> ("\\(^\\|:\\)han\\>" euc-kr)
439
440 ** Gnus supports PGP (RFC 1991/2440), PGP/MIME (RFC 2015/3156) and
441 ** S/MIME (RFC 2630-2633).
442 It needs an external S/MIME and OpenPGP implementation, but no
443 additional lisp libraries.  This add several menu items to the
444 Attachments menu, and C-c RET key bindings, when composing messages.
445 This also obsoletes `gnus-article-hide-pgp-hook'.
446
447 ** Gnus inlines external parts (message/external).
448
449 ** MML (Mime compose) prefix changed from `M-m' to `C-c C-m'.
450
451 This change was made to avoid conflict with the standard binding of
452 `back-to-indentation', which is also useful in message mode.
453
454 ** Bug fixes.
455
456 \f
457 * Changes in Pterodactyl Gnus (5.8/5.9)
458
459 The Gnus NEWS entries are short, but they reflect sweeping changes in
460 four areas: Article display treatment, MIME treatment,
461 internationalization and mail-fetching.
462
463 ** The mail-fetching functions have changed.  See the manual for the
464 many details.  In particular, all procmail fetching variables are gone.
465
466 If you used procmail like in
467
468 (setq nnmail-use-procmail t)
469 (setq nnmail-spool-file 'procmail)
470 (setq nnmail-procmail-directory "~/mail/incoming/")
471 (setq nnmail-procmail-suffix "\\.in")
472
473 this now has changed to 
474
475 (setq mail-sources
476       '((directory :path "~/mail/incoming/"
477                    :suffix ".in")))
478
479 More information is available in the info doc at Select Methods ->
480 Getting Mail -> Mail Sources
481
482 ** Gnus is now a MIME-capable reader.  This affects many parts of
483 Gnus, and adds a slew of new commands.  See the manual for details.
484
485 ** Gnus has also been multilingualized.  This also affects too
486 many parts of Gnus to summarize here, and adds many new variables.
487
488 ** gnus-auto-select-first can now be a function to be
489 called to position point.
490
491 ** The user can now decide which extra headers should be included in
492 summary buffers and NOV files.
493
494 ** `gnus-article-display-hook' has been removed.  Instead, a number
495 of variables starting with `gnus-treat-' have been added.
496
497 ** The Gnus posting styles have been redone again and now works in a
498 subtly different manner.
499
500 ** New web-based backends have been added: nnslashdot, nnwarchive
501 and nnultimate.  nnweb has been revamped, again, to keep up with
502 ever-changing layouts.
503
504 ** Gnus can now read IMAP mail via nnimap.
505
506 \f
507 * For older news, see Gnus info node "New Features".
508
509 ----------------------------------------------------------------------
510 Copyright information:
511
512 Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
513
514    Permission is granted to anyone to make or distribute verbatim copies
515    of this document as received, in any medium, provided that the
516    copyright notice and this permission notice are preserved,
517    thus giving the recipient permission to redistribute in turn.
518
519    Permission is granted to distribute modified versions
520    of this document, or of portions of it,
521    under the above conditions, provided also that they
522    carry prominent notices stating who last changed them.
523 \f
524 Local variables:
525 mode: outline
526 paragraph-separate: "[  \f]*$"
527 end: