]> diplodocus.org Git - nmh/blob - NEWS
lock_file.c: close(2) file descriptor on failure, avoiding leak.
[nmh] / NEWS
1 #
2 # NEWS - Release notes for nmh 1.7
3 #
4
5 Welcome to nmh, the new version of the classic MH mail handling system.
6 It's been over three years since the last release of nmh, and there have
7 been a number of significant changes since the last release. Long-time
8 MH and nmh uses should read careful the NOTEABLE CHANGES section, as there
9 are some significant changes to nmh behavior. Otherwise, please see the
10 README and INSTALL files for help on getting started with nmh.
11
12 ---------------
13 NOTABLE CHANGES
14 ---------------
15
16 The largest notable changes in the 1.7 release are:
17
18 - Complete unification of network security support. All network protocols
19 (currently, POP and SMTP) have been refactored to use a common set of
20 security routines. This means all protocols support all SASL mechanisms
21 (via the Cyrus-SASL library) and TLS. TLS support has been strengthened
22 to perform certificate name validation and to require TLS 1.1 as a
23 minimum protocol. Also, all protocols can make use of the OAuth2/XOAUTH
24 SASL mechanism, which is supported by gmail.
25 - send(1) now supports adding switches to post(8) based on the address or
26 domain of the email address in the From: header; this more easily allows
27 users to support multiple identities.
28 - A generic facility for passing arguments to filter programs in repl(1)
29 by use of the -convertargs switch.
30 - Native support for the manipulation of iCalendar requests; see mhical(1)
31 for more details.
32
33 ------------
34 NEW FEATURES
35 ------------
36
37 The following are new features for the 1.7 release of nmh:
38
39 - When building from source, configure will derive ${prefix} from an existing
40 nmh installation if it finds one in your $PATH.
41 - Added welcome message when nmh detects that its version changed.
42 - The default locations for configuration files and support binaries
43 have been changed. Configuration files now install into ${sysconfdir}/nmh,
44 and support binaries are placed in ${libexecdir}/nmh. If you are upgrading
45 an existing installation you should look for old configuration files in
46 ${sysconfdir} and merge any local customizations into the new files in
47 ${sysconfdir}/nmh, then remove the old files. ${libdir} will also contain
48 obsolete support programs that should be removed.
49 - All TLS connections now perform certificate validation (including hostname
50 matching) by default; can be disabled on a per-application basis.
51 - post now defaults to port 587 on 'smtp' message submission.
52 - A value of 0 for the width switch of scan(1), inc(1), ap(1), dp(1),
53 fmttest(1), and mhl(1) now means as many characters as the format
54 engine can produce [Bug #15274]. That amount is limited by internal
55 buffers.
56 - If a component has trailing whitespace, e.g., body:component="> ",
57 mhl now trims that whitespace off when filtering blank text lines.
58 - An "rtrim" flag has been added to mhl to remove any trailing
59 whitespace from filtered text lines. A corresponding "nortrim" flag
60 has also been added.
61 - Added getmymbox and getmyaddr mh-format(5) function escapes.
62 - New -[no]changecur, -fixtype, -decodetypes, and -[no]crlflinebreaks switches
63 have been added to mhfixmsg(1).
64 - mhfixmsg now removes an extraneous trailing semicolon from header
65 parameter lists.
66 - Added -convertargs switch to repl(1), to pass arguments to programs
67 specified in the user's profile or mhn.defaults to convert message
68 content.
69 - Added mhical(1), to display, reply to, and cancel iCalendar (RFC 5545)
70 event requests.
71 - Added multiply mh-format(5) function.
72 - "mhparam bindir" prints the path to the directory containing the public
73 executables (${bindir}).
74 - New "-prefer" switch for mhshow (and mhlist and mhshow), to allow specifying
75 the preferred content types to show, if present in a multipart alternative.
76 - mh-format now has %(kilo) and %(kibi) functions, to allow printing
77 numbers with SI or IEC quantities, e.g. "10K", "2.3Mi".
78 - Support for the -sendmail flag to send/post to change the sendmail
79 binary when using the sendmail/pipe MTS.
80 - Added support to send(1) to specify switches to post(1) based on address or
81 domain name in From: header line in message draft.
82 - post(8) -snoop now attempts to decode base64-encoded SMTP traffic.
83 - folder(1) -nocreate now prints a warning message for a non-existent folder.
84 - mhfixmsg(1) now allows -decodetext binary, though 8bit is still the default.
85 - inc(1) and msgchk(1) now support TLS encryption natively.
86 - All network protocols support the XOAUTH authentication mechanism.
87 - Support for SMTPUTF8 (RFC 6531) has been added. mhshow(1) already supported
88 RFC 6532, assuming all 8-bit message header field bodies are UTF-8 and use
89 of a UTF-8 locale.
90 - mhfixmsg now replaces RFC 2047 encoding with RFC 2231 encoding of name and
91 filename parameters in Content-Type and Content-Disposition headers,
92 respectively.
93 - If a message body contains 8-bit bytes, post(8) uses SMTP 8BITMIME if the
94 server supports it. If not, post fails with a message to the user to
95 encode the message for 7-bit transport.
96 - Fewer lseek(2)s will be used when reading headers in the common case.
97 - ./configure's --enable-debug has been removed; it did nothing.
98 - configure now defaults to enabling each of TLS and Cyrus SASL if the
99 necessary headers and libraries are found.
100 - Moved build_nmh to top-level directory.
101 - Better error reporting for connections to network services.
102
103 ---------
104 BUG FIXES
105 ---------
106
107 - The format scanner no longer subtracts 1 from the width. This has the
108 effect of no longer counting the trailing newline in the output of
109 scan(1), inc(1), and the other programs that rely on the format scanner.
110 - The first character of some very short (less than 4 characters) message
111 bodies is no longer dropped.
112 - Single-character headers can be reliably formatted, etc., instead of
113 apparently being missing.
114 - mhfixmsg now adds a Content-Transfer-Encoding header at the message level,
115 if needed after decoding text parts.
116 - mhbuild now checks whether all text parts need a Content-Transfer-Encoding
117 header, not just those with a character set not specified.
118 - mhbuild no longer parses lines that start with # as directives with
119 -nodirectives.
120 - repl now makes sure that any Fcc header in a replied-to message is not
121 copied into the outgoing draft by default, and that the -fcc switch
122 actually works in the absence of a Fcc header in the replied-to message.
123 - A Content-ID is generated for message/external-body entities as required
124 by RFC 2045, even if -nocontentid is supplied to mhbuild.
125 - post will now expand aliases on a "From" line when doing a BCC [Bug #51098].
126 - scan can now handle empty files without violating an assert [Bug #51693].
127 - An error when writing an error message, e.g. EPIPE, no longer causes
128 recursion until the stack is exhausted.
129
130 -------------------
131 DEPRECATED FEATURES
132 -------------------
133
134 - Support for the MHPDEBUG environment variable is deprecated and will be
135 removed from a future nmh release. Instead, use the -debug switch to pick.
136 - With the move of support binaries from ${libdir} to ${libexecdir}/nmh, the
137 mostly undocumented 'libdir' mhparam(1) component has been replaced by a
138 new 'libexecdir' component. 'libdir' will be removed in a future release.
139
140 -----------------
141 OBSOLETE FEATURES
142 -----------------
143
144 - The undocumented -queue switch to post was deprecated in nmh 1.6, and was
145 removed in this release.
146 - conflict(8) was deprecated in nmh 1.6, and was removed in this release.
147 - mhtest(8) was deprecated in nmh 1.6, and was removed in this release.
148 - msh(1) was deprecated in nmh 1.6, and was removed in this release.
149 - Support in alias files for the the "*" address-group (everyone) was
150 deprecated in nmh 1.6, and was removed in this release.
151 - Support for multiple hostnames in the "servers" entry of mts.conf has
152 been removed.
153 - Support in alias files for expanding aliases based on group membership
154 (=) and primary group (+) has been removed.
155
156 As always, feedback is welcome.
157
158 --
159 The nmh team
160 nmh-workers@nongnu.org
161
162 ----------------------------------------------------------------------------
163
164 #
165 # NEWS - Release notes for nmh 1.6
166 #
167
168 Welcome to nmh, the new version of the classic MH mail handling system.
169 It's been nearly two years since the last release of nmh, and there have
170 been a number of significant changes since the last release. Long-time
171 MH and nmh uses should read careful the NOTEABLE CHANGES section, as there
172 are some significant changes to nmh behavior. Otherwise, please see the
173 README and INSTALL files for help on getting started with nmh.
174
175 ------------
176 NEW FEATURES
177 ------------
178
179 The following are new features for the 1.6 release of nmh:
180
181 - All nmh programs will now warn about multiple profile entries for
182 the same non-null, non-comment component. In previous versions, all
183 but the first were silently ignored.
184 - mhmail now supports all post(8) options, or optionally can use
185 send(1) with all of its options. Its formerly undocumented -resent
186 switch has been documented. And it has new -attach, -headerfield,
187 and -send/-nosend switches.
188 - Default to flock() locking on OpenBSD and Darwin.
189 - Added -directives support to mhbuild(1) to control whether or not
190 mhbuild will honor MIME directives by default. And added support
191 for special #on/#off/#pop directives to control the MIME directive
192 processing state.
193 - Added -messageid switch to send(1) and post(8). This allows
194 selection of the style to use for generated Message-ID and
195 Content-ID header fields. The default localname style is
196 pid.time@localname, where time is in seconds, and matches previous
197 behavior. The random style replaces the localname with some
198 (pseudo)random bytes and uses microsecond-resolution time.
199 - Added -clobber switch to mhstore(1) to control overwriting of
200 existing files.
201 - Added -outfile switch to mhstore(1).
202 - Added -noall/-all switches to sortm(1). sortm -noall requires
203 a messages argument.
204 - $PAGER overrides the compiled-in default pager command.
205 - Added etc/scan.highlighted format file, as an example of how to
206 highlight/colorize the output of scan(1).
207 - inc(1) now supports a -port switch to specify the port used by the
208 POP server.
209 - pick(1) now decodes MIME-encoded header fields before searching.
210 - The VISUAL and EDITOR environment variables are now supported as fallbacks
211 if the user does not configure an editor entry in their profile.
212 - The format engine (mh_format(5)) now properly accounts for multibyte
213 characters when accounting for column widths.
214 - burst(1) now can burst MIME-formatted digests (messages that contain
215 message/rfc822 parts instead of messages formatted with RFC 934).
216 - All proc entries (showproc, moreproc, etc) can now accept entries that
217 contain spaces and shell metacharacters. If found, such entries will
218 either be space-split or processed by /bin/sh.
219 - A new program, fmttest(1) is included to help debug format files. See
220 NOTABLE CHANGES below.
221 - mhshow/mhstore now have support for RFC-2017 (access-type=url) for
222 external message bodies.
223 - Added -retainsequences switch to refile(1).
224 - A new program, mhfixmsg(1), is included to rewrite MIME messages with
225 various transformations. See NOTABLE CHANGES below.
226 - Added -[no]rmmproc switches to rmm(1).
227 - Added support for Content-Disposition header (RFC 2183) to mhstore(1)
228 and mhn(1) when used with -auto.
229 - All nmh commands now support transactional locking for sequence files.
230 See NOTABLE CHANGES below.
231 - There is no longer a per-folder maximum number of sequences.
232 - For the SMTP MTA TLS can now be negotiated at the beginning of the
233 connection with the -initialtls switch.
234 - Messages can now be selected using a relative offset from some other
235 message, or from the start or end of a sequence. See mh-sequence(5).
236 - The -changecur and -nochangecur switches have been added to mhlist(1).
237 - mhbuild(1) can now encode 8-bit message headers using RFC-2047 encoding
238 rules. See NOTABLE CHANGES below.
239 - The whatnow(1) attach feature will determine the content type of an
240 attachment using a program such as file --mime-type, if available at
241 configuration time. If not, it will use mhshow-suffix- entries as
242 before. The -v switch to attach causes it to display the mhbuild
243 directive that send(1) will use.
244 - mhbuild(1) now supports the -auto/-noauto flags (to be used by send(1)
245 when invoking mhbuild automatically).
246 - mhbuild(1) now is automatically run by send, to insure that all outgoing
247 messages have proper MIME formatting. See NOTABLE CHANGES below.
248 - A new header, "Attach", is supported by mhbuild; it is used to replace
249 previous functionality (which by default used a header named
250 Nmh-Attachment). See NOTABLE CHANGES below.
251 - The default Content-Transfer-Encoding for text parts is now 8bit.
252 - mhbuild(1) now supports a selectable Content-Transfer-Encoding
253 - If nmh was configured with iconv(3) support, mhshow will convert, if
254 necessary, the charset of text/plain content to match the user's
255 locale setting. See NOTABLE CHANGES below.
256 - Added support for %{charset} display string escape to mhshow(1).
257 - The MIME parsing and generating routines now support RFC 2231 extended
258 parameter information.
259 - mh-mime(7) now provides an introduction to nmh's MIME handling.
260 - mhshow(1) will now by default display all text content under one pager,
261 and display markers for non-text and non-inline content. The content
262 markers are changeable via mh-format(5). See NOTABLE CHANGES below.
263
264 -----------------
265 OBSOLETE FEATURES
266 -----------------
267 - Changed exit status of each nmh command's -version and -help
268 switches from 1 to 0.
269 - The following environment variables were deprecated in nmh 1.5
270 and removed from this release:
271 MHPOPDEBUG (use -snoop command line switch instead)
272 MM_NOASK (use -nolist and -nopause command line switches instead)
273 NOMHNPROC (use -nocheckmime command line switch instead)
274 FACEPROC (undocumented faceproc feature removed)
275 - Changed repl and dist default to -noatfile. The default of -atfile
276 was deprecated in nmh 1.5. If there are no requests to maintain
277 -atfile, it will be removed in the future.
278 - The undocumented -queue switch to mhmail has been removed.
279 - spost(8) has been merged into post(8). Its functionality is enabled
280 by selecting the sendmail/pipe mail transport method, described in
281 the mh-tailor(5) man page. The spost -noalias, -backup/-nobackup,
282 -push/-nopush, and -remove/-noremove switches are not supported by
283 post. Note that spost did not support -whom or Dcc, and neither
284 does post when using sendmail/pipe. And spost would expand blind
285 aliases and send them in the message; post with sendmail/pipe
286 refuses to do that. For backward compatibility, spost has been
287 replaced by a simple shell script that exec's post -mts
288 sendmail/pipe. See NOTABLE CHANGES below.
289 - Support for the undocumented and deprecated --enable-nmh-debug configure
290 flag has been removed.
291 - Support for encoding some characters designated as EBCDIC-unsafe
292 via the -ebcdicsafe and -noebcdicsafe switches to mhbuild has
293 been removed.
294 - The configure flag --with-pager has been removed; the default pager
295 is now hardcoded as "more". Users are still free to override the
296 default using the PAGER environment variable or entries in .mh_profile.
297 - The configure flag --with-editor has been removed; the fallback editor
298 if none is configured is "vi".
299 - The support for the undocumented NOPUBLICSEQ preprocessor definition
300 to disable public sequence support has been removed.
301 - Support for the -normalize and -nonormalize switches to the ali(1) and
302 ap(8) commands has been removed.
303 - "make install" no longer strips executables. Use "make install-strip"
304 instead.
305 - The environment variable MM_CHARSET to indicate the native character
306 set is no longer supported. The native character set will be solely
307 determined by the locale settings.
308 - Temporary files are stored in the first non-null location of
309 {MHTMPDIR environment variable, TMPDIR environment variable, MH Path}.
310 They are no longer be stored in the location specified by the TMP
311 environment variable.
312 - Instead of printing PostScript attachments, by default, from mhshow,
313 try to find a suitable viewer.
314 - Support for parallel display of multipart/parallel content has been
315 removed from mhshow; all multipart content will be displayed in
316 serial.
317 - Support for -pause/-nopause switches on mhshow has been removed.
318
319 -------------------
320 DEPRECATED FEATURES
321 -------------------
322 - The undocumented -queue switch to post is deprecated/obsolete
323 and will be removed in the next release. It supports the
324 SMTP XQUE verb, which is obsolete according to
325 http://smtpfilter.sourceforge.net/esmtp.html
326 - conflict(8) is deprecated and will be removed from the next release.
327 - mhtest(8) is deprecated and will be removed from the next release.
328 - msh(1) is deprecated and will be removed from the next release.
329 - Support in alias files for the the "*" address-group is obsolescent
330 and will be removed in a future release.
331
332 ---------
333 BUG FIXES
334 ---------
335
336 - Replaced utilities that operate on pbm files with those that operate
337 on pnm files in etc/mhn.defaults [Bug #15152].
338 - Removed obsolete BUGS section at end of rcvstore(1) man page [Bug #4361].
339 - Fixed -nocc me doesn't account for Alternate-Mailboxes [Bug #36635].
340 - Propagate Mail-Followup-To [Bug #5571].
341 - "mark -sequence cur -delete all" now works for cur as well as any
342 other sequence, to allow clearing of the current message indication.
343 - The first alias contained in a blind list is now expanded. The
344 mh-alias(5) man page was updated to show that blind lists must not
345 be terminated with, or contain, a trailing semicolon [Bug #15604].
346 - Fixed sendfiles(1) to always provide a From: address. Also, updated
347 its switches.
348 - Fixed pick(1) to properly unfold multiple-line header fields by
349 removing newlines instead of replacing them with spaces [Bug #15215].
350 - Removed the artificial limit of 1000 messages at a time for rmmproc.
351 - Fixed decoding of header fields when they contain a character that
352 can't be converted.
353 - post(8) -sasl now honours username in .netrc [Bug #23168]. whom(1),
354 send(1), inc(1), and msgchk(1) also benefit from this fix. And, nmh
355 now supports specification of any valid filename in place of
356 $HOME/.netrc.
357 - Added quoting of local part of invalid address in message being
358 replied to [Bug #26780].
359 - Fix segmentation faults for %(putlit) and %(zputlit) format escapes when
360 the "str" register was NULL.
361 - Encode and decode text MIME types with canonical line breaks properly.
362 - mhstore(1) now obeys its -noverbose switch.
363 - Properly report the input filename when mhbuild encounters errors.
364 - Set the content-transfer-encoding properly when attaching message/rfc822
365 content.
366
367 ---------------
368 NOTABLE CHANGES
369 ---------------
370
371 The biggest changes in this release are in the arena of MIME handling.
372 Specifically relating to MIME composition and display. On the
373 composition front, mhbuild(1) will now automatically be run by send(1)
374 for all drafts. Specifically, mhbuild is now run with the new -auto
375 flag, which will suppress the processing of mhbuild directives and cause
376 mhbuild to silently exit if the draft is already MIME-formatted. When
377 invoking mhbuild manually via the "mime" command at the WhatNow? prompt,
378 mhbuild will behave as before and process mhbuild directives.
379
380 In both cases (automatic and manual invocation) mhbuild will encode email
381 headers according to RFC-2047 rules. Mhbuild also will use RFC 2231
382 encoding rules for MIME parameters when appropriate. In addition, the
383 attach system has been substantially reworked; the new header name is
384 now "Attach" (to better align with other MUA behavior) and cannot be
385 changed by the end-user. The existing "attach" command simply adds
386 the filename(s) to the draft in new Attach: headers, and the actual
387 file processing is done by mhbuild; this attachment processing will
388 take place in either automatic or manual mode.
389
390 On the display front, mhshow(1) will now automatically convert text
391 into the user's native character set using iconv, if nmh was built
392 with iconv support. Also, mhshow will now by default only display
393 text content that was not marked as an attachment. By default all
394 displayed content wll be run under one pager, as opposed to individual
395 pagers for each part as was in the past. Non-displayed parts will be
396 indicated using a marker string, which can be customized by a new
397 mh-format(5) string.
398
399 All nmh utilities now understand RFC 2231-encoded MIME parameters and
400 will automatically convert the encoded parameters into the native
401 character set, when appropriate (again, assuming nmh was built with
402 iconv support).
403
404 In other changes, sequence files are now locked using transactional
405 locks: locks that are held across sequence file reading, modification,
406 and writing. The locking algorithm used for spool files and nmh data
407 files is now runtime configurable.
408
409 For people that struggle with mh-format(5) files, a new utility for testing
410 them has been developed: fmttest(1). It includes the ability to trace the
411 execution of format instructions.
412
413 For users that wish to use Unix utilities on their mail, a new utility
414 to transform MIME messages to more easily-digestable format is now
415 available: mhfixmsg(1). It supports a number of options to control
416 the message transformation.
417
418 For users of spost(8), the support for spost has been rolled into post(8)
419 under a new sendmail/pipe MTS. A shell script emulating the old behavior
420 of spost has been provided.
421
422 As always, feedback is welcome.
423
424 --
425 The nmh team
426 nmh-workers@nongnu.org
427
428 ----------------------------------------------------------------------------
429
430 #
431 # NEWS - Release notes for nmh 1.5
432 #
433
434 Welcome to nmh, the new version of the classic MH mail handling
435 system. Long-time MH and nmh users should read carefully the NOTABLE
436 CHANGES section, as there are some subtle but significant changes
437 to the way nmh now behaves. Otherwise, please see the README and INSTALL
438 files for help on getting started with nmh.
439
440 ------------
441 NEW FEATURES
442 ------------
443
444 The following are new features for the 1.5 release of nmh.
445
446 - Improved performance for TLS encryption of the SMTP protocol.
447 - MH-E and POP support are now always compiled in.
448 - The selection of a locking directory for dot-locking files is now
449 controllable via configure.
450 - fileproc and mhlproc mh-profile are now obeyed by send, rcvdist,
451 and whatnow.
452 - New mh-format instructions have been implemented: %(putlit),
453 %(concataddr), %(myhost), %(myname), %(localmbox). See mh-format(5)
454 for more details.
455 - Nmh's idea of the local mailbox is now configurable via a new profile
456 entry, Local-Mailbox. See mh-profile(5) for more details.
457 - comp, forw, and dist now process all component templates through
458 mh-format(5), and now all support new command line arguments -from,
459 -to, -cc, -fcc, and -subject.
460 - burst(1) now supports any valid message delimiter according to RFC 934.
461 - post(8) now requires a From: header in all drafts that it processes;
462 see NOTABLE CHANGES below for more details.
463 - post(8) can now explicitly control the SMTP envelope address either via
464 the Sender: header or the new Envelope-From: header.
465 - The -attach option is now the default for send (using the header
466 Nmh-Attachment) and -attachformat 1 is the default attachment type.
467 - repl and dist now support new switches -atfile and -noatfile to control
468 the creation of the ./@ link to the message being replied or
469 redistributed. The current default is -atfile.
470 - Support (if available) for readline editing and filename completion at
471 the WhatNow? prompt.
472 - Support for using an external command to filter the body of a message
473 through in mhl. See mhl(1) for more details, specifically, the
474 "format" keyword, the "formatproc" entry in mh-profile(5), and the
475 -fmtproc switch for mhl and repl.
476 - Preliminary support for improved MIME handling when replying to messages!
477 Yes, a long requested feature has a solution. A perl script
478 called replyfilter is available; it is designed to act as a mhl
479 external filter to process MIME messages in a more logical way.
480 It is available in $(srcdir)/docs/contrib/replyfilter or is
481 typically installed as $(prefix)/share/doc/nmh/contrib/replyfilter.
482 See the comments at the top of replyfilter for usage information;
483 it will likely require some adjustment for your site. replyfilter
484 requires the MIME-Tools and MailTools perl modules.
485
486 ----------------------------
487 OBSOLETE/DEPRECATED FEATURES
488 ----------------------------
489
490 The following features have either been removed completely or marked
491 as officially deprecated for removal in a future release of nmh.
492
493 - The creation of the ./@ link to the message being replied or
494 redistributed is deprecated; -noatfile will be the default in the
495 next release. If there are no requests to maintain -atfile it
496 will be removed in a future release.
497 - Old code enabled by the UCI preprocessor definition has been removed.
498 - All configuration options that were formerly only adjustable by editing
499 config.h have either been moved into configure or removed completely.
500 - Support for the built-in ftp client (used when dealing with external-body
501 message parts in MIME messages) has been removed.
502 - The following environment variables are marked as obsolete/deprecated.
503 Support for them will be removed from the next nmh release:
504 MHPOPDEBUG (use -snoop command line switch instead)
505 MM_NOASK (use -nolist and -nopause command line switches instead)
506 NOMHNPROC (use -nocheckmime command line switch instead)
507 FACEPROC (undocumented faceproc feature to be removed)
508 - The hostable option of mts.conf is no longer needed and has been removed.
509
510 ---------------
511 NOTABLE CHANGES
512 ---------------
513
514 The largest change is that post(8) now requires a From: header in all drafts
515 that it processes.
516
517 The impetus for this change has been the evolution of email and client
518 systems. When MH was first developed the norm was to have tightly managed
519 clients that were part of the same domain as a user's email address. This
520 is no longer a valid assumption, and the algorithm used by nmh to determine
521 the user's local mailbox is no longer a reasonable default.
522
523 Unfortunately, the way that nmh uses the user's local mailbox used to happen
524 very late in the message process; it was handled by post during message
525 submission. If no From: header exists in the current draft post would
526 insert one based on it's idea of the local mailbox, which was frequently
527 wrong.
528
529 After a long discussion within the nmh development community, it was
530 decided that the only reasonable way forward was to move the local mailbox
531 handling up a level and place it under more direct control of the end
532 user. post(8) no longer will try to determine the local mailbox name;
533 it will take that information from the draft message. Thus a From: header
534 is now required in all drafts.
535
536 As part of these changes, all message composition utilities now process
537 their component files using mh-format. All of the default component
538 files have been modified to include a From: header in them; this will
539 give the user a chance to see nmh's idea of the local mailbox and modify
540 it if desired. The new mh-profile(5) entry Local-Mailbox can be used
541 to adjust the local mailbox name if the system default is not appropriate.
542
543 So how should end-users adapt to these changes? Here are some suggestions:
544
545 1) If you use the default component files, everything should basically work
546 the same for you. You should see a From: header in the drafts of your
547 messages. If the address you see in the From: header is incorrect
548 you can change it via the Local-Mailbox profile entry. You can also
549 use the -from switch to change it on a per-command basis.
550
551 2) If you have custom component files that include a From: header or
552 you perform custom processing on drafts that end up placing a From:
553 header in the draft message, everything should work as before.
554
555 3) If you have custom component files that do NOT include a From: header
556 then you will have to adapt then to include a From: header. You
557 can either simply hard-code the correct From: header or use the
558 default component files as a guide (see mh-format(5) for more
559 details, specifically the %(localmbox) function).
560
561 The other significant change is the support for filters in mhl. Included
562 in the distribution is replyfilter, a filter designed for sane processing
563 of MIME messages during replies. Since this isn't as integrated into
564 nmh as we would prefer, it's included in the contrib directory as an
565 optional component. Please try it out and give us feedback.
566
567 --
568 The nmh team
569 nmh-workers@nongnu.org
570
571 ----------------------------------------------------------------------------
572
573 #
574 # NEWS - Release notes for nmh 1.4
575 #
576
577 This releases contains numerous bugfixes and a number of new features.
578 The new features include:
579
580 - SASL security layers (encryption) are now supported for the SMTP MTA.
581 - TLS is now supported for the SMTP MTA.
582 - inc can now incorporate mail from Maildir drops.
583 - You can now select the SMTP server and port from either "send" or a
584 user's mh_profile (you could always select the server; that option is
585 now documented). These are available via the -server and -port
586 switches.
587 - All networking code has been modified to use the new networking APIs
588 (getaddrinfo and friends). All networking code (with the exception of
589 the built-in ftp client) now supports IPv6.
590 - New commands 'new', 'fnext', 'fprev', and 'unseen' for showing folders
591 with unseen mail (or mail in any specified sequence), changing to next
592 such folder, changing to previous such folder, and scanning all such
593 folders, respectively. This is based on Luke Mewburn's 'new':
594 http://www.mewburn.net/luke/src/new
595 - nmh will no longer attempt to install a mhn.defaults file that causes
596 mhshow to open its own xterms.
597
598 A large chunk of old code has been garbage collected. Specifically,
599 support for APOP, RPOP, NNTP (including bboards) and MPOP is now gone.
600 Also gone is support for prefixing a \01 in the "servers" entry in
601 mts.conf to iterate over all servers on a named network.
602
603 ----------------------------------------------------------------------------
604
605 #
606 # NEWS - Release notes for nmh 1.3
607 #
608
609 It's been over two years since the 1.2 release; but the changes here are
610 mostly minor; largely bugfixes.
611
612 You should note that we have changed the default configuration to allow
613 all supported forms of address masquerading. For more details please see
614 the --enable-masquerade option to configure, and the mh-tailor and post
615 man pages.