diff options
Diffstat (limited to 'NEWS')
-rw-r--r-- | NEWS | 1078 |
1 files changed, 0 insertions, 1078 deletions
@@ -1,1078 +0,0 @@ -GNU mailutils NEWS -- history of user-visible changes. 2008-03-02 -Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, -2008 Free Software Foundation, Inc. -See the end of file for copying conditions. - -Please send mailutils bug reports to <bug-mailutils@gnu.org>. - - -Version 1.9.90: - -* New configuration file format. - -* Programs - -** Debugging and online help - -Each Mailutils utility understands two additional command line -options: - - --debug-level=LEVEL Set Mailutils debugging level. - --debug-line-info Show source info with debugging messages. - -(see also `** Global debugging and verbosity settings.', below) - -The programs using configuration file facility also understand the ---config-help command line option. This option prints on the standard -output the detailed description of configuration file statements that -affect the given program. - -** URL parameters. - -Additional mailbox URL parameters `type', `user' and `param' can -appear in any local URLs. - -** MAIL and FOLDER environment variables. - -These variables are consulted only if mail-spool directory is not -explicitely set either in the configuration files or in the command -line. This is different from the previous versions. - -** New utility `maidag' - -Maidag is a MAIl Delivery AGent. It is a general-purpose MDA able to -run in both traditional and LMTP mode and to deliver mails to various -mailbox formats. These formats, among others, include remote+smtp and -remote+sendmail (see `New mailbox types.', below), which are -equivalent to forwarding a message over SMTP. Thus, maidag supercedes -both `mail.local' and `mail.remote' (which are still included for -backward compatibility). Maidag is also able to process incoming -messages using Sieve or Scheme scripts and, based on results of this -processing, to take a decision on whether to actually deliver and -where to deliver them. - -** Comsat - -The `comsat' utility is able to notify about messages delivered to -a mailbox of any `local' type, i.e.: UNIX mailbox, MH and Maildir. -This is implemented using quick access mode. See `Quick access to a -message', below. - -The communication protocol has been modified to make this possible. -The traditional comsat protocol is supported as well. - -** New Sieve action `pipe' - -Syntax: pipe [:envelope] <command line: string> - -This action executes the given <command line> and pipes the message to -its standard input. If the :envelope tag is given, the envelope of the -message is piped as well. - -** Client SMTP STARTTLS support - -** Support for new protocols: POPS (pops://) and IMAPS (imaps://), - -** LDAP support (authentication and authorization). - -** Support for TCP wrappers. - -The support for TCP wrappers is added to the daemon programs (imap4d, -pop3d, maidag). The support is controlled at compile time by the ---with-tcpwrappers command line options to configure. By default, it -is enabled if libwrap presence is detected. A set of configuration -file statements are provided for fine tuning TCP wrappers at run-time. - -** pop3d and imap4d ports. - -Pop3d and imap4d can be configured to listen on several different -IP addresses/ports (or even local sockets) simultaneously. - -** pop3d: Fixed APOP handling. - -** imap4d supports PREAUTH mode. - -Three mechanisms are provided for authentifying the connection in -PREAUTH mode: - - 1. stdio - PREAUTH mode is enabled automatically if imap4d is started - from command line in interactive mode (-i command line - option). The current login name is used as the user name. - - 2. ident - The remote machine is asked about the requester identity - using the identification protocol (RFC 1413). Both plaintext and - DES encrypted replies are understood. - - 3. prog - Imap4d invokes an external program to authenticate the - connection. The command line is obtained from the supplied string, - by expandind the following variables: - - 1) ${client_address} - Remote IP address in dotted-quad notation; - 2) ${client_port} - Remote port number; - 3) ${server_address} - Local IP address; - 4) ${server_port} - Local port number. - - If the connection is authenticated, the program should print the - user name, followed by a newline character, on its standard - output and exit with code 0. - - Otherwise, it shoud exit with a non-zero exit code. - -* Libraries - -** Diagnostic and debugging functions essentially rewritten. - -A set of debugging macros, MU_DEBUG0 through MU_DEBUG11, is provided. -New functions mu_debug_printf and mu_debug_vprintf allow for flexible -formatting of debugging messages. The mu_debug_t object features -built-in line bufferring. - -The new function mu_debug_check_level(d,l) returns true if the logging -level currently set for debugging object `d' matches that given by -`l'. - -New diagnostics functions are available, among them: - - void mu_diag_vprintf (int level, const char *fmt, va_list ap); - void mu_diag_printf (int level, const char *fmt, ...); - void mu_diag_voutput (int level, const char *fmt, va_list ap); - void mu_diag_output (int level, const char *fmt, ...); - -A new header file, mailutils/diag.h, declarations of these and other -related functions. - -See documentation (FIXME: Chapter?) for more information. - -The functions mu_error and mu_verror are shortcuts for -mu_diag_output (MU_DIAG_ERROR, ...) and mu_diag_voutput (MU_DIAG_ERROR, ...), -correspondingly. - -The function mu_error_set_print is deprecated as well as the -mu_error_pfn_t type. They are, however, still supported. The following -approach is recommended to use instead of mu_error_set_print: - - mu_diag_get_debug (&debug); - mu_debug_set_print (debug, new_printer, NULL); - -** Header iteration - -New function `mu_header_get_iterator' returns an iterator for this -header object. Thus, the following code loops over all headers: - - mu_iterator_t itr; - mu_header_get_iterator (header, &itr); - for (mu_iterator_first (itr); !mu_iterator_is_done (itr); - mu_iterator_next (itr)) - { - const char *hdr, *val; - mu_iterator_current_kv (itr, - (const void**)&hdr, - (void**)&val)); - /* Do something with hdr and val */ - } - mu_iterator_destroy (&itr); - -** Global debugging and verbosity settings. - -These settings provide default values for mu_debug_t objects created -by various library objects. The following functions are provided for -dealing with global debugging level: - - unsigned mu_global_debug_level (const char *object_name); - int mu_global_debug_set_level (const char *object_name, unsigned level); - int mu_global_debug_clear_level (const char *object_name); - -** New function mu_mailbox_sync - -It supercedes mu_mailbox_save_attributes, which is now considered -deprecated. - -** Observable event handling - -Each event type is associated with an event-specific data -pointer. This pointer is passed to event handling functions along with -an opaque function-specific data pointer. This affects the following -functions: - - mu_observer_set_action - mu_observer_set_action_data (New function) - mu_observable_notify - -New type of event, MU_EVT_MESSAGE_APPEND, is signalled whenever a new -message is appended to the mailbox. - -** Quick access to a message - -A set of functions are provided for so-called `quick access' to mail -messages. - -Quick access is used when an application needs to quickly read one -message from the mailbox. In particular, this mode is used by comsat. - -To use quick access functions, the mailbox must be opened with flags -MU_STREAM_READ|MU_STREAM_QACCESS. The function -mu_mailbox_quick_get_message can then be used to retrieve the message: - - int mu_mailbox_quick_get_message (mu_mailbox_t mbox, - mu_message_qid_t qid, - mu_message_t *pmsg); - -The message is identified by the second argument, qid. - -The function mu_message_get_qid can be used to retrieve -mu_message_qid_t identifier for a message: - - int mu_message_get_qid (mu_message_t msg, mu_message_qid_t *pqid); - -** New `aget' and `sget' accessors for mu_url_t - -The following new accessors are provided: - -extern int mu_url_sget_scheme (const mu_url_t, const char **); -extern int mu_url_aget_scheme (const mu_url_t, char **); - -extern int mu_url_sget_user (const mu_url_t, const char **); -extern int mu_url_aget_user (const mu_url_t, char **); - -extern int mu_url_sget_passwd (const mu_url_t, const char **); -extern int mu_url_aget_passwd (const mu_url_t, char **); - -extern int mu_url_sget_auth (const mu_url_t, const char **); -extern int mu_url_aget_auth (const mu_url_t, char **); - -extern int mu_url_sget_host (const mu_url_t, const char **); -extern int mu_url_aget_host (const mu_url_t, char **); - -extern int mu_url_sget_path (const mu_url_t, const char **); -extern int mu_url_aget_path (const mu_url_t, char **); - -extern int mu_url_sget_query (const mu_url_t, const char **); -extern int mu_url_aget_query (const mu_url_t, char **); - -int mu_url_sget_fvpairs (const mu_url_t, size_t *, char ***); -int mu_url_aget_fvpairs (const mu_url_t, size_t *, char ***); - -** ACL - -A set of functions implements general-purpose access control lists. -They are declared in the header file mailutils/acl.h. Currently, -these functions support IPv4 and UNIX address families. Support for -more address families, in particular IPv6, will be added in future. -The following actions can be defined in ACLs: - - 1. mu_acl_accept - Accept connection. - 2. mu_acl_deny - Deny connection. - 3. mu_acl_log - Issue a log message, using mu_diag.* - diagnostics functions. - 4. mu_acl_exec - Execute an external program. - 5. mu_acl_ifexec - Execute an external program and accept or - deny connection depending on its exit code. - -** KWD - -A set of functions is provided for translating string values to -integer tokens and vice-versa using simple translation tables. -These functions are declared in the header file mailutils/kwd.h. - -** Vartab - -A set of functions is provided for performing variable expansion in -strings. These functions are declared in the header file -mailutils/vartab.h. - -** Incompatible change in mu_url_get_.* return value - -Any mu_url_get_.* accessors return MU_ERR_ENOENT if the corresponding -field is not present in the object. Previous versions in that case -returned 0 and stored empty string in the output buffer. - -** New mailbox types. - -Two new mailbox types, "remote+smtp" and "remote+sendmail", are -supported. These are `append-only' mailboxes, i.e. the only operation -that can be done over them is mu_mailbox_append_message. E.g., -appending to the URL `remote+smtp://127.0.0.1:24' is equivalent to -sending a message using mailer `smtp://127.0.0.1:24'. - -** New argcv functions. - -- int mu_argcv_get_np (const char *command, int len, - const char *delim, const char *cmnt, - int flags, - int *pargc, char ***pargv, char **endp); - -This function is an alternative entry point to -mu_argcv_get/mu_argcv_get_n functions. The resulting argv will contain -non-whitespace delimiters only if flags contains the bit -MU_ARGCV_RETURN_DELIMS. - -- void mu_argcv_remove (int *pargc, char ***pargv, - int (*sel) (const char *, void *), void *); - -Removes from pargc/pargv all elements for which the sel function -returns true. - -** New registry functions. - -- int mu_registrar_lookup_url (mu_url_t url, int flags, - mu_record_t *precord, int *pflags); - -** Fixed parsing of URLs similar to file:///a/b. - -It is parsed as an absolute file name `/a/b'. - -Previous versions incorrectly understood such an URL as `a/b' -(relative file name). - -** Remove v0.6 compatibility layer. - -** Function mu_mail_directory is removed. - -** New function mu_mailbox_url. - - -Version 1.2: - -* GPLv3 - -The programs in this release are licensed under the GNU General Public License -version 3. The libraries are covered by the GNU Lesser General Public License -version 3. - -* `libmailbox' library - -** mu_stream_wait and mu_fd_wait allow to wait for exceptional conditions. - -** maildir and mh repositories are created if MU_STREAM_CREAT flag is supplied. - -** Fix coredump in argcv, which was triggered by input line consisting of -a single double-quote character. - -** Fix inconsistency in decoding MIME messages: the CRLF preceding the -encapsulation line is conceptually attached to the boundary, as -requested by RFC 1521. - -** Three kinds of accessors. - -Each MU object has now three kind of accessors. The `sget' accessor -returns a pointer to the immutable memory allocated inside the object -and holding its string representation. The `aget' accessor allocates -new memory chunk, copies there the string representation of the object -and returns the pointer to the allocated memory. Finally, the `get' -accessor copies the string representation to the character buffer -supplied by the caller. For example: - - const char *s; - mu_header_sget_value (hdr, "From", &s); - - char *s - mu_header_aget_value (hdr, "From", &s); - [...] - free (s); - - char buf[SIZE]; - size_t size; - mu_header_get_value (hdr, "From", buf, sizeof buf, &size); - -** RFC2822 Headers. - -The RFC 2822 headers support has been rewritten from scratch. The -accessor functions are able to return a given header instance in case -of multiple headers, something which was impossible in the earlier -Mailutils releases. These new functions are given identifiers, ending -with `_n', for example: - - int mu_header_sget_value_n (mu_header_t header, - const char *name, int n, const char **retval); - -The `n' argument gives the ordinal number (1-based) of the header to return. -For example, to get the topmost 'Recieved' header: - - mu_header_sget_value_n (header, "Received", 1, &str); - -To count headers from the bottom up, pass negative value of `n', -e.g. to get the last 'Recieved' header: - - mu_header_sget_value_n (header, "Received", -1, &str); - -For backward compatibility, traditional header accessors are still -provided, being implemented as macros that expand to the -corresponding `_n' style accessors. - -Important note: `mu_header_aget_value' does not allocate any memory -if the requested header was not found. This differs from its behavior -in previous releases, where it used to return a pointer to an empty -string ("") in that case. - -New functions are provided for adding and replacing headers: - -- int mu_header_prepend (mu_header_t header, const char *name, const char *val) - -Prepends header `name: val' to the existing headers; - -- int mu_header_append (mu_header_t header, const char *name, const char *val) - -Appends header `name: val' to the existing headers - -- int mu_header_insert (mu_header_t header, const char *name, const char *val, - const char *ref, int num, int flags) - -Inserts header `name: val'. The insertion position is determined by -the last three arguments: - - -- If flags is MU_HEADER_REPLACE and the header with the same name - exists, it is replaced by the new header. Otherwise: - -- If ref == NULL, the header is added before the existing ones; - -- If ref is not NULL, the new header is inserted after `num'th - occurrence of the header named `ref'. If flags is - MU_HEADER_BEFORE, it is inserted before that occurrence. - -** New functions `mu_address_set_local_part', `mu_address_set_domain', -`mu_address_set_route', `mu_address_set_email' - -* The `mail.local' utility - -The program can be run by a non-privileged user. Thus, it can be used with -`fetchmail' and similar utilities. - -Any changes to message headers done by Sieve filters are reflected in -the delivered message. - -* The `mail' utility: - -Fix bugs in `pipe' command: the cmd variable setting -and single-argument invocation were handled incorrectly - -Fix coredump in `send' command. - -** Empty messages - -The handling of empty messages by the `mail' utility is controlled by the -bollean variable `nullbody'. If it is set (the default), the message -is sent and the warning ``Null message body; hope that's ok'' is -issued. This is compatible with other mail implementations. The exact -message displayed in this case is set by `nullbodymsg' variable. - -If `nullbody' is unset, the message is silently ignored. This is -useful, in particular, in crontab files. - -* The `readmsg' utility. - -Improve compatibility with elm's implementation. In particular -w -'From_' will now output `From ' markers. If the underlying mailbox -format does not contain those, `readmsg' will try to construct them -from the available data. - -* The `pop3d' utility. - -New options `--bulletin-db' and `--bulletin-source' implement bulletin -facility. - -* MH changes - -** sortm uses stable sort algorithm. -** send supports `--split'. The new option `--chunksize' allows to -set size of chunks to split the message into. The default size is -48032 (632 lines, each of 76 bytes). - - -* Support for old DBM has been withdrawn. - - -Version 1.1: - -* mail: Implement ^ and $ commands - -* Add support for Berkeley DB 3 and 4 - -* comsat - -The syntax of echo command changed. Now it is more shell-like: - -echo -echo New mail for \a$u@$h: -echo --- -echo From: $H{From} -echo Subject: $H{Subject} -echo $B(,5)--- - -** Bug fixes -* Fix build without Guile -* mail core dumped on tab expansion of `cd x' -* Print "-- \n" before ~a expansion in mail -* Fix memory problems in mail's `decode' command -* Fix endless loop in libsieve that was triggered by using a tag without the -arguments it requires. -* Fix unfolding - - -Version 1.0: - -Official release. This is the first stable release since 0.6. For a -complete list of changes, please see the entries below. - - -Version 0.6.95: - -* New functions: -** Two new functions (mu_tcp_stream_create_with_source_ip and -mu_tcp_stream_create_with_source_host) allow to create TCP connections -from the given source address. - -* Bugfixes: -** Fix handling of Fcc headers in mailers -** Fix several inconsistencies in `mh/folder' to make it compatible with -RAND and nmh implementations. In particular, `folder -all +name' -(`folders +name') is now working as expected. -** MH programs create directory hierarchies if requested to. -** `mail' correctly handles empty mailboxes (it used to display garbage in -place of the message count). -** Fix RFC 2047 filters: do not stop translating until the buffer is drained. -** Fix option handling in guimb: remove leftover optind usage. - - -Version 0.6.94: - -* Add support for Berkeley DB 3.x and 4.x -See the description of --with-berkeley-db option in the README file. - -* Add support for Guile 1.8.x - -* The module mailutils.scm is now defined as (mailutils mailutils). Please -change your (use-modules) statements accordingly. - -* Scheme modules can now be installed in the site-wide Guile directory. -See the description of --with-guiledir option in the README file. - -* Bugfixes: -** Fix handling of file names containing whitespace characters in imap4 server -and library. -** frm: Fix coredump on empty From headers. -** folder: If a +folder is given along with the -all switch, folder will, in -addition to setting the current folder, list the top-level subfolders -for the current folder (with -norecurse) or list all sub-folders under -the current folder recursively (with -recurse). This behavior is -compatible with nmh and rand implementations. -** rmf: Fix coredump when invoked without arguments. -** send: rename draft file after sending it. -** All mh utilities: create nested directories, if required. -** Correctly handle comma-delimited folder lists in Fcc headers. -** A decoder stream correctly handles unfinished input strings. - - -Version 0.6.93: - -* The library namespace is optimized. Now all global identifiers begin -with mu_. -NOTE: This is incompatible change. - -Programs using old API can still be compiled, using one of the -following approaches. If the program includes <mailutils/mailutils.h>, -define the symbol MU_COMPAT before including it (or invoke cc with --DMU_COMPAT option). Otherwise, include file <mailutils/compat.h>. - -* Main library is renamed to libmailutils -NOTE: This is incompatible change, unless you use mailutils-config to -obtain loader options (which is recommended, anyway). - -* Use of '~' character (denoting the user home directory) - -This character is expanded also if it appears after the protocol -specification in a mailbox URL. e.g.: maildir:~/Mail/inbox. - -It is possible to use '~' in mailutils configuration file. - -* New option --mailbox-type - -Use this option to specify the default mailbox type. It is supported -by all utilities that use "mailbox" command line capability (see the -documentation for the list). For example: - - mail --mailbox-type=mh: --file=~/Mail/inbox - -will open ~/Mail/inbox directory as an MH folder. This option is -especially useful in the mailutils configuration file. For example, -adding this line to your mailutils.rc: - -:mailbox --mailbox-type=mh: - -will force all mail utilities to use MH by default. - -* mail: New option --exec (-E) allows to execute arbitrary mail commands -before opening the mailbox. Any number of --exec options can be given. - -** New variables `recursivealiases' and `inplacealiases' control the way -mail aliases are expanded. When `recursivealiases' is set, aliases -will be expanded recursively. When `inplacealiases' is set, alias -expansion takes place before entering compose mode (by default, it is -carried out when exiting compose mode, right before sending the -message). The default is `set recursivealiases noinplacealiases'. - -* imap4d: New option --create-home-dir: If a user logs in and his home -directory does not exist, create it. - -* Changes in MH - -** Context file handling - -Comments and empty lines are allowed in any MH context file -(.mh_profile, .mtstailor etc.) - -Comment is any line whose first non-whitespace character is -'#'. Notice that '#' looses its special meaning when used as a part of -the keyword or a value. - -** send - -Add support for localname and localdomain mtstailor variables. - -New mtstailor variable x-mailer controls whether to add the 'X-Mailer' -header to the message being sent, if it does not contain one. The -value 'yes' means to add the default X-Mailer string, the value -'no' means to ignore it. Any other value is taken as the X-Mailer -identifier to be added to the message. - -** mhn - -In compose mode mhn analyzes Subject: line and, if it contains any -non-printable characters, encodes it in accordance with RFC -2047. Encoding type and charset are taken from the first message -part. They also can be specified in the subject itself using the -following syntax: - - #<encoding=ENC; charset=CSET>CONTENT - -* Bugfixes: -** mail: Fix handling of conditional expressions -** mail: When several recipients were specified, no alias expansion took -place. -** movemail: did not preserve input mailbox if an I/O error happened on the -output one. Debian Bug#344420. -** Fix handling of Alternate-Mailboxes in MH - - -Version 0.6.91: - -* libsieve: New action 'vacation' - -* imap4d: Implemented SASL authentication using LOGIN and PLAIN mechanisms. - -* Plaintext passwords for SASL authentication types can be kept in SQL -database. When used with LOGIN or PLAIN, the passwords may be -encrypted using MySQL password() function. New option ---sql-password-type specifies what kind of password is returned by ---sql-getpass query. Its possible values are: `plain' for plaintext -passwords, `scrambled' for passwords hashed using MySQL algorithm and -`hash' for MD5 or DES hashed passwords (default). - -* mail - -** Improved output of the commands `headers' and `z' - -** Improved POSIX compatibility. -In particular, `next' command now works as described by -POSIX. Following commands change the status of the message to `read': -mbox, pipe, print, top, undelete, visual and decode (a GNU extension). -Implemented following variables: flipr, showto, bang. -The command `touch' does not alter messages that were deleted or saved -to a file. - -** The `decode' command uses `mailcap' extension to display -parts of MIME multy-part messages. By default the built-in mailcap -engine is used. Normally `mail' asks for confirmation before running -an interpreter to display a message part, unless the type of the part -is listed in `mimenoask' mail variable. - -If `metamail' variable is set, it specifies the external program -to be used instead of the built-in engine. Thus, settting - - set metamail="metamail -m mail -p" - -in your ~/.mailrc enables use of the standard `metamail' program -by `decode'. - -Before calling `metamail', the environment variable METAMAIL_PAGER -is set to the value of the variable PAGER. If `mimenoask' mail -variable is set, its value is passed to `metamail' via MM_NOASK -environment variable. - -Unsetting `metamail' variable turns off special interpretation -of MIME parts. - -* from -The `from' utility was rewritten. It is now fully compatible with the -BSD version. - -* frm -Implemented -t (--align) command line option. -Whenever available, `frm' uses BIDI algorithm for display. This -allows for correct display of subject lines written in languages -with right to left script orientation (Arabic, Hebrew). - -* Maildir support -Implemented removal of messages. - -* New SQL driver: odbc - -* New authentication method: radius - -* Ukrainian localization - -* Bugfixes - -** Fixed possible mailbox corruption in imap4d -** imap4d subscribe/unsubscribe was not working -** Fixed displaying mail headers in different languages (mail,frm,from) -** SQL authentication: prevent sql injection attacks -** Fixed bug in the default syslog diagnostic printer -** Fixed potential vulnerabilities: IDEF0954, IDEF0955, IDEF0956, IDEF0957 -** `Imap:' mailboxes (remote mailboxes opened via imap interface) honor -read-only mode. -** Fixed date support in maildir (header fields Date, Envelope-Date and -Delivery-Date). -** Fixed RFC 2047 encoding. -** Fixed folder_list() function. - - -Version 0.6: - -* New features: - -** Both imap4d and pop3d accept new command line option `--tls-required'. - -The option disables any authentication commands until the client party -establishes TLS connection with the server. - -** Pop3d server accepts new option `--delete-expired'. - -This option is to be used together with `--expire'. It enables -automatic deletion of expired messages before closing the -mailbox. Previous versions of pop3d relied on a cron job that -was supposed to purge users' mailboxes, but such usage is extremely -ineffective for mail servers with considerable number of users. - -** The package can be compiled with support for both MySQL and PostgreSQL -simultaneously. Which of the interfaces to use is defined at run time -by --sql-interface option. - -** Mail.local is able to retrieve mailbox quotas from SQL database. - -* movemail: Special mode for interfacing with Emacs (--emacs option) - -* Bug fixes - - -Version 0.5: - -* New features: - -** Autodetection of local folder formats. - -"Local" is a format of mail folder that uses local disk (possibly via -NFS) as its storage medium. Currently mailutils is able to handle -three local formats: UNIX mailbox, MH and Maildir. Usually these are -specified using a corresponding URL prefix. However, if an absolute -path name is given instead of a fully qualified URL, mailutils tries to -autodetect the format of the folder in question and handle it -appropriately (previous versions of mailutils assumed the folder -to be in UNIX mailbox format). - -** movemail: new program - -Moves mail from the user maildrop (remote or local) to the local file. -It supports all mailbox formats, supported by mailutils. - -** Support for "maildir" format. - -** sieve: - -*** Considerably improved debugging diagnostics. -*** New sieve extension tests: - - spamd - An interface to SpamAssassin daemon - list - Test headers, structured as lists of values. - timestamp - Compares headers containing dates. - -** mail -*** Support for -a option (append header) -*** New command 'sendheaders' allows to pre-set the headers to be added to -the message. -*** New commands 'sender' and 'nosender' allow to set up a list -of header fields used to determine the sender of the message. -*** New variable 'xmailer' controls whether an X-Mailer header should -be added to outgoing messages. -*** New variables 'datefield' and 'emptystart' for compatibility with -nail -*** New variable 'decode-fallback' controls how to represent the characters -that cannot be rendered using current character set. - -** mail.remote -*** Support for -t option (read recipients from the message). This fixes -the bug reported lately where mail.remote sends mail to all addresses -in the message, not just the addresses explicitly listed on the -command line. - -** pop3d -*** New option --login-delay. Support for login-delay -*** New option --undelete. Forces pop3d to clear deletion -marks from all messages after opening the mailbox. - -* Bug fixes: - -** libmailbox -*** Fixed incorrect handling of underscores in Quoted-Printable encoding. -*** rfc2047_decode() takes into account input and output -character sets. - -** mh -*** (formataddr): Fixed checking for duplicate addresses. - -** pop3d: -*** Do not save delete marks when exiting on timeout. - -** imap4d -*** Fixed bug that prevented SASL from working over a TLS encrypted -channel. -*** IDLE works on TLS connections. - - -Version 0.4: - -* Bug fixes: - -** Fixed improper use of size_t instead of off_t which caused -coredumps on systems where the two types have different sizes. - -** iterator_t is rewritten to make list traversal more effective. -Traversing the list of n elements takes O(n), instead of O(n*(n+1)/2) -time units. - -** Fixed memory allocation bug in mailbox/mu_auth.c - -** Various fixes and improvements in MH in order to interoperate better -with MH-E. - -** Correctly handle MIME parts with an empty body. - -* Major Changes - -** The library has been split into the core library (libmailbox), and -the protocol implementation libraries, which are named as -libmu_$PROTO. For example, the library for MBOX mailbox formats is -libmu_mbox.so. - -** The support for TLS protocol has been added to libmu_imap.so and -libmu_pop.so. This means that you can now use TLS with every -Mailutils client program. - -* New features. - -** libmailbox - -** See "Major Changes" - -*** implemented header unfolding - -*** argcv_get unescapes all unprintable characters, argcv_string -escapes them. - -** libsieve: Implemented boolean shortcuts for evaluating ALLOF and -ANYOF - -** pop3d - -*** more extensive diagnostics for APOP authentications - -*** Save headers even if the session was aborted. This ensures -the persistence of message unique-ids as required by RFC 1939. - -*** popauth: new option --create. - -The option allows to convert a plaintext file into DBM database. - -** mail - -*** New configuration file variable `mailx' enables the mailx -compatibility mode. This is mainly visible when composing a message. -In mailx compatibility mode, mail asks for Cc and Bcc addresses after -composing the body. -The default behavior is to ask for these values before composing -the body. - -*** New variable `charset' controls the decoding of MIME-encoded headers -(rfc2047). - -*** New commands `unfold' and `nounfold' allow to specify the headers -whose values should be unfolded before display. - -* mh - -Lots of bugfixes regarding compatibility issues and interoperation -with MH-E. This version of MH has been tested with MH-E 7.4.2+cvs. - -** New program: ali - -** New profile variables: -*** Charset -Controls the character set in which the components decoded via -the `decode' format function should be output. - -*** Reply-Regex -Sets the regular expression used to recognize reply messages. - -** New format functions -*** reply_regex -Sets the regular expression used to recognize reply messages. - -*** isreply -Returns true if its argument is the reply message subject string, -i.e. if it matches the "reply subject" regular expression. - - -Version 0.3.1: - -This version is a maintenance release over the previous one. - -* Bug fixes: - -** A replacement for vsyslog is provided for systems lacking it. -** Fixed incorrect handling of dates. -** Added support for handling Fcc: headers to the mailer code. -** Several minor fixes to allow the package to compile on MacOS. - -* New features: - -** Support for authentication against PostgreSQL databases. - -* libmailbox: - -** First implementation of rfc1524: added a set of functions for handling -mail capabilities - -* mh: All utilities needed by Emacs mh-e.el module are implemented. - - -Version 0.3: - -* General: - -** Added NLS support. Currently Catalan and Spanish translations -are available. - -** Fixed compilation with the newer versions of Berkeley DB. - -* libmailbox: - -** Functions for generating References: and In-Reply-To: headers as -per RFC 2822. - -** A set of functions for sequential access to streams. - -** The function mu_errstring is renamed to mu_strerror for consistency -with the usual practice. - -** Added initial implementation of message header encoding and decoding -functions (RFC 2047). - -* libsieve: - -** The syntax of multiline strings is extended. It is possible -to use arbitrary ending delimiter instead of the default dot, -and to strip off the leading tabs, which allows for natural -indentation of the multiline strings. - -** Added support for relational tests according to RFC 3431. - -** Fixed incorrect handling of multiple addresses in `address' -tests. - -* imap4d: - -** The untagged output was fixed to conform to the RFC 2060. Specifically, -the output of STORE command is corrected in accordance with the -rfc2060-errata document; the EXIST and RECENT untagged are always -returned by EXAMINE, SELECT, and NOOP. - -** Added support for TLS and GSASL. - -** Implemented LOGINDISABLED capability. - -** Implemented IDLE command (RFC 2177). - -* pop3d: Added TLS support. - -* mail: Fixed error diagnostics and removed startup banner. - -* mh: Initial implementation. The basic MH utilities are implemented -that allow to use the package with the GNU Emacs mh-e module. Please -refer to the files README and TODO in the mh subdirectory. - - -Version 0.2: - -* libmailbox: Several bugfixes. The configuration suite allows - to disable support for any protocol or mailbox format to reduce - the size of the library. - -* Added new utility mailutils-config. This utility prints gcc command - line options needed for compiling and linknig an application against - mailutils. - -* libsieve: New library. Supports Sieve language as described in - RFC 3028 and provides a mechanism for dynamic loading of - user-defined actions, tests and comparators. - -* sieve: Completely rewritten using libsieve. - -* sieve.scm: Added vacation extension action. - -* mail.local: Allows to apply user-defined sieve filters before delivering - messages. - -* mail utility: Added `editheaders' boolean variable. When set, the - user is allowed to edit headers of the message. - Message set specification allows negation of search primitives, e.g. - `from ! subject:/daily/' outputs all messages whose subject - does not contain the word 'daily'. - Reply command correctly adds `In-Reply-To' and `References' headers - to outgoing messages. - When used with a numeric argument '=' command sets the current - message to this number. - New command `setenv' allows to set and examine environment - variables. - The semantics of `crt' variable is made compatible with that of - other implementations. - Fixed several bugs. - -* libmu_scm: Added support for Guile 1.7.0 - - -Version 0.1: - -The first release. - - ----------------------------------------------------------------------- -Copyright information: - -Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, -2008 Free Software Foundation, Inc. - - Permission is granted to anyone to make or distribute verbatim copies - of this document as received, in any medium, provided that the - copyright notice and this permission notice are preserved, - thus giving the recipient permission to redistribute in turn. - - Permission is granted to distribute modified versions - of this document, or of portions of it, - under the above conditions, provided also that they - carry promine |