Notmuch 0.23.2 (2016-11-20)
===========================
Emacs
-----
Fix notmuch-interesting-buffer and notmuch-cycle-notmuch-buffers.
notmuch-tree-mode and notmuch-message-mode buffers are now
considered interesting by `notmuch-interesting-buffer` and
`notmuch-cycle-notmuch-buffers`.
Restore compatibility with Emacs 23.
Notmuch support for Emacs 23 is now deprecated.
2016-11-26 Richard Russon <rich@flatcap.org>
* Features
- Upstream adoption of compress
- Multiple hcache backends and run-time selection
- $forward_references includes References: header on forwards
- Hooks: define hooks for startup and shutdown
- Add $collapse_all to close threads automatically
* Bug Fixes
- Index in pager crash
- Tag with multiple labels
- Make sure gdbm's symbols are not resolved in QDBM's compatibility layer
- Fix crash when doing collapse_all on an empty folder
- Fix: crash when browsing empty dir
- Initialize imap_authenticate's return value to something meaningful
* Translations
- Update German translation
- Update Slovak translation
- Update French translation
- Add English (British) translation
- Convert files to utf-8
- Mass tidy up of the translation messages
* Docs
- new-mail bug is fixed
- add since date for features
- expand example command options for compress
- fix entries for beep and new-mail-command
- add a version number to the generated vimrc
- fix links in README
- don't use smart quotes in manual examples
- <escape> and \e means refers to both alt and escape key
* Build
- Travis: test messages
- Add option to disable translation messages
- Split hcache code into per-backend files
- Doc/Makefile clean neomutt-syntax.vim
- Improve discovery for the Berkeley Database
- Fix nntp/notmuch conditionals
- Implement mutt_strchrnul()
- Rename vim-keybindings to vim-keys
* Upstream
- attach_format: add new %F placeholder
- Compose: add operation to rename an attachment
- Chain %d->%F->%f in the attachment menu
- Move mbox close-append logic inside mbox_close_mailbox()
- When $flag_safe is set, flagged messages cannot be deleted
- Adds the '@' pattern modifier to limit matches to known aliases
- Adds <mark-message> binding to create "hotkeys" for messages
- Updated requirement on the C compiler
- Fix mark-message translation and keybind menu
- More openssl1.1 fixes: remove uses of X509->name in debugging. (closes#3870)
- Don't close stderr when opening a tunnel. (closes#3726)
- Minor resource and error logic cleanup in tunnel_socket_open()
- Make sure that the output of X509_NAME_oneline is null-terminated
PHP 7.0 support should be improved, too.
- Added new "smtp_helo_override" hook; allows plugins to override
the HELO host sent to the SMTP server when sending messages
- Added STARTTLS support for both IMAP and SMTP connections
- Added PDO support for database connections, so no external
database module needs to be installed
Changes in 1.9.6
Make key importing more robust
New variant of PGP/MIME messages broken by MS-Exchang
Better detection is decrypted message is displayed
Changes in 1.9.5
Enigmail wizard fails with GnuPG installation
Include AppData
Forwarding an encrypted message results in empty body
enigmail does not seem to parse last '=' in quoted-printable encoded encrypted/signed parts
select keys for Per-Recipient-Rules regression : all keys are unchecked
2016-11-04 Richard Russon <rich@flatcap.org>
* Bug Fixes
- don't crash when the imap connection dies
* Upstream
- Add root-message function to jump to root message in thread.
- Updated French translation.
- Prevent an integer overflow in mutt_mktime() (closes#3880)
- Fix pager segfault when lineInfo.chunks overflows. (closes#3888)
- Perform charset conversion on text attachments when piping. (closes#3773) (see #3886)
- Add a --disable-doc configuration option.
- Make ncurses and ncursesw header checking the same.
- Attempt to silence a clang range warning. (closes#3891)
- Fixed issue from changeset 4da647a80c55. (closes#3892)
- Define PATH_MAX, it's missing on the GNU Hurd. (closes#3815)
Upstream changes:
2.211 2016-11-12 09:39:09-05:00 America/New_York
- fix a fencepost error in headers and header_names that led to a
spurious undef in return and to a warning (thanks, Pali Roh獺r)
* Part of the Sieve extprograms implementation was moved to Dovecot, which
means that this release depends on Dovecot v2.2.26+.
* ManageSieve: The PUTSCRIPT command now allows uploading empty Sieve scripts.
There was really no good reason to disallow doing that.
+ Sieve vnd.dovecot.report extension:
+ Added a Dovecot-Reporting-User field to the report body, which contains
the e-mail address of the user sending the report.
+ Added support for configuring the "From:" address used in the report.
+ LDA sieve plugin: Implemented support for a "discard script" that is run
when the message is going to be discarded. This allows doing something other
than throwing the message away for good.
+ Sieve vnd.dovecot.environment extension: Added vnd.dovecot.config.*
environment items. These environment items map to sieve_env_* settings from
the plugin {} section in the configuration. Such values can of course also
be returned from userdb.
+ Sieve vacation extension: Use the Microsoft X-Auto-Response-Suppress header
to prevent unwanted responses from and to (older) Microsoft products.
+ ManageSieve: Added rawlog_dir setting to store ManageSieve traffic logs.
This replaces at least partially the rawlog plugin (mimics similar IMAP/POP3
change).
- doveadm sieve plugin: synchronization: Prevent setting file timestamps to
unix epoch time. This occurred when Dovecot passed the timestamp as
'unknown' during synchronization.
- Sieve exprograms plugin: Fixed spurious '+' sometimes returned at the end
of socket-based program output.
- imapsieve plugin: Fixed crash occurring in specific situations.
- Performed various fixes based on static analysis and Clang warnings.
* master: Removed hardcoded 511 backlog limit for listen(). The kernel
should limit this as needed.
* doveadm import: Source user is now initialized the same as target
user. Added -U parameter to override the source user.
* Mailbox names are no longer limited to 16 hierarchy levels. We'll
check another way to make sure mailbox names can't grow larger than
4096 bytes.
+ Added a concept of "alternative usernames" by returning user_* extra
field(s) in passdb. doveadm proxy list shows these alt usernames in
"doveadm proxy list" output. "doveadm director&proxy kick" adds
-f <passdb field> parameter. The alt usernames don't have to be
unique, so this allows creation of user groups and kicking them in
one command.
+ auth: passdb/userdb dict allows now %variables in key settings.
+ auth: If passdb returns noauthenticate=yes extra field, assume that
it only set extra fields and authentication wasn't actually performed.
+ auth: passdb static now supports password={scheme} prefix.
+ auth, login_log_format_elements: Added %{local_name} variable, which
expands to TLS SNI hostname if given.
+ imapc: Added imapc_max_line_length to limit maximum memory usage.
+ imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs.
This replaces at least partially the rawlog plugin.
+ dsync: Added dsync_features=empty-header-workaround setting. This
makes incremental dsyncs work better for servers that randomly return
empty headers for mails. When an empty header is seen for an existing
mail, dsync assumes that it matches the local mail.
+ doveadm sync/backup: Added -I <max size> parameter to skip too
large mails.
+ doveadm sync/backup: Fixed -t parameter and added -e for "end date".
+ doveadm mailbox metadata: Added -s parameter to allow accessing
server metadata by using empty mailbox name.
+ Added "doveadm service status" and "doveadm process status" commands.
+ director: Added director_flush_socket. See
http://wiki2.dovecot.org/Director#Flush_socket
+ doveadm director flush: Users are now moved only max 100 at a time to
avoid load spikes. --max-parallel parameter overrides this.
+ Added FILE_LOCK_SLOW_WARNING_MSECS environment, which logs a warning
if any lock is waited on or kept for this many milliseconds.
- master process's listener socket was leaked to all child processes.
This might have allowed untrusted processes to capture and prevent
"doveadm service stop" comands from working.
- login proxy: Fixed crash when outgoing SSL connections were hanging.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*}
from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous
userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy
lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected
returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary
anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with
lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when
namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress,
fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- director: Many fixes related to connection handshaking, user moving
and error handling.
- director: Don't break with shutdown_clients=no
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple
newly created mails. They all had UID=0 and the next mail could have
wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when
using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in
client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after
un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one
IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless
fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a
crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL
optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround.
v2.2.26 had a couple of nasty bugs left in it, so here's a fixup release. The version number is also a little bit weird, but had to be done this way (although 2.2.26.0.1 could have been another possibility).
- Fixed some compiling issues.
- auth: Fixed assert-crash when using NTLM or SKEY mechanisms and
multiple passdbs.
- auth: Fixed crash when exporting to auth-worker passdb extra fields
that had empty values.
- dsync: Fixed assert-crash in dsync_brain_sync_mailbox_deinit
Upstream changes:
1.300030 2016-10-03 18:33:57-04:00 America/New_York
- no changes since 1.300029
1.300029 2016-07-17 15:49:18-04:00 America/New_York (TRIAL RELEASE)
- bring localpart quoting more in line with RFC 821
1.3.5:
* [CritFix] Fix issue with finding of end of lines pointers
* [Feature] Add DMARC_NA symbol
* [Feature] Add R_DKIM_NA / R_SPF_NA / AUTH_NA symbols
* [Feature] Add spamhaus DROP dnsbl
* [Feature] Add termination callbacks for workers
* [Feature] Add user-agent for rspamc
* [Feature] Allow parsing of mailbox messages from the commandline
* [Feature] Support excluding selected users from ratelimits
* [Feature] Yield DMARC_DNSFAIL on lookup failure
* [Fix] Banish table.maxn from Lua parts
* [Fix] Do not use headers to calculate messages digests
* [Fix] Fix absurdic scores for HFILTER_URL_ONLY
* [Fix] Fix actrie patterns
* [Fix] Fix format string
* [Fix] Fix handling of '\0' in lua_tcp
* [Fix] Fix issue with empty messages and dkim
* [Fix] Fix min_learns option
* [Fix] Fix options for SPF dnsfail symbol
* [Fix] Fix processing of symbols when reject limit is reached
* [Fix] Settings: fix `authenticated` parameter (#886)
* [Fix] Try to avoid race condition when using rrd
* [Fix] Use the correct macro to get the size of controller
* [Fix] Fix build and tests on OpenBSD
Notmuch 0.23.1 (2016-10-23)
===========================
General
-------
Require Xapian >= 1.2.6
The ifdef branch for older Xapian (pre-compact API) had bit-rotted.
Emacs
-----
Fix default colours for unread and flagged messages
In 0.23 the default colours for unread and flagged messages in
search view were accidentally swapped. This release returns them to
the original colours.
A related change in 0.23 broke the customize widget for
notmuch-search-line-faces. This is now fixed.
Fix test failure with Emacs 25.1
A previously undiscovered jit-lock related bug was exposed by Emacs
25, causing a notmuch-show mode test to fail. This release fixes the
bug, and hence the test.
Note
This release has more pager bug-fixes and heaps more testing.
Thanks
Many thanks to our new contributors to NeoMutt: Doug Stone-Weaver, Ismaël Bouya, Steven Ragnarök
and our regular contributors: Darshit Shah, David Sterba, Pietro Cerutti, Tobias Angele
Features
notmuch: Add a fake “Folder” header to viewed emails Ismaël Bouya (@immae)
sidebar: consider description when using whitelist Doug Stone-Weaver (@doweaver)
forgotten-attachment: Ignore lines matching quote_regexp. Steven Ragnarök (@nuclearsandwich)
forgotten-attachment: Fix checking logic. Steven Ragnarök (@nuclearsandwich)
forgotten-attachment: Update docs regarding $quote_regexp. Steven Ragnarök (@nuclearsandwich)
skip-quoted: skip to body David Sterba (@kdave)
nntp: use safe_{fopen,fclose}
nntp: fix resource leak
Bug Fixes
“inbox” sorting function Pietro Cerutti (@gahr)
sensible-browser/notmuch changing mailbox
overhaul the index/pager updates
crash in hdrline
remove stray line introduced by pager fix
Possible fix for random pager crashes.
Docs
use a more expressive coverity scan badge Tobias Angele (@toogley)
light tidying
Build
replace the ugly strfcpy() macro with a function Darshit Shah (darnir)
build: Look for tgetent in ncurses, fallback to tinfo only if not found Pietro Cerutti (@gahr)
build: fix a couple of build warnings
travis: install doc dependencies
build: fix install/dist/distcheck targets
Upstream
Fix POP3 SASL authentication mechanism DIGEST-MD5. (closes#3862)
Add a few explanatory comments to pop_auth_sasl(). (see #3862)
Fix GPGME signature zero timestamp and locale awareness issues. (closes#3882)
Handle presence of ‘–’ delimiter in $sendmail. (closes#3168)
Allow IPv6 literal addresses in URLs. (closes#3681)
Fix gpgme segfault in create_recipient_set().
Use mutt_strlen and mutt_strncmp in sidebar.c.
Change sidebar to only match $folder prefix on a $sidebar_divider_char. (closes#3887)
Actually fix gpgme segfault in create_recipient_set().
Upstream changes:
version 2.120: Wed 21 Sep 16:41:23 CEST 2016
Fixes:
- revert change of parts(), because it breaks code/the tests.
rt.cpan.org#118016 [Tom Callaway]
version 2.119: Mon Sep 19 22:49:50 CEST 2016
Fixes:
- Mail::Message::parts() did not return the $msg itself when
there are multiparts. [Peter Gunn]
- Cygwin is not windows. rt.cpan.org#115286
- include examples in the man-pages
Improvements:
- require perl 5.8.5
- ::MailDir scans faster with tainting off
- larger Mail::Message::build() example in SYNOPSIS [Andrew Beverley]
- $msg->build options file and files now exactly the same.
- indicate what ::Field::attributes() may return dupplicated
keys. rt.cpan.org #114589 [Randy Diffenderfer]
This is python-policyd-spf, an external policy checker for the postfix mail
server. It will use pyspf to check SPF records to determine if email should
be rejected by your server.
Based on https://github.com/joyent/pkgsrc/pull/421 by Coy Hile.
dependency on net/py-dns was incorrect and cannot have worked).
Changes since 2.0.8:
Version 2.0.12 - August 5, 2015
* Reset void_lookups at top of check()
* Ignore permerror for best_guess()
* Don't crash on null DNS TXT record (ignore): test case null-text
* Trailing spaces are allowed by 4.5/2: test case trailing-space
* Make CNAME loop result in unknown host: test case ptr-cname-loop
* Test case and fix for mixed case CNAME loop, test case ptr-cname-loop
Version 2.0.11 - December 5, 2014
* Fix another bug in SPF record parsing that caused records with terms
separated by multple spaces as invalid, but they are fine per the ABNF
* Downcase names in additional answers returned by DNS before adding
to cache, since case inconsistency can cause PTR match failures (initial
patch thanks to Joni Fieggen) and other problems.
Version 2.0.10 - September 2, 2014
* Fix bug in SPF record parsing that caused all 'whitespace' characters to
be considered valid term separators and not just spaces
* Fixed multiple bugs in temperror processing that would lead to tracebacks
instead of correct error processing
* Fix AAAA not flagged as bytes when strict=2
* Include '~' as safe char in url quoted macro expansion
Version 2.0.9 - April 29, 2014
* Update for new SPF standards track RFC 7208
- Add processing for new void lookups processing limit
- Default SPF process timeout limit to 20 seconds per RFC 7208 4.6.4
- Change default DNS timeout to 20 seconds in DNSLookup to better match
RFC 7208 4.6.4
- Make mx lookups > 10 a permerror per RFC 7208 and mx-limit test
- Add RFC 7208 specific test suite and make allowance for RFC 7208 changes
in RFC 4408 test suite
- Convert YAML tests to TestCases, and have testspf.py return success/fail.
Changelog:
Fixed "Apply columns to..." did not honor special folders
Fixed Threading broken when editing message draft, due to loss of Message-ID
Fixed Mail saved as template copied In-Reply-To and References from original email.
Fixed Additional spaces were inserted when drafts were edited.
Fixed Recipient addresses were shown in red despite being inserted from the address book in some circumstances.
Fixed Display name was truncated if no separating space before email address.
- add `ignore_header_shrinkage` parameter to Filter_external for users
who know it is normal for their particular filter to result in a
smaller message header than the source message, for example when the
filter encapsulates the original message in a simpler wrapper message.
Thanks: "RW", Tristan Miller, Francesco Ariis.
- EXPERIMENTAL: when deleting a message from an IMAP mailbox, set the
\Seen flag in addition to the the \Deleted flag. This apparently
prevents the ever-innovatively-broken MSExchange from sending a
spurious incorrect disposition-notification message to the sender of
the message. I do not know if this will cause problems with other
broken IMAP server implementations; please send a report to the getmail-
user's mailing list if you see odd behaviour with this change. Thanks:
John Hein.
- enable socket timeouts for IMAP SSL classes by default. They were
disabled in the code because they were incompatible with SSL in older
versions of Python. If you see problems with Python 2.6 or 2.7 now,
please let me know.
2016-10-14 Richard Russon <rich@flatcap.org>
* Features
- sidebar: Make sure INBOX appears first in the list.
- notmuch: Synchronise tags to flags
* Bug Fixes
- updates when pager is open
- crash when neither $spoolfile, $folder are set
- forgotten-attachment: fix empty regex expression
- status-color when pager_index_lines > 0
- buffer underrun when no menu item is selected
- crash handling keywords/labels
* Docs
- update notmuch references
* Build
- update references to 1.7.1
- strfcpy() improvement
* Upstream
- automatic post-release commit for mutt-1.7.1
- Mark IMAP fast-trash'ed messages as read before copying. (see #3860)
- Updated Czech translation.
- Preserve forwarded attachment names in d_filename.
== 3.1 / 2016-05-22
* 1 documentation change:
* Tim Smith (@tas50) updated the build badges to be SVGs to improve
readability on high-density (retina) screens with pull request
{#112}[https://github.com/mime-types/ruby-mime-types/pull/112].
* 3 bug fixes
* A test for MIME::Types::Cache fails under Ruby 2.3 because of frozen
strings, {#118}[https://github.com/mime-types/ruby-mime-types/issues/118].
This has been fixed.
* The JSON data has been incorrectly encoded since the release of mime-types
3 on the +xrefs+ field, because of the switch to using a Set to store
cross-reference information. This has been fixed.
* A tentative fix for
{#117}[https://github.com/mime-types/ruby-mime-types/issues/117] has been
applied, removing the only circular require dependencies that exist (and
for which there was code to prevent, but the current fix is simpler).
I have no way to verify this fix and depending on how things are loaded by
+delayed_job+, this fix may not be sufficient.
* 1 governance change
* Updated to {Contributor Covenant 1.4}[Code-of-Conduct_rdoc.html].
== Version 2.6.4 - Wed Mar 23 08:16 -0700 2016 Jeremy Daer <jeremydaer@gmail.com>
Features:
* #772 - Normalize encoding matchers (grosser)
* #775 - Avoid failed encodings / stop bad charsets early (grosser)
* #782 – Make the gem compatible with Rubinius (robin850)
* #865 - Allow a body with an invalid encoding to be round tripped (kjg)
* #866 - Support decoding message bodies with non-Ruby-standard charsets (jeremy)
* #868 - Use the Ruby19.charset_encoder when decoding message bodies (kjg)
* #872 - Low-level option to include BCC field in the encoded message (grossadamm)
* #901 - Allow mail.text_part = '…' and mail.html_part = '<p>…</p>' (taavo)
* #924 - Matcher for having attachments (schepedw)
Performance:
* #956 - Use native String#encode for CR/LF conversion (carsonreinke)
* #970 - Support Ruby 2.3+ frozen string literals (twalpole)
Bugs:
* #719 - Fix to not extract header content that looks like its field name (kjg)
* #789 - Fix encoding collapsing not dealing with multiple encodings in 1 line (grosser)
* #808 - Mail::Field correctly responds_to? the methods of its instantiated field (thegcat)
* #849 - Handle calling Part#inline? when the Content-Disposition field couldn't be parsed (kjg)
* #874 – Stay under 1000-char SMTP line length limits (pushrax)
* #877 - Make Mail::Field == other take the field value into account (kjg)
* #907 - Mail::ContentDispositionField should work with nil value (kjg)
* #910 - Mail::Address should handle b_value_encoded local and domain parts (kjg)
* #918 - Account for possibility of absent delivery-status headers (kjg)
forgotten-attachment: fix empty regex expression
The original regex was of the form "abc(|def)" to check for both "abc"
and "abcdef". Unfortunately, the regex libraries on BSDs/MacOS don't
like this use of an empty sub-expression.
Expanding the regex to: "(abc|abcdef)" fixes the problem.
3bc69ca250
Bump PKGREVISION.
Notmuch 0.23 (2016-10-03)
=========================
General (Xapian 1.4+)
---------------------
Compiling against Xapian 1.4 enables several new features.
Support for single argument date: queries
`date:<expr>` is equivalent to `date:<expr>..<expr>`.
Support for blocking opens
When opening a database notmuch by default will wait for another
process to release a write lock, rather than returning an error.
Support for named queries
Named queries (also known as 'saved searches') can be defined with a
`query:name` format. The expansion of these queries is stored in the
database and they can be used from any notmuch client.
Library
-------
Message property API
libnotmuch now supports the attachment of arbitrary key-value pairs
to messages. These can be used by various tools to manage their
private data without polluting the user tag space. They also support
iteration of values with the same key or same key prefix.
Bug fix for `notmuch_directory_set_mtime`
Update cached mtime to match on-disk mtime.
CLI
---
Support for compile time options
A group of `built_with` keys is now supported for notmuch
config. Initial keys in this group are `compact`, `field_processor`,
and `retry_lock`.
Dump/Restore support for configuration information and properties
Any configuration information stored in the database (initially just
named queries) is dumped and restored. Similarly any properties
attached to messages are also dumped and restored. Any new
information in the dump format is prefixed by '#' to allow existing
scripts to ignore it.
Emacs
-----
Make notmuch-message-mode use insert for fcc
Notmuch-message-mode now defaults to using notmuch insert for
fcc. The old file based fcc behaviour can be restored by setting the
defcustom `notmuch-maildir-use-notmuch-insert` to nil.
When using notmuch insert, `notmuch-fcc-dirs` must be a subdirectory
of the mailstore (absolute paths are not permitted) followed by any
tag changes to be applied to the inserted message. The tag changes
are applied after the default tagging for new messages. For example
setting the header to "sentmail -inbox +sent" would insert the
message in the subdirectory sentmail of the mailstore, add the tag
"sent", and not add the (normally added) "inbox" tag.
Finally, if the insert fails (e.g. if the database is locked) the
user is presented with the option to retry, ignore, or edit the
header.
Make internal address completion customizable
There is a new defcustom `notmuch-address-internal-completion` which
controls how the internal completion works: it allows the user to
choose whether to match on messages the user sent, or the user
received, and to filter the messages used for the match, for example
by date.
Allow internal address completion on an individual basis
There is a new function `notmuch-address-toggle-internal-completion`
(by default it has no keybinding) which allows users who normally
use an external completion command to use the builtin internal
completion for the current buffer.
Alternatively, if the user has company-mode enabled, then the user
can use company mode commands such as `company-complete` to
activate the builtin completion for an individual completion.
Resend messages
The function `notmuch-show-resend-message` (bound to `b` in show
and tree modes) will (attempt to) send current message to new
recipients. The headers of the message won't be altered (e.g. `To:`
may point to yourself). New `Resent-To:`, `Resent-From:` and so on
will be added instead.
Face customization is easier
New faces `notmuch-tag-unread`, `notmuch-tag-flagged`,
`notmuch-tag-deleted`, `notmuch-tag-added`,
`notmuch-search-flagged-face` and `notmuch-search-unread-face` are
now used by default. Customize `notmuch-faces` to modify them.
Omit User-Agent header by default when sending mail
Ruby Bindings
-------------
Add support for `notmuch_database_get_all_tags`
Go Bindings
-----------
Go bindings moved to contrib
Add support for `notmuch_threads_t` and `notmuch_thread_t`
Fixed constant values so they are not all zero anymore
Previously, it was impossible to open writable database handles,
because `DATABASE_MODE_READ_ONLY` and `DATABASE_MODE_READ_WRITE` were
both set to zero.
The same issue occured with sort modes.
Fixed with Postfix 3.1.3 and 3.0.7:
* The Postfix SMTP server did not reset a previous session's
failed/total command counts before rejecting a client that
exceeds request or concurrency rates. This resulted in incorrect
failed/total command counts being logged at the end of the
rejected session.
* The unionmap multi-table interface did not propagate table
lookup errors, resulting in false "user unknown" responses.
* The documentation was updated with a workaround for false "not
found" errors with MySQL map queries that contain UTF8-encoded
text. The workaround is to specify "option_group = client" in
Postfix MySQL configuration files. This will be the default
setting with Postfix 3.2 and later.
RELEASE 1.2.2
-------------
- Fix regression in resizing JPEG images with Imagick (#5376)
- Managesieve: Fix parsing of vacation date-time with non-default date_format (#5372)
- Use SymLinksIfOwnerMatch in .htaccess instead of FollowSymLinks disabled on some hosts for security reasons (#5370)
- Wash position:fixed style in HTML mail for better security (#5264)
- Fix bug where memcache_debug didn't work for session operations
- Fix bug where Message-ID domain part was tied to username instead of current identity (#5385)
- Fix bug where blocked.gif couldn't be attached to reply/forward with insecure content
- Fix E_DEPRECATED warning when using Auth_SASL::factory() (#5401)
- Fix bug where names of downloaded files could be malformed when derived from the message subject (#5404)
- Fix so "All" messages selection is resetted on search reset (#5413)
- Fix bug where folder creation could fail if personal namespace contained more than one entry (#5403)
- Fix error causing empty INBOX listing in Firefox when using an URL with user:password specified (#5400)
- Fix PHP warning when handling shared namespace with empty prefix (#5420)
- Fix so folders list is scrolled to the selected folder on page load (#5424)
- Fix so when moving to Trash we make sure the folder exists (#5192)
- Fix displaying size of attachments with zero size
- Fix so "Action disabled" error uses more appropriate 404 code (#5440)
fix: crash handling keywords/labels
When an email is read by NeoMutt the labels are stored in linked list of
strings. These strings are used as keys in a hash table of all labels.
If NeoMutt reads another email with the same label, it's given a
reference to the same hash.
Now imagine that the first email is deleted -- the list of labels is
also deleted, so that hash now has invalid keys.
This commit maintains a linked list of all labels and uses that for the
hash table keys. It's not very efficient, but it avoids having to
change the hash table code.
Note: dgc (the keywords author) has created a new version which will
supplant this one, soon.
f8160285f2
Bump PKGREVISION.
1.202 2016-09-25 21:48:09-04:00 America/New_York
- avoid using a new Net::DNS feature, which should restore function
with old versions of Net::DNS
1.201 2016-09-22 19:21:01-04:00 America/New_York
- mx check once again allows for A records; a future check may
allow mx-only checks on purpose
Important Note
An upstream Mutt change has removed the $locale config variable.
It didnât quite do what the user might expect. This change also
introduces a new variable $attribution_locale which controls the
translation of the âOn {date}, {user} wroteâ reply string.
Bug Fixes
Avoid segfault when listing mailboxes on startup John Swinbank (@jdswinbank)
Fix buffer overrun in search for attach keyword James McCoy (@jamessan)
Fix off-by-one in error message Antonio Radici (@aradici)
fix AC_INIT tarname parameter
fix crash when exiting the pager
fix another crash in the pager
nntp: close message handles
fix: make the pager more robust
fix sidebar sort order
fix notmuch tag completion
Docs
doc: Removes bug entry in new-mail docs Santiago Torres (@SantiagoTorres)
fix some translations in crypt-gpgme.c Antonio Radici (@aradici)
docs: mass tidy up
Upstream
Fix sidebar documentation a bit
Add unsidebar_whitelist command
Remove the $locale configuration variable
Add $attribution_locale configuration variable
Add missing include to send.c and edit.c
Filter out zero width no-break space (U+FEFF)
Update a confusing and obsolete comment
Moves mutt_copy_list to muttlib.c, where it belongs
Redraw screen after an SSL cert prompt
Preserve message-id and mft headers for recalled messages
Fix openssl 1.1 compilation issues
3.1.0
The main changes in no particular order are:
* "postfix tls" command to simplify setup of opportunistic TLS,
and to simplify SMTP server key/certificate management.
* Positive and negative DNS reply TTL support in postscreen(8).
* SASL AUTH rate limit in the Postfix SMTP server.
* A safety limit on the number of address verify requests.
* JSON-format Postfix queue listing.
* Destination-independent delivery rate delay
For details, see the RELEASE_NOTES file.
3.1.1
Fixed in all supported releases:
* The Milter "replace sender" (SMFIR_CHGFROM) request lost an
address that was added with sender_bcc_maps, resulting in a
"rcpt count mismatch" warning. Reported by Joerg Backschues.
This defect was introduced with Postfix 2.6.
* The "bad filetype" example in the header_checks(5) manpage
falsely rejected Content- headers with ``name="example";
x-apple-part-url="example.com"''. Reported by Cedric Knight.
This defect was introduced with Postfix 2.6.
3.1.2
Fixed with Postfix 3.1.2:
* Changes to make Postfix build with OpenSSL 1.1.0.
Fixed with Postfix 3.1.2 and 3.0.6:
* The makedefs script ignored readme_directory=pathname overrides.
Fix by Todd C. Olson.
* The tls_session_ticket_cipher documentation says that the default
cipher for TLS session tickets is aes-256-cbc, but the implemented
default was aes-128-cbc. Note that TLS session ticket keys are
rotated after 1/2 hour, to limit the impact of attacks on session
ticket keys.
Changelog:
Fixed Certain messages caused corruption of the drafts summary database.
Fixed "edit as new message" on a received message pre-filled the sender as the composing identity.
Fixed Disposition-Notification-To could not be used in mail.compose.other.header
Fixed Various security fixes
Fixed in Thunderbird 45.3
2016-62 Miscellaneous memory safety hazards (rv:48.0 / rv:45.3)
official roundcube.
Roundcube Webmail ZipDownload
=============================
This plugin adds an option to download all attachments to a message in one zip
file, when a message has multiple attachments. The plugin also allows the
download of a selection of messages in 1 zip file.
official roundcube.
Password Plugin for Roundcube
Plugin that adds a possibility to change user password using many
methods (drivers) via Settings/Password tab.
official roundcube.
Enigma Plugin for Roundcube
This plugin adds support for viewing and sending of signed and encrypted
messages in PGP (RFC 2440) and PGP/MIME (RFC 3156) format.
The plugin uses gpg binary on the server and stores all keys
(including private keys of the users) on the server.
Encryption/decryption is done server-side. So, this plugin
is for users that trust the server.
pkgsrc changes:
o Split some plugins (enigma, password and zipdownload) to separate packages.
o Drop PHP_VERSIONS_ACCEPTED since now it support PHP 7.0.
o Rename sockets PKG_OPTIONS to php-sockets.
Catch up PR pkg/51370 in a little different way.
RELEASE 1.2.1
-------------
- Update TinyMCE to version 4.3.13 (#5309)
- Fix bug where errors could have been not logged when per_user_logging=true
- Fix bug where message list columns could be in wrong order after column drag-n-drop and list sorting
- Fix so minified publickey.js (with cache-buster) is used when available (#5254)
- Fix (replace) application/x-tar file extension test as it might not exist in nginx config (#5253)
- Fix PHP warning when password_hosts is set, but is not an array (#5260)
- Fix redundant keep-alive requests when session_lifetime is greater than ~20000 (#5273)
- Fix so subfolders of INBOX can be set as Archive (#5274)
- Fix bug where multi-folder search could choose a wrong folder in "this and subfolders" scope (#5282)
- Fix bug where multi-folder search didn't work for unsubscribed INBOX (#5259)
- Fix bug where "no body" alert could be displayed when sending mailvelope email
- Enigma: Fix keys import from inside of an encrypted message (#5285)
- Enigma: Fix malformed signed messages with force_7bit=true (#5292)
- Enigma: Add possibility to configure gpg binary location (enigma_pgp_binary)
- Enigma: Add possibility to export private keys (#5321)
- Fix searching by email address in contacts with multiple addresses (#5291)
- Fix handling of --delete argument in moduserprefs.sh script (#5296)
- Workaround PHP issue by calling closelog() on script shutdown when using log_driver=syslog (#5289)
- Fix so upgrade script makes sure program/lib directory does not contain old libraries (#5287)
- Fix subscription checkbox state on error in folder subscribe/unsubscribe action (#5243)
- Fix bug where microsecond format in logged date didn't work in some cases
- Fix conflict in new_user_dialog and password_force_new_user settings (#5275)
- Don't create multipart/alternative messages with empty text/plain part (#5283)
- Use contact_search_name format in popup on results in compose contacts search
- Fix handling of 'mailto' and 'error' arguments in message_before_send hook (#5347)
- Fix missing localization of HTML editor when assets_dir != INSTALL_PATH
- Fix handling of blockquote tags with mixed case on html2text conversion (#5363)
- Fix javascript errors in IE on page with iframe that points to another domain
RELEASE 1.2.0
-------------
- Enigma: Added enigma_debug option
- Fix message list multi-select/deselect issue (#5219)
- Fix bug where getting HTML editor content could steal focus from other form controls (#5223)
- Fix bug where contact search menu fields where always unchecked in Larry skin
- Fix autoloading of 'html' class
- Fix bug where Encrypt button appears when switching editor to HTML (#5235)
- Fix XSS issue in href attribute on area tag (#5240)
RELEASE 1.2-rc
--------------
- Managesieve: Refactored script parser to be 100x faster
- Enigma: added option to force users to use signing/encryption
- Enigma: Added option to attach public keys to sent mail (#5152)
- Enigma: Handle messages with text before an encrypted block (#5149)
- Enigma: Handle encrypted/signed content inside message/rfc822 attachments
- Enigma: Fix missing html/plain switch on multipart/signed messages (#4963)
- Enigma: Disable format=flowed for signed plain text messages (#4960)
- Enigma: Fix handling of encrypted + signed messages (#4950)
- Enigma: Fix invalid boundary use in signed messages structure
- Enable use of TLSv1.1 and TLSv1.2 for IMAP (#4955)
- Save copy of original .htaccess file when using installto.sh script (#4947)
- Fix regression where some message attachments could be missing on edit/forward (#4939)
- Fix regression in displaying contents of message/rfc822 parts (#4937)
- Fix handling of message/rfc822 attachments on replies and forwards (#4938)
- Fix PDF support detection in Firefox > 19 (#4941)
- Fix path traversal vulnerability in setting a skin [CVE-2015-8770] (#4945)
- Fix so drag-n-drop of text (e.g. recipient addresses) on compose page actually works (#4944)
- Fix .htaccess rewrite rules to not block .well-known URIs (#4943)
- Fix mail view scaling on iOS (#4915)
- Fix PHP7 warning "session_start(): Session callback expects true/false return value" (#4948)
- Fix XSS issue in SVG images handling (#4949)
- Fix missing language name in "Add to Dictionary" request in HTML mode (#4951)
- Fix (again) security issue in DBMail driver of password plugin [CVE-2015-2181] (#4958)
- Fix bug where Archive/Junk buttons were not active after page jump with select=all mode (#4961)
- Fix bug in long recipients list parsing for cases where recipient name contained @-char (#4964)
- Plugin API: Added addressbook_export hook
- Fix additional_message_headers plugin compatibility with Mail_Mime >= 1.9 (#4966)
- Hide DSN option in Preferences when smtp_server is not used (#4967)
- Fix handling of body parameter in mail compose request
- Protect download urls against CSRF using unique request tokens (#4957)
- newmail_notifier: Refactor desktop notifications
- Fix so contactlist_fields option can be set via config file
- Fix so SPECIAL-USE assignments are forced only until user sets special folders (#4782)
- Fix performance in reverting order of THREAD result
- Fix converting mail addresses with @www. into mailto links (#5197)
RELEASE 1.2-beta
----------------
- Update TinyMCE to version 4.2
- Added support for Redis session handler
- Removed some deprecated methods: https://github.com/roundcube/roundcubemail/commit/454b0b1c
- Remove backward compatibility "layer" of bc.php (#4902)
- Add possibility to define date format in write operations for ldap attributes (#3956)
- Display attachment size in compose (#1329)
- Added possibility to drag-n-drop attachments from mail preview to compose window
- Implemented mail messages searching with predefined date interval
- PGP encryption support via Mailvelope integration
- PGP encryption support via Enigma plugin
- PHP7 compatibility fixes (#4836)
- Security: Added brute-force attack prevention via login rate limit (#4922)
- Security: Added options to validate username/password on logon (#4884)
- Security: Improve randomness of security tokens (#4899)
- Security: Use random security tokens instead of hashes based on encryption key (#4829)
- Security: Improved encrypt/decrypt methods with option to choose the cipher_method (#4492)
- Make optional adding of standard signature separator - sig_separator (#3276)
- Optimize folder_size() on Cyrus IMAP by using special folder annotation (#4894)
- Make optional hidding of folders with name starting with a dot - imap_skip_hidden_folders (#4870)
- Add option to enable HTML editor always, except when replying to plain text messages (#4352)
- Emoticons: Added option to switch on/off emoticons in compose editor (#2076)
- Emoticons: Added option to switch on/off emoticons in plain text messages
- Emoticons: All emoticons-related functionality is handled by the plugin now
- Installer: Add button to save generated config file in system temp directory (#3553)
- Remove common subject prefixes Re:, Re[x]:, Re-x: on reply (#4882)
- Added GSSAPI/Kerberos authentication plugin - krb_authentication
- Password: Allow temporarily disabling the plugin functionality with a notice
- Require Mbstring and OpenSSL extensions (#5166)
- Add --config and --type options to moduserprefs.sh script (#4651)
- Implemented memcache_debug and apc_debug options
- Installer: Remove system() function use (#4695)
- Password plugin: Added 'kpasswd' driver by Peter Allgeyer
- Add initdb.sh to create database from initial.sql script with prefix support (#4722)
- Plugin API: Added disabled_plugins an disabled_buttons options in html_editor hook
- Plugin API: Added html2text hook
- Plugin API: Added message_part_body hook
- Plugin API: Added message_ready hook
- Plugin API: Add special onload() method to execute plugin actions before startup (session and GUI initialization)
- Implemented UI element to jump to specified page of the messages list (#1677)
- Fix searching of contacts to allow remote images for known senders (#4886)
- Fix bug where clicking date column with 'arrival' sorting would switch to sorting by 'date' (#4690)
- Fix bug where message content could overlap attachments list in Larry skin (#4876)
- Fix so microseconds macro (u) in log_date_format works (#4855)
- Fix so unrecognized TNEF attachments are displayed on the list of attachments (#5138)
- Fix so database_attachments::cleanup() does not remove attachments from other sessions (#4907)
- Fix responses list update issue after response name change (#4917)
- Fix bug where message preview was unintentionally reset on check-recent action (#4921)
- Fix bug where HTML messages with invalid/excessive css styles couldn't be displayed (#4905)
- Fix redundant blank lines when using HTML and top posting (#4927)
- Fix redundant blank lines on start of text after html to text conversion (#4928)
- Fix HTML sanitizer to skip <!-- node type X --> in output (#4932)
- Fix invalid LDAP query in ACL user autocompletion (#4934)
Release date: 2016-08-28 23:07 UTC
Changelog:
Minor Bug fix release.
#20431 - support for android
#19762 - multipart signed not split correctly on line breaks
#20027 - replace /e with preg_replace_callback
#19762 - multipart/signed eating of new line, and expose sig_hdr etc.
Notmuch 0.22.2 (2016-09-08)
===========================
Test Suite
----------
Silence gdb more
Have gdb write to a log file instead of stdout, hiding some more
(harmless) stderr chatter which causes test failures.
Hardcode fingerprint in PGP/MIME tests
Make the tests more robust against changing GnuPG output formats.
2016-09-10 Richard Russon <rich@flatcap.org>
* New Features
- Colouring Attachments with Regexp
Guillaume Brogi
- PGP Encrypt to Self
Guillaume Brogi
- Sensible Browser
Pierre-Elliott Bécue
- Reply using X-Original-To: header
Pierre-Elliott Bécue
- Purge Thread
Darshit Shah
- Forgotten attachment
Darshit Shah
- Add sidebar_ordinary color
* Bug Fixes
- align the nntp code with mutt
Fabian Groffen
- check for new mail while in pager when idle
Stefan Assmann
- Allow the user to interrupt slow IO operations
Antonio Radici
- keywords: check there are emails to tag
- fix duplicate saved messages
- flatten contrib/keybase dir to fix install
- restore the pager keymapping 'i' to exit
- proposed fix for clearing labels
- notmuch: sync vfolder_format to folder_format
* Docs
- Update List of Features and Authors
* Build
- fix configure check for fmemopen
- use fixed version strings
* Upstream
- Increase date buffer size for $folder_format.
- Disable ~X when message scoring.
- Fix pgpring reporting of DSA and Elgamal key lengths.
- Stub out getdnsdomainname() unless HAVE_GETADDRINFO.
- Autoconf: always check for getaddrinfo().
- Add missing sidebar contrib sample files to dist tarball.
Upstream changes:
Changelog:
Added composer support.
Added Travis CI test support.
Updated code to use PHP 5 method signatures.
Implemented requests:
* #17888, #17865: Reduce peak memory usage when using the smtp/smtpmx backend [alec]
* Ability to pass socket options to Net_SMTP
Fixed bugs:
* #18109: New "pipelining" parameter for SMTP backend never used [alec]
* #17317: Invalid periods in mailbox not marked as invalid [alec]
* #17388: Deprecated assigning the return value of new by reference [alec]
* #17866, #20424, #12071, #17553: Non-static method Mail_RFC822::parseAddressList called statically [alec]
* #17178: Mail_RFC822::parseAddressList does not accept RFC-valid empty-group syntax [alec]
New in this release:
~~~~~~~~~~~~~~~~~~~~
* Passwords can now be secured with a Master Passphrase.
(/Configuration/Preferences/Other/Miscellaneous/)
* Passwords: The password storage method has changed. All passwords
are now stored in a separate file, (~/.claws-mail/passwordstorerc),
and use a stronger encryption than previously. Existing passwords
are moved to the new file automatically, in the old format. The
new format will be used whenever old passwords are changed or when
a Master Passphrase is used. All new passwords are saved using the
new format, irrespective of whether a Master Passphrase is used or
not. Further information can be found here:
http://www.claws-mail.org/doc/password_encryption.txt
* Compose window: Removed the outer scrollbar from header area.
* Message view: The HTML to plain text converter now indicates list
items with a hyphen (-), adds a line break after
, and indents
text within blockquotes.
* Main window: Changed default /View/Show or hide/Menubar shortcut to
Ctrl+F12.
* SSL certificates list: Added automatic scrollbar.
* Address book: Double-clicking datasources now opens the edit
dialogue.
* Forwarding: The external editor is now automatically used when
forwarding as attachment, if the preference is set.
* Preferences: Automatic mail checking can now be configured in
hours, minutes and seconds.
(/Configuration/Preferences/Mail Handling/Receiving)
* Preferences: The 'next_on_delete' hidden preference now applies to
trashing or moving, in addition to deleting, a message.
* Command line: Added -geometry to set geometry for main window.
* IMAP: Added SASL 'PLAIN' and 'LOGIN' authentication methods for
accounts. Renamed the old plaintext 'LOGIN' to 'plaintext'.
* IMAP: The acccount preference, 'Move deleted mails to trash and
expunge immediately' has been removed.
* Notification plugin: Added 'Get mail from account...' to the
SysTray module's menu.
* Notification plugin: Focus the widget between iconify/deiconify
events.
* Tools: Added tools/cm-reparent.pl, which can be used to fix thread
parenting for two or more messages.
* Documentation: Updated man page and manual.
* Translations: Updated: Brazilian Portuguese, Catalan, Czech, Dutch,
Finnish, French, German, Hungarian, Italian,
Slovak, Spanish, Swedish, Traditional
Chinese.
Added: Danish, Indonesian, Turkish.
Dropped: Lithuanian (unmaintained)
* Bug fixes:
o bug 2518, '"Reply-All" message from NNTP-account does not
contain CC'ed correspondents'
o bug 2781, 'Unsanitised Folder Creation'
o bug 3028, 'Claws doesn't select html part if attachments
present'
o bug 3213, 'Line break in subject of message'
o bug 3573, 'Out of bounds read in macro LBREAK_IF_REQUIRED
in codeconv.c'
o bug 3581, 'sys:1: Warning: Source ID # was not found when
attempting to remove it'
o bug 3603, 'Feeds from Reddit are empty'
o bug 3610, 'Heap use after free in
privacy_mimeinfo_check_signature()'
o bug 3616, 'segfault setting up new CM in new userid'
o bug 3623, 'Client crash on importing duplicated feed'
o bug 3629, 'Invalid subject can distort message list view'
o bug 3652, 'utils.c:4740:47: warning: ordered comparison of
pointer with integer zero [-Wextra]'
o bug 3653, 'Upgrading from Mageia5 default (3.11.1),
3.13.2git tries to load 3.11.1 plugins'
o bug 3658, 'Passphrase ignored during keypair generation
with gpg2'
o include Reply-To value when using 'reply to all'
o inputdialog modality and focus issue
o fix Compose account selection when imap folder is selected.
o set correct rcdir on Win32
o Fix behavior in selecting PGP MIME signature on Windows.
o RSSyl: typo in handling feed name ending with a period on
Win32
o vCalendar: Handle ical lines longer than 256 bytes
patch-src_low-level_smtp_mailsmtp.c has been
removed this change is included in this release.
Changelog:
1.7.2:
Fixed so name for Linux
1.7:
Build
Fixed expat / curl detection
Fix build on OpenIndiana
Support for Berkeley DB 6.0
Support for Bitcode (Apple)
Build for Android
Improved build for Windows
General
Support for socks proxy
API for partial base64 parsing
SMTP
Ability to cancel SMTP operations
Fixed logging privacy with OAuth2 on smtp
IMAP
Broken date parsing
Improved latest TLS/SSL support
IMAP MOVE implemented
workaround for XLIST on cyon.ch
Added ability to send custom IMAP command support
Workaround for qq.com IMAP server
Workaround for 163 IMAP server
Improved SEARCH compatibility
1.3.4:
* [Feature] ASN module; support matching ASN/country in multimap
* [Feature] Add SPF method in spf return result
* [Feature] Add Yandex and Mail.ru forwarding rules
* [Feature] Add mempool maps in multimap
* [Feature] Add rule for identifying mail sent by eval()'d PHP code
* [Feature] Add support of stub DNSSEC resolver to rdns
* [Feature] Add task:get_digest method
* [Feature] Allow for more fine-grained scoring for ip_score
* [Feature] Allow to get digest of a mime part from lua
* [Feature] Allow to print message digest in logs
* [Feature] Fold DKIM-Signature header
* [Feature] Implement encrypted logs
* [Feature] Log URLs encrypted if we have log encryption pubkey
* [Feature] Pass authenticated bit to lua
* [Feature] Read redis backend statistics configuration from global section
* [Feature] Show the exact value matched for multima symbols
* [Feature] Store task checksum
* [Fix] Avoid setting limits when required elements are missing
* [Fix] DMARC: Fix alignment checking for subdomains
* [Fix] DMARC: deal with missing and spurious spaces
* [Fix] Defer insertion of results in ip_score to avoid skewing stats
* [Fix] Disable DMARC for local/authorized mail
* [Fix] Fix handling of proxied headers in controller
* [Fix] Fix hex printing of strings
* [Fix] Fix issue with spaces in maps
* [Fix] Fix parsing of forwarded IP
* [Fix] Fix reload in some plugins and workers
* [Fix] Fix reloading on SIGHUP
* [Fix] Fix some border cases for DKIM canonicalization
* [Fix] Fix url maps
* [Fix] Make dnssec configurable option disabled by default for now
* [Fix] rspamadm statconvert: force db to be a string
* [Fix] rspamadm statconvert: use db/password for learn cache
* [Rework] Rework flags in rspamd logger
1.3.3:
* [CritFix] Check hyperscan cache sanity before loading
* [CritFix] Fix setting of fuzzy keys (completely breaks fuzzy storage)
* [Feature] Add SARBL (sarbl.org) uribl
* [Feature] Add `--search-pattern` option to rspamd_stats
* [Feature] Add some sanity check for very long from/to log elements
* [Feature] Allow to create hashes from string in a single step
* [Feature] Fix order of pre and postfilters
* [Feature] Improve lua URLs API
* [Feature] Improve message about fuzzy rules
* [Feature] Pre-calculate blake2 digest for all parts
* [Feature] Print radix duplicate keys as IP addresses
* [Feature] Simple mechanism for disabling RBLs in local.d/rbl.conf
* [Feature] Use faster hash function for fuzzy storage
* [Feature] rspamd_stats: support log directory reading
* [Fix] Add sanity check for url filters
* [Fix] Do not show rmilter section as a fake metric in rspamc
* [Fix] Fix URL filters
* [Fix] Fix a stupid mistake in util.strequal_caseless
* [Fix] Fix blake2b hash of the string "rspamd"
* [Fix] Fix filename maps filter
* [Fix] Fix finding tld in util.get_tld
* [Fix] Fix multimap content filters
* [Fix] Fix returning boolean from Lua
* [Fix] Fix returning of REDIS_NIL
* [Fix] Try to deal with multiple workers terminated
* [Fix] Use forced DNS request when calling for lua_http
* [Rework] Rework multimap filters, add redis maps
1.3.2:
* [Feature] Add a special symbol for SPF DNS errors: R_SPF_DNSFAIL
* [Feature] Add correlations report in fuzzy stats
* [Feature] Add experimental CGP integration
* [Feature] Add method to get urls length in a text part
* [Feature] Add new methods to lua_html to access HTML tags
* [Feature] Allow all types of symbols to be added via __newindex method
* [Feature] Allow to create settings for authenticated users
* [Feature] Allow to get block content for HTML tags
* [Feature] Improve DNS failures when dealing with SPF
* [Feature] Properly implement R_WHITE_ON_WHITE rule
* [Feature] Remove old ugly rules
* [Feature] Rspamc can now add dkim signature in mime mode
* [Feature] Store content length for HTML tags
* [Feature] Support reacher set of HTML colors
* [Feature] Try to avoid FP for low contrast fonts detection
* [Fix] Add missing HTML colors
* [Fix] Add spaces to dkim signature to allow folding
* [Fix] Avoid returning NaN as score on scan
* [Fix] Decode entitles in href parts
* [Fix] Do not cache SPF records with DNS errors
* [Fix] Do not crash on cyclic depends
* [Fix] Do not insert HELO/HOSTNAME unknown when they are not passed
* [Fix] Do not set absent hostname to "unknown"
* [Fix] Do not stress redis with KEYS command (#791)
* [Fix] Fix DMARC_BAD_POLICY symbol
* [Fix] Fix HFILTER_URL module
* [Fix] Fix HFILTER_URL_ONELINE rule
* [Fix] Fix buffering in CGP integration
* [Fix] Fix colors propagation from parent nodes
* [Fix] Fix confusing OpenSSL API usage of i2d_RSAPublicKey
* [Fix] Fix dependencies id sanity check
* [Fix] Fix folding for semicolon separated tokens
* [Fix] Fix largest possible TLD behaviour
* [Fix] Fix last token folding
* [Fix] Fix length calculations in white on white rule
* [Fix] Fix multiple request headers structure
* [Fix] Fix multiple values headers freeing
* [Fix] Fix parsing of background color
* [Fix] Fix printing from field in log_urls
* [Fix] Fix processing of last element of DMARC policies
* [Fix] Further fixes for HTML colors
* [Fix] Further fixes for multiple values headers
* [Fix] Further fixes for white on white rule
* [Fix] Further fixes in HTML tags parsing
* [Fix] Ignore content type/subtype case
* [Fix] Increase score of R_WHITE_ON_WHITE
* [Fix] Parse CGP envelope data
* [Fix] Propagate colors in HTML
* [Fix] Restore multiple values headers in protocol
* [Fix] Restore multiple values in headers processing
* [Fix] Some more changes to tag's content length calculations
* [Fix] Some more fixes for low contrast fonts detector
* [Fix] SpamAssassin plugin: support check_freemail_header('EnvelopeFrom', [..])
* [Fix] Trigger HTML_SHORT_LINK_IMG on any external image
* [Fix] rspamd_stats: remove deprecated defined(@array)
1.3.1:
* [CritFix] Fix catena passwords validation
* [CritFix] Fix crash when the first received is faked
* [Feature] Add DMARC_BAD_POLICY symbol when DMARC policy was invalid
* [Feature] Allow for matching hostnames in multimap (#773)
* [Feature] Allow for setting action based on DMARC disposition
* [Feature] Allow limiting of the inbound message size
* [Feature] Allow maps with multiple symbols and scores
* [Feature] Allow regexps in the emails maps
* [Feature] Allow to register metric symbols from multimap
* [Feature] Allow to reset redis tokens instead of appendig values
* [Feature] Allow to store strings in radix maps
* [Feature] Check UTF validity when there are utf regexps in a map
* [Feature] Correctly work when there is no hard reject action
* [Feature] Implement dependencies for maps
* [Fix] Another effort to unbreak sqlite locking
* [Fix] Avoid crash when closing mmapped file
* [Fix] Do not break history on NaN in required score
* [Fix] Ensure that hyperscan cache written is written properly
* [Fix] Filter NaN from scores in history
* [Fix] Fix DNSBL maps
* [Fix] Fix another locking issue in sqlite
* [Fix] Fix another locking issue with mapped files
* [Fix] Fix deadlock in mmaped file stats
* [Fix] Fix dependencies in multimap plugin
* [Fix] Fix emails module configuration
* [Fix] Fix greylist plugin (#755)
* [Fix] Fix greylisting plugin variable usage
* [Fix] Fix installed permissions for rspamd_stats
* [Fix] Fix locking in mmapped statistics
* [Fix] Fix paths in tests
* [Fix] Fix prefilter mode for multimap
* [Fix] Forgot to commit leftover changes
* [Fix] Really fix local.d includes
* [Fix] Restore selective greylisting behaviour
* [Fix] Set max size on per connection basis
* [Fix] Use temporary storage for hyperscan cache
* [Rework] Remove systemd socket activation
1.3.0:
* [CritFix] Fix SA rawbody processing - exclude top part
* [CritFix] Fix decoding of UTF HTML entitles
* [CritFix] Fix encrypted fuzzy requests
* [CritFix] Fix leak of shared memory fds and files
* [CritFix] Fix levenshtein distance calculations
* [CritFix] Fix mime headers processing
* [CritFix] Fix parsing of URLs in texts
* [CritFix] Fix parsing of missing classes
* [CritFix] Fix redis structure by adding {NULL, NULL} member
* [CritFix] Fix some more URL detector issues
* [CritFix] Fix systemd sockets activation
* [CritFix] Fix unencrypted passwords processing in the controller
* [CritFix] Fix writing CDPs to the database
* [CritFix] Fix writing of encrypted HTTP requests
* [CritFix] Plug memory leak in dkim module
* [CritFix] Plug memory leak in headers getting code
* [CritFix] Pre-filters and post-filters were completely broken
* [CritFix] Properly support SA body regexps
* [CritFix] Really skip filters in case of pre-result set
* [CritFix] Restore the intended pre-filters behaviour
* [Rework] Adopt new maps code
* [Rework] Compile ragel sources when building rspamd
* [Rework] Finish rework for the rest of places that use HTTP
* [Rework] Fix DKIM headers canonicalization
* [Rework] Fix lua maps API
* [Rework] Import linenoise for line editing
* [Rework] Include config structure to all rcl handlers
* [Rework] Make chartable module useful
* [Rework] Move http internal structures to a private header
* [Rework] Partly fix controller
* [Rework] Remove dedicated images list
* [Rework] Rename http proxy to rspamd proxy
* [Rework] Rename mime parts structures
* [Rework] Rework HTTP code
* [Rework] Rework exceptions and newlines processing
* [Rework] Rework pre and postfilters system
* [Rework] Separate method to close backend connections
* [Rework] Start the complete maps rework
* [Rework] Use dynamically generated ragel C sources
* [Feature] Add 'blacklist' and 'strict' modes for whitelists
* [Feature] Add 'symbols_enabled' and 'groups_enabled' to settings
* [Feature] Add ESMTPSA received type
* [Feature] Add a simple script to evaluate rspamd rules in the logs
* [Feature] Add a simple tool to generate DKIM keys
* [Feature] Add a trivial heuristic for codepages
* [Feature] Add and use mumhash for non-crypto hashing
* [Feature] Add better method to check lua userdata types
* [Feature] Add better zip files search algorithm
* [Feature] Add catena PBKDF function
* [Feature] Add configuration knobs for in and out parser scripts
* [Feature] Add content filtering support to multimap
* [Feature] Add different timeouts for proxy connections
* [Feature] Add dot commands for lua REPL:
* [Feature] Add execution of lua global functions script
* [Feature] Add function for pretty printing of inet addresses
* [Feature] Add function to convert fstring_t to c string
* [Feature] Add function to create temporary shared memory mapping
* [Feature] Add function to generate random hex string
* [Feature] Add generic fucnction to parse IP maps
* [Feature] Add initial version of HTTP lua repl
* [Feature] Add learn condition to the default configuration
* [Feature] Add learn conditions for classifiers
* [Feature] Add limit for dkim signatures to be checked
* [Feature] Add locking routines for lua_util
* [Feature] Add lua API for getting info from archives
* [Feature] Add lua utility to decode URL encoding
* [Feature] Add method to copy message from http connection
* [Feature] Add mirrors feature
* [Feature] Add more algorithms for shingles generation
* [Feature] Add more domains to redirectors list
* [Feature] Add more encodingsto cryptobox hash API
* [Feature] Add more file utilities to lua_util
* [Feature] Add more functions to extract data from text parts
* [Feature] Add more methods to get headers from a task
* [Feature] Add more methods to init http message body
* [Feature] Add more options for redis config parsing function
* [Feature] Add new representation of email address
* [Feature] Add new symbols to filter bad extensions in messages
* [Feature] Add new utility methods to mimepart object
* [Feature] Add openphish support to rspamd phishing module
* [Feature] Add parsers for SMTP address in ragel
* [Feature] Add parsing of mirror hosts for fuzzy storage
* [Feature] Add parsing scripts for master connection as well
* [Feature] Add preliminary greylist plugin
* [Feature] Add preliminary phishtank support
* [Feature] Add preliminary rarv5 support
* [Feature] Add preliminary version of ssl toolbox
* [Feature] Add protection against open files limit and accepting sockets
* [Feature] Add rar v4 support
* [Feature] Add reading scripts for master connection
* [Feature] Add replies plugin
* [Feature] Add results parsing code
* [Feature] Add routines to compare and check pubkeys
* [Feature] Add simplier versions of refcounts
* [Feature] Add some time manipulation functions for lua APi
* [Feature] Add support for non-standard BATV signatures
* [Feature] Add support of address with at-domain list
* [Feature] Add support to search archives by magic
* [Feature] Add task:get_rawbody method
* [Feature] Add test to check shared memory support sanity
* [Feature] Add the initial version of LUA repl to rspamadm
* [Feature] Add throughput graph for RRD backend to WebUI
* [Feature] Add universal function to make a proper redis request
* [Feature] Add universal function to parse redis servers for plugins
* [Feature] Add util.unlink function
* [Feature] Add utility function to return random number from 0 to 1
* [Feature] Add utility method to convert ftok to C string
* [Feature] Add utility to map shared memory segments
* [Feature] Add versions to fuzzy storage
* [Feature] Add workaround for legacy clients in rspamd proxy
* [Feature] Add workaround for systems without sane shmem support
* [Feature] Add xoroshiro+ fast rng for non-crypto purposes
* [Feature] Adopt plugins for new maps API
* [Feature] Allow SPF to be checked for empty tasks
* [Feature] Allow binary patterns in lua_trie
* [Feature] Allow catena encrypted passwords in controller
* [Feature] Allow client ip match in the settings
* [Feature] Allow easy adding and overriding of fuzzy rules
* [Feature] Allow empty tasks to be processed
* [Feature] Allow hostnames in IP maps
* [Feature] Allow https maps
* [Feature] Allow multiple PBKDF types in `rspamadm pw`
* [Feature] Allow named fuzzy rules
* [Feature] Allow non zero terminated patterns in multipattern
* [Feature] Allow partial hash updates
* [Feature] Allow pipelining for redis.make_request
* [Feature] Allow sending empty requests using client
* [Feature] Allow setting fuzzy flag by symbol not by value
* [Feature] Allow setting scores and actions from lua
* [Feature] Allow shared memory simple http client
* [Feature] Allow static lua files in any parts of rspamd sources
* [Feature] Allow to change flag from fuzzy learn condition
* [Feature] Allow to check rspamd_text using maps
* [Feature] Allow to disable composite rules from settings
* [Feature] Allow to disable some modules from common redis setup
* [Feature] Allow to extract ucl_object from lua using common API
* [Feature] Allow to get settings and settings id hash from lua_task
* [Feature] Allow to have specific settings for mirrored traffic
* [Feature] Allow to open message from a shared memory segment
* [Feature] Allow to parse pubkeys from the rcl config
* [Feature] Allow to pass extradata from rspamd to rmilter
* [Feature] Allow to query storage about number of fuzzy hashes stored
* [Feature] Allow to read logs without symbols scores
* [Feature] Allow to read password from console for rspamc
* [Feature] Allow to set ciphers and CA paths in config
* [Feature] Allow to skip some initialization phases to speed up rspamadm
* [Feature] Allow underscore separated names in settings
* [Feature] Allow versioning for sqlite databases
* [Feature] Always allow to terminate rspamd
* [Feature] Better deal with backend errors
* [Feature] Better lua_redis logging
* [Feature] Configure CA path and ciphers
* [Feature] Create a dedicated parser to strip newlines
* [Feature] Deduplicate the same urls in multimap module
* [Feature] Distinguish luajit from lua
* [Feature] Do not print garbadge in --compact output
* [Feature] Dynamically detect if a CPU is incompatible with hyperscan
* [Feature] Enable forced resolving for some lua plugins
* [Feature] Enable rrd by default
* [Feature] Enable workaround for exim
* [Feature] Fix task functions to work without rspamd_config
* [Feature] Further improvements to chartable module
* [Feature] Further micro-optimizations for hashing and shingles
* [Feature] Further relax parser
* [Feature] Humanize numbers in stats widgets
* [Feature] Implement HTTPS client
* [Feature] Implement SSL support in http client
* [Feature] Implement body rules for the trie plugin
* [Feature] Implement braced regexp quantifiers
* [Feature] Implement compare scripts for mirrors results
* [Feature] Implement compare scripts setup
* [Feature] Implement composites policies
* [Feature] Implement conditional learning for classifiers
* [Feature] Implement constructing of map from UCL
* [Feature] Implement dkim signing in dkim check plugin
* [Feature] Implement fuzzy storage updates
* [Feature] Implement fuzzy updates push protocol
* [Feature] Implement https maps
* [Feature] Implement inter-process maps caching
* [Feature] Implement mapping of remote flags to local flags
* [Feature] Implement mirroring in rspamd proxy
* [Feature] Implement multi-flags fuzzy replies
* [Feature] Implement multiple-sources fuzzy storage
* [Feature] Implement order of pre/post filters
* [Feature] Implement partial deleting for multi-flags
* [Feature] Implement pipelining for redis async interface
* [Feature] Implement ragel parser for received headers
* [Feature] Implement reading of messages to shared memory
* [Feature] Implement refcount for messages
* [Feature] Implement retransmits for master connection
* [Feature] Implement zero-copy mode for HTTP reading
* [Feature] Improve SPF domain detection logic
* [Feature] Improve config:register_symbol function
* [Feature] Improve error report for type missmatch in lua
* [Feature] Improve fstrings API
* [Feature] Improve getting SMTP data from lua_task
* [Feature] Improve levenshtein distance function
* [Feature] Improve logging in proxy and add refcounts
* [Feature] Improve logging lua types
* [Feature] Improve master/slave logging
* [Feature] Improve phishing plugin
* [Feature] Improve phishtank and openphish support
* [Feature] Improve ragel build target
* [Feature] Improve statistics script
* [Feature] Initialize ssl library to use SSL connections
* [Feature] Interpolate points sent to webui
* [Feature] Limit logging of elements that could have too many items
* [Feature] Lock ANN file when loading
* [Feature] New abstract hashing API in cryptobox
* [Feature] Normalize quoted addresses
* [Feature] Now cryptobox lua API accepts rspamd text as input
* [Feature] Optimize alignment to speed up hashing
* [Feature] Parse received date and ESMTPA proto
* [Feature] Parse received timestamp
* [Feature] Pass settings id to log helper
* [Feature] Pass settings id to lua script from log helper
* [Feature] Perform files expansion on proxying
* [Feature] Preliminary implementation of fuzzy master/slave updates
* [Feature] Print userdata using tostring if possible
* [Feature] Propagate HTTP result string when using proxy
* [Feature] Properly implement unweighted round-robin algorithm
* [Feature] Reduce number of timers queries
* [Feature] Rework and improve fuzzy storage
* [Feature] Rework dns resolving API for lua, add 'forced' option
* [Feature] Rework fann module to understand settings
* [Feature] Rework listening system to allow multiple socket types per worker
* [Feature] Rework ratelimit module to set expiration
* [Feature] Save bayes probability in memory pool var
* [Feature] Save settings id hash for convenience
* [Feature] Search for SSL_set_tlsext_host_name support
* [Feature] Send DKIM signature to protocol reply
* [Feature] Show DKIM signature in rspamc client
* [Feature] Show symbols description in scan output
* [Feature] Sign message merely after DKIM check
* [Feature] Simplify machines by assuming that headers are unfolded
* [Feature] Sort symbols when displaying them in log
* [Feature] Split main connection from mirrored connections
* [Feature] Start moving to the new email address structure
* [Feature] Store HTTP headers in a hash table
* [Feature] Store more information about compressed files
* [Feature] Store raw headers value to use them in DKIM
* [Feature] Store text parts content with newlines stripped
* [Feature] Support DKIM signing
* [Feature] Support EXIF jpeg images
* [Feature] Support archive files list extraction
* [Feature] Support archives when matching patterns in multimap
* [Feature] Support premium/academic feed for openphish
* [Feature] Support rspamd_updates via https
* [Feature] Supprort FQDNs in phishing module maps
* [Feature] Try to read on fuzzy timeout to avoid fake timeouts
* [Feature] Try to select the optimal possible function for input
* [Feature] Unescape and unquote smtp addresses
* [Feature] Update fuzzy timestamp when adding value
* [Feature] Update mumhash
* [Feature] Use -flto if possible when optimizations are enabled
* [Feature] Use extended map types in lua map, unify code
* [Feature] Use file lock in logger to avoid deadlocks
* [Feature] Use generic global string split function
* [Feature] Use metrohash as well
* [Feature] Use mumhash by default for incremental hashing
* [Feature] Use mumhash for words hashing
* [Feature] Use new ip parsing API
* [Feature] Use new maps API for local addrs
* [Feature] Use new ragel parser in message parsing code
* [Feature] Use new received parser instead of old one
* [Feature] Use new redis API in DMARC plugin
* [Feature] Use new redis API in greylist plugin
* [Feature] Use new redis API in ip_score plugin
* [Feature] Use new redis API in ratelimit plugin
* [Feature] Use new redis API in replies plugin
* [Feature] Use new version of register_symbol in rspamd plugins
* [Feature] Use offset when passing shm to deal with encrypted requests
* [Feature] Use one pass to remove newlines and store their positions
* [Feature] Use rspamd specific type checks for userdata
* [Feature] Use shared memory storage for http maps
* [Feature] Use universal redis definitions in rspamd plugins
* [Feature] Various improvements in greylist module
* [Feature] Wait for sqlite if locked when switching to WAL mode
* [Fix] Add filenames sanity filtering for mime types
* [Fix] Add guards for empty parts
* [Fix] Add missing types
* [Fix] Add more priority for config file symbols registered from UCL
* [Fix] Add sanity checks when compiling regexp maps
* [Fix] Add spaces instead of newlines to the normalized content
* [Fix] Add workaround for ancient openssl
* [Fix] Add workaround for gmime CTE stupidity
* [Fix] Add workaround for hex digits
* [Fix] Adjust MISSING_MIMEOLE score
* [Fix] Adjust body/body_buf when stealing encrypted message
* [Fix] Adopt lua task API for the new email addresses structure
* [Fix] Allow for disabling DMARC reporting when Redis is configured
* [Fix] Always register openphish and phishtank virtual symbols
* [Fix] Always use shmem on linux
* [Fix] Another change of newlines policy
* [Fix] Another d3evolution update
* [Fix] Another fix for exim workaround
* [Fix] Another fix for legacy clients
* [Fix] Another fix for maps scheduling
* [Fix] Another fix for marking upstreams inactive
* [Fix] Another fix for postfilters
* [Fix] Another fix for redis timeouts
* [Fix] Avoid `table.getn` method as it has been removed in lua 5.3
* [Fix] Avoid double hashing for images
* [Fix] Avoid linking with actrie if hyperscan is enabled
* [Fix] Check copy result when sending message to mirrors
* [Fix] Cleanup message when assiging body
* [Fix] Cleanup stack from global vars
* [Fix] Correctly parse query type
* [Fix] Disable all symbols if enable_groups is found in settings
* [Fix] Disable fts as it is completely broken in bloody linux
* [Fix] Disable multiple autolearn checks
* [Fix] Disallow updates by default
* [Fix] Do not abort when cannot load a map
* [Fix] Do not check recursion for non-DNS SPF record types
* [Fix] Do not delete uninitialized events
* [Fix] Do not die if shmem_mkstemp fails
* [Fix] Do not die when no metrics defined
* [Fix] Do not even try pcre in case of regexp maps
* [Fix] Do not greylist messages if redis has failed somehow
* [Fix] Do not greylist on rejection
* [Fix] Do not leave temporary maps cached
* [Fix] Do not output meaningless errors
* [Fix] Do not send NaN in json
* [Fix] Don't mix hyperscan and pcre processing within a same task
* [Fix] Finally rework and simplify redis backend for statistics
* [Fix] Fix Exim shutdown patch
* [Fix] Fix JIT compilation for PCRE2 expressions
* [Fix] Fix JIT usage for PCRE2
* [Fix] Fix REPL output
* [Fix] Fix SMTP address parsing machine
* [Fix] Fix UTF8 mode in PCRE2
* [Fix] Fix a stupid misprint in word 'phishing'
* [Fix] Fix accepting the first update when local idx is -1
* [Fix] Fix adding maps from ucl
* [Fix] Fix adding upstream to an active queue
* [Fix] Fix and rescore R_PARTS_DIFFER logic
* [Fix] Fix body rules in SA plugin
* [Fix] Fix body start position
* [Fix] Fix border case in urls detector
* [Fix] Fix border cases for incremental hashing
* [Fix] Fix caseless uthash application
* [Fix] Fix chartable issue with starting digits
* [Fix] Fix client_ip in users settings
* [Fix] Fix compilation issue
* [Fix] Fix conditional learning
* [Fix] Fix crash on empty maps
* [Fix] Fix creating of URLs from LUA
* [Fix] Fix creating of temporary shmem segment
* [Fix] Fix creation of mmapped statfiles
* [Fix] Fix descriptors leak on shmem detaching
* [Fix] Fix detaching of shared memory segments
* [Fix] Fix detection of URLs in text parts
* [Fix] Fix directories processing for rspamc
* [Fix] Fix displaying of rewrite subject in WebUI
* [Fix] Fix dkim private keys operations
* [Fix] Fix dkim signing
* [Fix] Fix dynamic scoring of subject symbols
* [Fix] Fix email address build
* [Fix] Fix encrypted proxy requests
* [Fix] Fix errors counting in upstreams
* [Fix] Fix errors handling in the proxy
* [Fix] Fix event bases for IO events
* [Fix] Fix events handling when scheduling map wacth
* [Fix] Fix fann rewrite
* [Fix] Fix files fallback for shmem transfer
* [Fix] Fix fuzzy adding in webui
* [Fix] Fix fuzzy storage encrypted mirroring
* [Fix] Fix fuzzy storage sync replies
* [Fix] Fix handling of the same words
* [Fix] Fix inserting values to the sources list
* [Fix] Fix ipv6 mask application
* [Fix] Fix issue with missing recipients
* [Fix] Fix issues with multiple returns from lua
* [Fix] Fix learning for non-existent backend
* [Fix] Fix legacy clients support in proxy
* [Fix] Fix length calculations for shared memory segments
* [Fix] Fix listening on UDP sockets
* [Fix] Fix loading of file maps
* [Fix] Fix long regexp flags (e.g. {sa_body})
* [Fix] Fix lua compare function init
* [Fix] Fix maps descriptions
* [Fix] Fix maps locking
* [Fix] Fix max_train setup in ANN module
* [Fix] Fix memory corruption
* [Fix] Fix memory leak in unsigned maps reading
* [Fix] Fix misprints for lto usage
* [Fix] Fix more issues with scripts processing
* [Fix] Fix next-to-last extension length check
* [Fix] Fix openssl initialization
* [Fix] Fix order of arguments
* [Fix] Fix order of initialization
* [Fix] Fix parser
* [Fix] Fix parsing of binary tries
* [Fix] Fix parsing of braced IPv6 addresses
* [Fix] Fix parsing of nested braces in SMTP comments
* [Fix] Fix parsing of rarv5 archives
* [Fix] Fix periodic scheduling when a map is not modified
* [Fix] Fix possible FP in TRACKER_ID rule
* [Fix] Fix post-filters processing
* [Fix] Fix potential NULL dereference
* [Fix] Fix processing of <br> and <hr> tags
* [Fix] Fix processing of addresses in protocol
* [Fix] Fix processing of messages without received headers
* [Fix] Fix proxying issue for unconnected sessions
* [Fix] Fix proxying of the encrypted messages
* [Fix] Fix race condition with shared memory by refcounts
* [Fix] Fix ratelimit initialization
* [Fix] Fix redis set request in replies plugin
* [Fix] Fix redis timeout events handling
* [Fix] Fix redis timeouts processing logic
* [Fix] Fix refcounts in lua_redis
* [Fix] Fix results checking if no master connection is active
* [Fix] Fix return value for couple of lua functions
* [Fix] Fix round-robin selection when upstreams have no weight
* [Fix] Fix rows calculation in graph
* [Fix] Fix rspamd_redis_make_request syntax in replies plugin
* [Fix] Fix scheduling of locked map events
* [Fix] Fix scores detection
* [Fix] Fix searching for newline positions
* [Fix] Fix secure_ip setting in controller
* [Fix] Fix sending data to graph command
* [Fix] Fix setting of score for parts differ
* [Fix] Fix setting of the lua top
* [Fix] Fix setting path for lua
* [Fix] Fix setting path for phishtank
* [Fix] Fix settings application
* [Fix] Fix shm_open call as described in POSIX
* [Fix] Fix size of length in fuzzy mirror wire protocol
* [Fix] Fix smtp grammar issues
* [Fix] Fix some issues with redis API
* [Fix] Fix some issues with retries in the proxy
* [Fix] Fix stack growing
* [Fix] Fix start of body detection in DKIM
* [Fix] Fix state on timeout
* [Fix] Fix stats script
* [Fix] Fix substring search when there are '\0' in strings
* [Fix] Fix symbol name for spf soft fail
* [Fix] Fix symbol type's check
* [Fix] Fix symbols registration and execution
* [Fix] Fix the case of multiple values keys
* [Fix] Fix the default symbol names according to metric
* [Fix] Fix timeout setup on learning
* [Fix] Fix timeouts in redis cache processing
* [Fix] Fix timeouts processing in lua_redis
* [Fix] Fix upstreams interaction for rspamd proxy
* [Fix] Fix usage of rdns reply structure
* [Fix] Fix varargs loop
* [Fix] Fix whitelists and blacklists in SA rules
* [Fix] Fix write servers setup for redis
* [Fix] Fix writing of HTTP messages
* [Fix] Force rspamd to upgrade fuzzy db on opening
* [Fix] Free the correct pointer
* [Fix] Further fixes for lto and static linking
* [Fix] Further fixes for surbl extensions map
* [Fix] Further fixes in maps code
* [Fix] Further improvements to error messages in fuzzy check
* [Fix] Further tweaks to redis garbadge collection
* [Fix] Groups are now case insensitive
* [Fix] Handle log pipe read errors
* [Fix] Handle nested dependencies in SpamAssassin plugin
* [Fix] Implement new automata to skip empty lines for dkim signing
* [Fix] Improve error messages on fuzzy add
* [Fix] Improve lua redis handling
* [Fix] Improve phishing module logging
* [Fix] Improve printing of fuzzy errors
* [Fix] Improve rrd diagnostic errors
* [Fix] Improve strcase hash used in uthash
* [Fix] Include fuzzy key to distinguish storages with different keys
* [Fix] Include slave cluster name into http request
* [Fix] Include some more information about archives
* [Fix] Indicate upstream error on timeout
* [Fix] Initialize hash tables array to avoid crashes
* [Fix] Initialize parser scripts properly
* [Fix] Initialize vars to avoid warnings
* [Fix] Inverse logic for saving ANN
* [Fix] Link lpeg to rspamd lua library
* [Fix] Make extension checks case-insensitive
* [Fix] Mark expired hashes as not found and not as zero flag
* [Fix] Match archive name as well
* [Fix] More and more fixes to redis states
* [Fix] More fixes about shared memory in proxy
* [Fix] More fixes for redis refcounts
* [Fix] More fixes to end of headers detection
* [Fix] More fixes to events logic
* [Fix] More fixes to multi-flag fuzzy storage
* [Fix] More fixes to parts distance calculations
* [Fix] More guards for redis free
* [Fix] One more fix in redis destructor
* [Fix] One more try to fix redis
* [Fix] PIE is required for static build
* [Fix] Partial fix for mmap'd statistics tests
* [Fix] Plug memory leak in proxy
* [Fix] Properly detect end of headers position
* [Fix] Properly init and free session structures
* [Fix] Reduce PRECEDENCE_BULK rule weight
* [Fix] Reduce the default thresholds for learning
* [Fix] Remove Type=forking from systemd unit file (#709)
* [Fix] Remove bad FANN file to save computational resources
* [Fix] Remove event before closing of fd to avoid race conditions
* [Fix] Remove parsing of 'from' variable in redis backend
* [Fix] Remove some bad domains from whitelists
* [Fix] Repair optional dependencies
* [Fix] Reset master connection when retransmitting scan request
* [Fix] Restore ONCE_RECEIVED symbol
* [Fix] Restore compatibility with old lua API behaviour
* [Fix] Restore redis runtime state
* [Fix] Reverse options when received
* [Fix] Send updates to mirrors only if we have some changes
* [Fix] Set host attribute properly when making HTTP request from lua
* [Fix] Set terminated state before calling of async free
* [Fix] Simplify MISSING_MIMEOLE rule
* [Fix] Simplify state machine by ignoring multiple spaces
* [Fix] Skip setting RPATH for static builds
* [Fix] Slightly reduce weights of rules with high FP rate
* [Fix] Some fixes to libmagic initialization
* [Fix] Some more fixes to ratelimit plugin
* [Fix] Strip '\r\n' properly
* [Fix] Switch hashes to mumhash
* [Fix] Treat NaN values properly in graph command
* [Fix] Try to avoid FP when checking for phished URLs
* [Fix] Try to avoid recursive events deletions
* [Fix] Try to fix false positive URL detections in text parts
* [Fix] Try to fix issue in redis stats backend when task is closed
* [Fix] Try to fix proxying of stupid spamc protocol to HTTP mirrors
* [Fix] Try to fix redis crashes
* [Fix] Try to fix upstreams with one element
* [Fix] Try to handle multiline history in a more sane way
* [Fix] Unbreak build on gcc < 4.9
* [Fix] Update RPM spec/sources (#700)
* [Fix] Update d3evolution version
* [Fix] Update mumhash implementation
* [Fix] Use custom error function for pre and post filters
* [Fix] Use new postfilters and prefilters API in the plugins
* [Fix] Use non-blocking mode for systemd sockets
* [Fix] Use shared memory merely for local backends in the proxy
* [Fix] Use watchers for spf plugin
* [Fix] Varioud fixes to the maps code
1.2.8:
* Another fix for exim workaround (#637)
* Fix unencrypted passwords processing in the controller
* Fix setting path for lua (#652)
* Fix usage of rdns reply structure (#654)
* Use file lock in logger to avoid deadlocks
* Add `application/octet-stream` mime type for `pdf` extension (by @moisseev)
* Implement new automata to skip empty lines for dkim signing (#651)
* Fix parsing of missing classes
* Clarify some rspamc arguments (by @fatalbanana)
* Correct suppress spelling
1.2.7:
* Slightly reduce weights of rules with high FP rate
* Add workround for rspamd-1.3
* Fix possible FP in TRACKER_ID rule
* Simplify MISSING_MIMEOLE rule
* Add workaround for gmime CTE stupidity
* Fix mime headers processing
* Fix false positive URL detections in text parts
* Fix Exim shutdown patch
* Enable workaround for exim mailbox format
* Backport shingles static test
* Fix levenshtein distance calculations
* Fix max_train setup in ANN module
* Fix redis structure by adding {NULL, NULL} member
* Fix build with unmodified LibreSSL opensslv.h
* Repair optional dependencies
* Really skip filters in case of pre-result set
* Restore the intended pre-filters behaviour
* Fix ipv6 mask application
1.2.6:
* Fix parsing of URLs in texts
* Fix creating of URLs from LUA
* Fix some more URL detector issues
* Fix unit tests
* Fix JIT compilation for PCRE2 expressions
* Fix JIT usage for PCRE2
* Fix UTF8 mode in PCRE2
* Add workaround for pre-historic compilers (#605)
* Fix and rescore R_PARTS_DIFFER logic
* Properly set lua paths for tests
* Fix SA rawbody processing - exclude top part
* Store text parts content with newlines stripped
* Properly support SA body regexps
* Fix body rules in SA plugin
* Fix setting of score for parts differ
* More fixes to parts distance calculations
- Use hashed words instead of full words for speed
- Improve levenstein distance calculations and penalise replaces
- Always return number from 0 to 1
- Use g_malloc instead of alloca
* Fix percents output in R_PARTS_DIFFER
* Plug memory leak in dkim module
* Plug minor memory leak in regexps creation
1.2.5:
* Plug an important memory leak in headers getting code
* Remove some bad domains from whitelists
1.2.4:
* Implement new multipattern matcher that uses hyperscan if possible
* Use mutlipattern for lua_trie code
* Add utility methods for multipattern
* Use multipattern in url matcher
* Add escape functions for hyperscan
* Allow to optimize lua -> C transition by flattening table args
* Optimize hot paths in SA plugin
* Optimize rspamd_re_cache_type_from_string
* Allow empty tries
* Fix extraction of URLs from Subject
* Allow to have different flags for different patterns in multipattern
* Add common directory for hyperscan cache to config
* Implement caching for hyperscan multipattern
* Attach domain part to `R_SUSPICIOUS_URL` (by @moisseev)
* Allow multipattern scans to be nested for the case of hyperscan
* Simplify SURBL redirector search code and avoid ac_trie
* Add two way substring search algorithm
* Avoid acism usage to find gtube pattern
* Fix processing of empty headers
* Allow to disable pthread mutexes on broken platforms
* Make web interface not send password in query strings (#585) by @fatalbanana
* Add maximum delay to ratelimit module
* Backport fix for empty files inclusion from libucl
* Fix settings id setup
* Add min_learns option to classifiers
* Use more clever to utf8 conversion strategy
* Fix disabling of virtual symbols in the settings
* Rework settings to work properly in metric-less configuration
* Set the default limit for classifier
* Fix ttl based expiration from LRU cache
* Rework DKIM module to use OpenSSL for digests
* Fix mailto urls parsing with hyperscan
* Do not set obscured flag for urls starting with spaces
* Fix crash on redis learn
* Fix ratelimit ctime setting
1.2.3:
* New DCC module (by @smfreegard)
* Rework whitelist module:
- Now we check different elements for different checks
- MIME from for DMARC
- DKIM signature domain for DKIM
- SMTP from or HELO for SPF
* Fix regexps results combination (*critical*)
* Fix issue with expressions processing (*critical*)
* Optimize strlcpy for aligned input
* Add support of half-closed connection in lua_tcp
* Allow to print compact json in client
* Save required score in history (#581)
* Allow to attach file descriptors to control commands
* Allow to send descriptors from workers to main
* Allow to attach fd when broadcasting to workers
* Implement log pipe feature for rspamd logs analysis
* Add `log_helper` worker
* Add `URIBL_SBL_CSS` (by @smfreegard)
* Add worker scripts functionality
* Add on load hooks for rspamd_config
* Add lua scripts for log_helper worker
* Add generic maillist detector (#584)
* Implement FANN autolearn using log_helper worker
* Rework metrics configuration to allow includes
* Change default value of forced removal in composite rules
* Allow to use assembly version of blake2b on x86 cpu
* Use less precise (but faster) clock if possible
* Insert redirected URL to the urls list
* Allow to get and set callback data for rspamd symbols
* Add binary heap implementation
* Use binary heap for expire algorithms in the hash
* Use `least frequent used` expiration strategy
* Allow to get mime headers from a task
* Add support for mime headers in `regexp` module
* Update Exim patches (by @fatalbanana)
* Allow building rspamd with jemalloc
* Save multipart boundaries
* SA plugin changes:
- Properly handle MIME headers
- Fix eval:check_for_missing_to_header rule
- Implement SA compatible body regexps
- Use sabody rules in SA plugin
* LUA API changes:
- Add util.get_ticks function
- Add util.stat function
- Add task:get_symbols_numeric method
- Add method to get number of symbols in the cache
- Add lua methods to get redirected urls
- Allow to get callbacks for lua symbols
- Add config:set_symbol_callback function
1.2.2:
* Use HTTP Content-Type on non mime input if possible
* Save log level when compressing log messages
* Further rework of composite rules (add '^' prefix)
* Add tracking for rspamd expressions
* Store actions limits in metric result
* Fix parsing of include/redirect with many records in SPF
* Add method to disable symbols execution in the cache
* Allow to disable checks from settings
* Allow to select settings by id in HTTP query
* Find URLs with '\r' and '\n' inside href attribute
* Implement vectored mode for hyperscan (experimental)
* Improve client connection errors diagnostics
* Allow to edit new files with signtool
* Improve hashes performance on 32 bit platforms
* Fix sorting of limits
* Remove slow and unused rules `INVALID_EXIM_RECEIVED*`
* Add expression:process_traced lua method
* Allow tables in task:insert_result
* Save trace for SA metas
* Do not parse broken TLD parts in URLs
* Investigate many border cases in URLs parser
1.2.1:
* Add list support to `mime types` module configuration (by @moisseev)
* Allow symbols params to be printed in logs
* Fix `MIME_BAD_ATTACHMENT` false positives for MDN/DSN
* Fix crashes on arm32
* Do not classify message if some class is missing
* Fix cryptobox cleanup
* Remove multipart/report from bad mime types (#569)
* Improve logging for fuzzy hashes
* Show map URLs in webui
* Sort symbols in webui
1.2.0:
* New dynamic updates plugin
* Regular expressions map support
* Faster radix trie algorithm
* Faster siphash for AVX2 supporing CPUs (used in fuzzy hashes)
* PCRE2 support
* Allow quoted and slashed keys in map
* Add proper support of DNS resolvers balancing (#552)
* Rework includes and configuration system for better local changes support
* New keypairs framework for signing and encryption
* Added support for dynamic modules and workers
* Allow to dump configuration with help comments
* Rework once_received module
- Fix priority for `good_hosts`
- If a good host has been found do not add once_received symbols
- Fix priorities for strict once_received
- Add ability to whitelist IP addresses
* Implement support of signed maps for HTTP and file maps
* Add command to sync fuzzy storage (#533)
* Rework system of symbols and actions registration
It is possible now to use priorities when adding symbols to metrics and
override scores for symbols with lower priority with the scores with
high priority.
* Add auth support and db selection for redis stats
* Improve composite rules application
* Add ignore_received option
* Fix critical issue with inconsistent resorting
* Fix `all` in spf redirects
* Add punycoded versions for IDN domains (#554)
* Improve sorting order for symbols cache
* Add lockless logging for processes management
* Allow to specify flags for metric symbols
* Load images height and width from style attribute (#538)
* Override DNS requests limits for SPF and DKIM
* Fix resetting symbols to their default values in WebUI
* Improve configuration agility for redis stats
* Allow to set db and password for redis in stat_convert
* Import the latest libucl
* LUA API changes:
- Add rspamd_version function to LUA API
- Add lua_cryptobox module
- Add lua_map module
- Add task:set_metric_action lua API method
- Fix race condition in lua_tcp module
- Fix a lot of issues in lua_redis module
- Rework and abstract lua maps API
- Add util.strlen_utf8 lua function
- Add lua functions for caseless comparison
- Allow optional symbols registration
- Add config:add_map table form method, add regexp maps
- Add task:has_urls method
- Add task:has_flag method
- Add html tags methods to lua_html
- Add task:get_dns_req
* Plugins changes:
- Add support for WLBLEval SA plugin
- Use caseless comparison in SA and DMARC plugins
- Allow SA plugin to set scores for rspamd symbols
- Add regexp maps support to multimap
- Allow filenames match in multimap
- Add more filters for the existing map types
- Fix html images rules to reduce FP rates
* New rules:
- LONG_SUBJ - too long subject
- MIME_BAD_ATTACHMENT - bad attachement type
- RDNS_NONE - no reverse DNS record for sender's IP
- Fix MISSING_MIMEOLE rule for modern OE
* Many other bugfixes, memory leaks plugs thanks to:
- Coverity scan
- New gcc-6 warnings
- valgrind manual iterations
* Documentation improvements:
- FAQ list: https://rspamd.com/doc/faq.html
- Reworked quick start guide
- Added documentation for all active modules
* Other changes:
- Dropped Ubuntu Vivid support
- Added Ubuntu Xenial support
- Rework build system for rspamd and rmilter
1.1.4:
* Print traceback on lua errors in lua config
* Fix leaks in lua error paths
* Improve 'R_EMPTY_IMAGE' rule
* Fix metas memoization in SA plugin
* Properly set `flag` in fuzzy replies
* Fix arguments order
* Fix issue with out-of-boundary reading
* Fix issues found by coverity
* Same result checking error found by coverity
* Fix varargs processing (found by coverity)
* Fix error in printing hex
* Reduce weights for some hfilter patterns
* Add aliases for task:get_from_ip:
- task:get_addr
- task:get_from_addr
- task:get_ip
* Rework once_received module
- Fix priority for `good_hosts`
- If a good host has been found do not add once_received symbols
- Fix priorities for strict once_received
- Add ability to whitelist IP addresses
* Fix `MISSING_MIMEOLE` rule for modern OE
* Treat meta tags as embedded tags (#501)
1.1.3:
* Fix DSN rules when SMTP from is unavailable
* Fix statconvert routine to avoid lua module usage
* Set a sane quark for configtest to avoid NULL to be printed in logs
* Support c11 if available
* Fix parsing of ip:port strings
* Add more diagnostic for lua subr errors
* Fix task:set_from_ip lua method
* Add basic routines for digital signatures
* Add tool for digital signatures
* Add plain open file API method for atomic open
* Fix parsing nested braces inside logger vars
* Pre filters now actually skip processing
* Add pre-filter mode for multimap
* Switch to apache 2 license
1.1.2:
* Fix stat_cache closing
* Add checkpoints to sqlite3 learn cache
* Do not recompile lua generated headers all the time
* Increase number of messages learned
* Fix issues with dual stack and hfilter
* Disable MID checks for hfilter by default
* Fix cache definitions in multiple classifier and no type
* Don't crash if learn cache failed to initialize
* Fix googlegroups support in maillist plugin
* Rework flags LUA API:
- Allow to check for a specific flag
- Add `learn_spam`, `learn_ham` and `broken_headers` flags
- Unify internal functions
* Add `BROKEN_HEADERS` rule
* Add support for forged confirmation headers (by @AdUser)
* Allow `any`, `mime` and `smtp` for get_from/get_recipients
* Add mime types checking plugin
* Add rule to detect spammers attempts to cheat mime parsing
* Rework parsing of IP addresses in configuration (better IPv6 support)
* Add `util.parse_mail_address` function to LUA API
* Add lua sqlite3 module
* Implement synchronous redis call
* Ratelimit: avoid possible indexing of nil value (Fixes#498) (by @fatalbanana)
* Add stat_convert command to convert stats tokens from sqlite3 to redis
* Implement redis advanced lua api with pipelining
* Fix memory leak on redis stat (#500)
* Fix user/language learn count in sqlite statistics (#496) (by @fatalbanana)
* Fix build with custom pcre
* Fix fuzzy relearning (#498)
* Improve planning of asynchronous tasks
* Show slow rules in log
* Add warning for slow regexps
* Add base32 decode/encode routines to lua util
* Allow converting of learn cache from sqlite to redis
* Add methods to check if a messages has from/rcpts
* Improve and fix multimap plugin:
- Restore 'header' maps
- Add filters for headers
- Add 'email:addr', 'email:user', 'email:domain' and 'email:name' filters
- Add generic regexp filters
* Disable reload command in rc scripts
* Improve runtime CPU dispatcher for libcryptobox
* Add preliminary support of digital signatures via ed25519
* Add detection for RDRAND support
* Print configuration of crypto on start
* A in SPF presumes AAAA lookup as well
1.1.1:
* Fix duplicated XBL symbol
* Reduce log severity for ratelimit missing servers
* Fix XBL composite to avoid duplicate symbols
* Reduce weight of URL_ONLY rule due to FP rate
* Disable fuzzy hashes from the metadata for now
* Fix processing of empty messages (#486)
* Always treat DNS timeouts as temporary fail for SPF
* Fix issue with SPF double IP stack (#483)
* Use X-Forwarded-For when checking secure_ip (#488)
* Fix hash calculation for sqlite stats
* Fix memory corruption on punycode
* Fix strings allocation in punycode
* Fix error message (#491)
1.1.0:
* Incompatible change: sqlite3 and per_user behaviour:
Now both redis and sqlite3 follows the common principles for per-user
statistics:
1) If per-user statistics is enabled check per-user tokens ONLY
2) If per-user statistics is not enabled then check common tokens ONLY
If you need old behaviour, then you'd need to use separate classifier
for per-user statistics.
* Implement redis statistics backend and cache
* Implement autolearning for statistics
* Reworked statistics architecture from scratch
* Add hyperscan (https://github.com/01org/hyperscan) engine for regular
expressions:
- add lazy loader for hyperscan databases
- rework regexp cache to have joint pcre/hyperscan scanning
- implement hyperscan pre-filter support
- add compilation guards for bad expressions
- implement `rspamadm control recompile` command
- implement hyperscan cache monitoring
- slides: <https://highsecure.ru/rspamd-hyperscan.pdf>
* Implement flexible task logging
* Rework fuzzy worker:
- it is now possible to run multiple fuzzy workers;
- implement lazy writing as sqlite3 is bad at concurrent writing;
- add retries for simple sql commands in fuzzy backend;
- use fine-grained transactions for fuzzy;
- implement new multi-pubkeys mode;
- allow encrypted only storages;
- rework statistics for fuzzy;
- add `rspamadm control fuzzystat` command for extended statistics;
- implement human readable output for the previous command;
- add condition script for learning fuzzy storage;
* Various fixes to SPF:
- fix `redirect` records;
- fix domains when parsing mx/ptr/a records in includes/redirects;
- fix issues with multiple addresses in SPF records;
- ignore SPF results in case of DNS failure;
- adjust TTL of records when resolving subelements of SPF records;
- always select `v=spf1` line if it is available
- do not cache records with DNS failure in subrequests;
- ignore records with temporary fails during subrequests resolving;
- fix `RDNS_RC_NOREC` support;
* Add clang plugin for static analysis:
- implement static checks for `rspamd_printf` format strings;
* Add 'allow_raw_input' option for non-mime messages
* Recognize types using libmagic
* Fix parsing of IPv6 received headers
* Add new interface of communication between workers in rspamd
* Add support for named socketpairs
* Don't write URLs by default as it is too verbose
* Set status for HTTP replies
* Try load `rspamd.conf.override`
* Implement words decaying for text parts to limit many checks
* Improve support of SA rules and plugins:
- add check_for_shifted_date and check_for_missing_to_header eval rules;
- add 'check_relays_unparseable' support;
- add `check_for_mime('mime_attachement')` function;
- use new re_cache interface for all SA rules;
- add support for `Mail::SpamAssassin::Plugin::MIMEHeader`;
- add support of 'special' SA headers to `exists` function;
- fix issue when SA metas contain other metas;
- fix freemail rules;
* Many fixes to the URL parser
* Match any newline character in regexps
* Fix resolving of upstreams and detection of poor IPv6 configurations
* Parse upstreams selection algorithm from the configuration line
* Add `reresolve` command to the control interface
* Generate fuzzy hashes from task metadata (URLs and headers)
* Add method to check if IP is local and `local_addrs` option
* Implement forced timeout for delayed filters
* Disable fast path of pcre-jit as it seems to be broken
* Bayes fixes:
- new normalizer function;
- really use weights of tokens from the OSB algorithm;
- restore multiple classifiers support;
* Rules changes:
- add `R_SUSPICIOUS_URL` rule that detects obfuscated URL's;
- improve empty image rule;
- rework `FORGED_RECIPIENTS` rule;
- reduce weight of `SUSPICIOUS_RECIPS`;
- fix `*_NORESOLVE_MX` symbols in hfilter;
- add `SUBJ_ALL_CAPS` rule with support of UTF8
- add spamhaus SBL to uribl
- fix `SUSPICIOUS_RECIPS` and `SORTED_RECIPS` rules
- remove `R_TO_SEEMS_AUTO` as it generates a lot of FP;
- add new Message-ID regexp for Thunderbird (by @moisseev);
* Plugins changes:
- allow ratelimit plugin to set symbol instead of pre-result
- support IP DNS black lists for URIBL (e.g spamhaus SBL);
- drop deprecated SURBL bits (by @fatalbanana)
- rename `JP_SURBL_MULTI` to `ABUSE_SURBL` (by @fatalbanana)
- add `SURBL_BLOCKED` (by @fatalbanana)
- add `CR_SURBL`
- SURBL: allow fallthrough to default symbol (by @fatalbanana)
- Settings: fix IP match (by @fatalbanana)
- SURBL: add missing symbols to metric (by @fatalbanana)
- allow processing images urls for SURBL
- unconditionally disable SPF for authenticated users and local networks
* Rework ratelimit plugin
- switch to `rates` instead of old and stupid strings to setup;
- check if a bucket is zero and disable the corresponding limits'
- turn off all buckets by default;
- check either `rcpt` or `user` buckets, not all together'
- document new `rates` and `symbol` options;
- inform user about what buckets are used in the configuration;
* Add neural network **experimental** plugin
* Add a sample script to learn neural network from rspamd logs
* Add documentation strings support to rspamd:
- add strings for the main configuration options;
- document workers options;
- add internal plugin options;
- create `rspamadm confighelp` routine;
- implement human readable output for the previous command;
- add subtree search support;
- add keyword search support;
* Documentation improvements, tutorials section, statistics description
* Many other minor and major bugfixes not noted here
1.0.11:
* Fix spf redirects
* Fix domains when parsing mx/ptr/a records in includes/redirects
* Fix unfolded base64 encoding
* Fix GError use-after-free
* Do not rewrite the original url when using redirector
* Fix parsing of fragment in urls
* Fix processing of HTML tags
* Improve empty image rule
* Avoid long double type
* Fix tokens weights in OSB algorithm
* Improve debugging for bayes
1.0.10:
* Fix settings application (#416)
* Fix another issue with fixed strings
* Fix hash function invocation
* Use the proper string for make_dns_request in lua_http
* Fix scan time output
* Update webui:
- fix labels for greylisting
- fix dimension of scan time
1.0.9:
* Emergency fix in keyed blake2 to fix fuzzy hashes and encrypted password
* Support passwords longer than 64 symbols
1.0.8:
* Add function to traverse AST atoms
* Allow dependencies on rspamd symbols for SA metas
* Fix memory corruption when timeout is removed in fuzzy check
* Fix encrypted fuzzy add processing
* Avoid use-after-free in controller session destructor
* Use session pool instead of task pool in fuzzy check
* Fix assembly in i386 mode (#413, #412)
1.0.7:
* Plugged memory leaks in internet address object & html parser
* Fixed static build
* Fixed multiple sigchld processing
* Fixed deletion of signal events after event processing loop
* Fixed build on ARM (#404 - reported by @Gottox)
* Fixed setting the default mask for SPF.
* Fixed sanitisation of HTTP query values
* Fixed parsing of the last header in encrypted HTTP messages
* Additions and fixes for test suite & benchmarks
* Added openssl aes-256-gcm support to libcryptobox & HTTP server
* Implemented support for starting multiple HTTP servers
* Implemented batch accept in HTTP server
* Added module to get data from HTTP headers (#285 - reported by @msimerson)
* Added `rspamadm control` command
* Added ability to sort counters output.
* Added ability to specify custom headers for rspamc client
* Fix architecture detection
* Converted history storage to the UCL format
* Allow flexible number of rows in history
* Fix action badges in WebUI
* Add universal cryptobox hash API
* Migrated to the optimized blake2b implementation adopted from Andrew Moon
* Allow explicit loading of specific modules
* Always load settings module
* Allow to add symbols from settings
* Fix double free in the controller fuzzy learn command
* Avoid endless loop when cannot open sqlite db
* Updated libucl
1.0.6:
* Fix build on i386
* Update CentOS7 service file patch (by @fatalbanana)
* Fix path to rspamadm in Debian init script (by @fatalbanana)
* Fix broken '_SC_GETPW_R_SIZE_MAX' on FreeBSD
* Fix portability issues
* Use cryptobox chacha for libottery
* Better support of 32 bit builds
* Fix header name tokens setup
* Fix levenstein distance method for words
* Add workaround for old libevent (#400)
* Fix microseconds in termination timer
* Fix some more issues with fixed strings
* Explicitly test CPU instructions even after CPUID call
* Do not check out of boundary memory
* Do not output broken emails
* Fix unknown symbols registration
* Handle SIGILL using longjmp
* Block signals when exiting event loop
* Fix incorrect allocation size
* Slightly optimize alignment
* Restore rspamd -t for compatibility
* Add more sanity checks for emails
1.0.5:
* Add rspamd control interface:
- support `stat` command to get runtime stats of rspamd workers
- support `reload` command to reload runtime elements (e.g. sqlite3 databases)
* Rework curve25519 library for modular design:
- add Sandy2x implementation by Tung Chou
- fix CPU detection for variables loading assembly
- add testing for curve25519 ECDH
* New fixed strings library
* Add `R_SUSPICIOUS_IMAGES` rule
* Enable mmap in sqlite3
* Use new strings in the HTTP code
* Improve google perftools invocation
* Improve performance profiling in http test
* Reorganize includes to reduce namespace pollution
* Allow specific sections printing in configdump command
* Rework workers signals handlers to be chained if needed
* Update socketpair utility function
* Add control_path option for rspamd control protocol
* Fix ownership when listening on UNIX sockets
* Rework signals processing in main
* Remove extra tools from rspamd (they live in rspamadm now)
* Remove global rspamd_main
* Add global timeout for the overall task processing (8 seconds by default)
* Sanitize NULL values for fuzzy backend
* Store NM between encrypt/decrypt
* Add textpart:get_words_count method
* Fix generic DNS request in lua
* Tune hfilter weights
* Add support of IPv6 in hfilter
* Fix parsing of HTTP headers with IP addresses
* Sync with the recent libucl
* Various minor bugfixes
1.0.4:
* Add configdump routine to rspamadm
* Implement retransmits for fuzzy_check plugin
* Fix events processing for learning anf checking fuzzy hashes
* Avoid dependency on unneeded and uncompatible glib include
* Add `historyreset` command to the controller
* Fix loading of tokenizer config from dump (#389)
* Add sorting hints for the history
* Allow custom lua scripts for users/languages extraction (#388)
* Do not add FORGED_RECIPIENTS when 'To' is missing (#387)
* Do not add R_UNDISC_RCPT when 'To' is missing (#387)
* Add encryption to fuzzy check plugin
* Add encryption for fuzzy storage
* Add new epoch for encrypted fuzzy request
* Add encryption for `rspamd.com` storage
* Remove gmime processing for LDA mode as it is deadly broken
* Add routine to find end of headers position in mime messages
* Fix LDA headers folding
* Init libraries in rspamc client as well to avoid locale issues
* Avoid collision with locally installed includes
* Allocate and free memory with the same allocator in rspamadm (#385)
* Preserve expired fuzzy hashes counter
* Improvements in webui:
- Add favicon.ico
- Rework history table
- Fix sorting for the history
- Migrate to bootstrap 3 and jquery 2
- Fix css bugs
- Add glyphicons
- Add reset history
- Improve history buttons
- Redraw graph to avoid display issues
- Webui is now MIT licensed to match licensing policy of rspamd
1.0.3:
* Fix piechart clean slice (#380)
* Fix controller crashes when GString is reallocated (#381)
* Correctly set locale before start
* Set C locale for numeric values
* Add rspamadm routine:
- add `pw` command to manage passwords
- add `help` command for displaying help
- add `configtest` command to check configuration files
- add `keypair` command for generating encryption keys
- add `fuzzy_merge` routine to merge fuzzy sqlite databases
- add a simple manual page for rspamadm
* Allow metric registration for composite expressions
* Add strict mode for configtest
* Add logger counters
* Save and show learned messages count (#383)
* Add `no_stat` flag
* Add `task:set_flag` and `task:get_flags` (#382)
* Enable foreign keys in sqlite3
* Remove orphaned shingles from fuzzy storage
* Optimize synchronization steps for fuzzy storage
* Allow delayed conditions registration
* Add lua API for conditions registering
1.0.2:
* Fix critical bug in webui that prevents password from being sent
* Rework webui view:
- Switch to d3.js for graphs
- Improve piechart look
- Rework colors for piechart
- Fix layout for symbols
- Fix refresh button
* Add descriptions for whitelist maps
* Fix build on arm (#379)
* Fix issue with the last element in the radix trie
* Add more tests for radix trie algorithm
* Allow to extract URLs from query strings of other URLs (#361)
* Initialize rrd fields before writing to file
* Fix double free if no password has been specified
1.0.1:
* Add writing to rrd from the controller
* Fixed lots of bugs in rrd code
* Adopt new DNS API in hfilter plugin (by @AlexeySa)
* Allow only one controller process to manage rrd file
* Set event base for fuzzy calls
* Improve fuzzy IO errors logging
* Add rra extraction function to rrd library
* Add graph handler to the controller
* Cache correct passwords to avoid too high CPU usage when working with webui
* Controller sockets are owned by router do not export them to task
* Optimize logging by skipping hash table search if it's empty
* Fix loading issue whith broken statfiles
* Print assertions from glib to rspamd logger
* Load legacy `lua/rspamd.local.lua`
* Update webui with some fixes to learning and scanning
1.0.0:
* Rework symbols processing:
- Improve sorting logic for symbols
- Organize processing into multiple stages
- Added asynchronous watchers for symbols
- Added ability to organize dependencies between symbols
* Fixed URL redirector:
- Use optimized POE loop
- Organize dependencies
- Fix startup
* New sqlite3 backend:
- Allow to have per-languages and per-user statistics
- Allow sqlite3 to be used as statistics backend
* Store tokenizer configuration within statfiles
* Improve bayes statistics:
- Use headers and images metainformation in bayes
- Suggest using of pre-processed tokens for statistics
- Fix tokens normalization for OSB algorithm
* Rewrite url parsing:
- Fix numerous issues with url extraction and normalization
- Fix mailto urls
* Fix settings plugin to allow custom actions scores
* Improve rbl plugin
* Allow capturing patterns in rspamd lua regexp library
* Add GTUBE support
* Fix spamc legacy support
* Add DKIM support to RBL module
* Fix issues with multiple DKIM signatures
* Fix issue if rspamd cannot create statfiles (#331)
* Rework parts and task structure:
- Now text_parts, parts and received are arrays
- Pre-allocate arrays with some reasonable defaults
- Use arrays instead of lists in plugins and checks
- Remove unused fields from task structure
- Rework mime_foreach callback function
- Remove deprecated scan_milliseconds field
* Add ip_score plugin support (not enabled by default):
- Can check for asn/country and network using DNS lookups
- Can store and load reputation from redis server
* Improve PARTS_DIFFER rule to count merely different words
* New HTML parser:
- Parses HTML parts using a set of state machines
- Extracts useful data and exports it to lua functions:
+ Styles
+ Images
+ URLs
+ Colors
+ Structure elements
- Added HTML rules for some checks
* New version of LUA DNS API
* Table versions of many functions in LUA API
* Improve rspamc client:
- Print execution time
- Allow executing of external commands and passing output to them
- Allow mime output mode when rspamc alters message according to rspamd
checks and send it to an external command or stdout
* Allow scanning of local files using HTTP requests
* Rework configuration system:
- Rules are now moved from the $CONFDIR to $RULESDIR to avoid ambiguity
- All modules configurations are now split in $CONFDIR/modules.d/* to
simplify upgrades
- Move hfilter to plugins
- Allow plugins and rules to define default scores to simplify metrics
setup
- Include overrides for all modules to honor local/automatic parameters
- Tune scores for many modules
* Rework and enable DMARC plugin
* Add whitelist plugin for SPF/DKIM/DMARC based whitelisting
* Add some common domains to whitelists shipped with rspamd
* Rework logging:
- Now each log entry supports module name and a `tag`. Tag is used to
identify unique objects (such as tasks) when checking log files
- It is possible to turn on debugging for the specific modules
- Systemd logging is fixed
* Improve spamassassin plugin.
- Now headers are matched more like SA
- Improve support of Message-ID
- Add support of ToCc header type
- Fix :addr and :name in headers regexps
* Resurrect rrd support code
* Save controller stats between restarts
* Fixed tonns of bugs
* Added tonns of minor improvements and features
* Added more unit tests
* Create functional tests framework
* Added documentation for missing modules
* Added rpm/deb repositories and scripts
* Updated WebUI and libucl externals
1.7.0 (2016-08-18):
! Improved alignment when using multi-column characters with
soft-fill (%*X) and right-justified (%>X) format strings.
+ The COLUMNS environment variable will be set to the width of the
pager when invoking display filters. This can be used in
copiousoutput mailcap entries to allow their output to match the
pager width.
+ The sidebar patch has been merged. Please watch for airborne
bovine. See the documentation for all the options, or simply
enable it with 'set sidebar_visible'.
+ $mail_check_stats and $mail_check_stats_interval control whether,
and how often, to scan for unread, flagged, and total message
counts when checking for new mail in mailboxes. These statistics
can be displayed in the sidebar and browser.
+ $trash, when set, specifies the path of the folder where mails
marked for deletion will be moved, instead of being irremediably
purged.
+ The <purge-message> function can be used to delete an entry and
bypass the trash folder.
+ $folder_format has new format strings %m and %n, to display
total and unread message counts for mailboxes. Note that
$mail_check_stats should be enabled to use these.
! When browsing IMAP, %N will now display 'N', instead of the unread
message count. Please use %n to display unread messages.
2016-08-19 Richard Russon <rich@flatcap.org>
* Contrib
- Updates to Keybase Support
Joshua Jordi (JakkinStewart)
* Bug Fixes
- Fix data-loss when appending a compressed file
- Don't paint invisible progress bars
- Revert to Mutt keybindings
- Don't de-tag emails after labelling them
- Don't whine if getrandom() fails
Adam Borowski (kilobyte)
- Fix display when 'from' field is invalid
* Config
- Support for $XDG_CONFIG_HOME and $XDG_CONFIG_DIRS
Marco Hinz (mhinz)
* Docs
- Fix DocBook validation
- Document NotMuch queries
* Build
- More Autoconf improvements
Darshit Shah (darnir)
- Create Distribution Tarballs with autogen sources
Darshit Shah (darnir)
2016-08-08 Richard Russon <rich@flatcap.org>
* New Features
- Timeout Hook - Run a command periodically
- Multiple fcc - Save multiple copies of outgoing mail
* Contrib
- Keybase Integration
Joshua Jordi (JakkinStewart)
* Devel
- Attached - Prevent missing attachments
Darshit Shah (darnir)
- Virtual Unmailboxes - Remove unwanted virtual mailboxes
Richard Russon (flatcap)
* Bug Fixes
- Sidebar's inbox occasionally shows zero/wrong value
- Fix crash opening a second compressed mailbox
* Config
- Look for /etc/NeoMuttrc and ~/.neomuttrc
* Docs
- Fix broken links, typos
- Update project link
- Fix version string in the manual
* Build
- Add option to disable fmemopen
- Install all the READMEs and contribs
- Big overhaul of the build
Darshit Shah (darnir)
Only call write_index() after calculating bodysum, otherwise it uses
the initial value of 0.
While I have not tested this patch myself, the need for it is clear.
Patching in pkgsrc as this package does not have an upstream.
Bump PKGREVISION.
mime-types-data provides a registry for information about MIME media
type definitions. It can be used with the Ruby mime-types library or
other software to determine defined filename extensions for MIME
types, or to use filename extensions to look up the likely MIME type
definitions.
2016-07-23 Richard Russon <rich@flatcap.org>
* New Motto: "Teaching an Old Dog New Tricks"
- Thanks to Alok Singh
* New Features
- New Mail Command - Execute a command on receipt of new mail
- vim-keybindings - Mutt config for vim users
- LMDB: In-memory header caching database
- SMIME Encrypt to Self - Secure storage of sensitive email
* Bug Fixes
- rework mutt_draw_statusline()
- fix cursor position after sidebar redraw
- Add sidebar_format flag '%n' to display 'N' on new mail.
- fix index_format truncation problem
- Fix compiler warnings due to always true condition
- Change sidebar next/prev-new to look at buffy->new too.
- Change the default for sidebar_format to use %n.
- sidebar "unsorted" order to match Buffy list order.
- Include ncurses tinfo library if found.
- Sidebar width problem
- sidebar crash for non-existent mailbox
- Temporary compatibility workaround
- Reset buffy->new for the current mailbox in IMAP.
- version.sh regression
- crash when notmuch tries to read a message
- status line wrapping
* Docs
- Mass tidy up of the docs
- Fix xml validation
- Add missing docs for new features
* Travis
- New build system:
https://github.com/neomutt/travis-build
Now we have central control over what gets built
2016-07-09 Richard Russon <rich@flatcap.org>
* Bug-fixes
- This release was a temporary measure
Notmuch 0.22.1 (2016-07-19)
===========================
Library
-------
Correct the definition of `LIBNOTMUCH_CHECK_VERSION`.
Document the (lack of) operations permitted on a closed database.
Test Suite
----------
Fix race condition in dump / restore tests.
Notmuch-Mutt
------------
Use `env` to locate perl.
Emacs
-----
Tell `message-mode` mode that outgoing messages are mail
This makes message-mode configuration behave more predictably.
Respect charset of MIME parts when reading them
Fix previous assumption that everyone uses UTF-8.
Changelog:
Fixed Invitations to events could not be printed.
Fixed Dragging and dropping of contacts from the contact list onto an addressbook while All Addressbooks is selected moved only one contact
Fixed Falsely reported not enough disk space during compacting
Fixed Links were not always detected properly in the message body (terminated early on "|", some long links not detected at all)
Fixed in Thunderbird 45.2
2016-49 Miscellaneous memory safety hazards (rv:47.0 / rv:45.2)
Upstream changes:
0.902 2016-07-11
** PLEASE CONSIDER USING EMAIL-SENDER INSTEAD **
- Fixed multiple $VERSION variables, GH #2. Thanks, Pavel.
- Addressed some testing issues with bad SMTP host.
- Turned off uninitialized warnings until they can all be resolved.
- Let DZil version the CType:: classes
- Removed unused EXPORT_OK option
0.901 2016-06-29
** PLEASE CONSIDER USING EMAIL-SENDER INSTEAD **
- Fixed a bug introduced in 0.900 where the auth method call pointed to the
wrong scope.
0.900003 2016-06-10
** PLEASE CONSIDER USING EMAIL-SENDER INSTEAD **
- Fixed conditional dependencies
- Fixed locale specific testing
- Fixed the Changes file
- Added some git helper files for the repo
- Reorganized the PM files into the lib directory
- Auto-generate MANIFEST using MANIFEST.SKIP from here on
- Ensure all files EOL with \n rather than any combination of \n and \r\n
- Renamed many undocumented/private functions to names beginning with _
- Added many, many tests for coverage and to prevent regressions
- Updated Config.PL to modernize.
- Lazily load Win32API::Registry for ::CType::Win32
What is NeoMutt?
* NeoMutt is a project of projects.
* A place to gather all the patches against Mutt.
* A place for all the developers to gather.
Hopefully this will build the community and reduce duplicated effort.
v0.4.15 07-07-2016 Stephan Bosch <stephan@rename-it.nl>
* vacation extension: The sieve_user_email setting is now used in the check
for implicit delivery.
- imapsieve plugin: For any mail transaction, the mailbox was opened a second
time, even if no mailbox rule matched. This was unintentional, useless and
caused problems when the imapsieve plugin was used with other plugins like
acl.
- extprograms plugin: Significantly improved error handling. No stream errors
were logged.
- extprograms plugin: Fixed bug in handling of result code from remote program
(script service).
- extprograms plugin: Connection to remote program service was not retried.
- Several small fixes based on static analysis.
- Fixed handling of quoted string localparts in email addresses.
* lmtp: Start tracking lmtp_user_concurrency_limit and reject already
at RCPT TO stage. This avoids MTA unnecessarily completing DATA only
to get an error.
* doveadm: Previously only mail settings were read from protocol
doveadm { .. } section. Now all settings are.
+ quota: Added quota_over_flag_lazy_check setting. It avoids checking
quota_over_flag always at startup. Instead it's checked only when
quota is being read for some other purpose.
+ auth: Added a new auth policy service:
http://wiki2.dovecot.org/Authentication/Policy
+ auth: Added PBKDF2 password scheme
+ auth: Added %{auth_user}, %{auth_username} and %{auth_domain}
+ auth: Added ":remove" suffix to extra field names to remove them.
+ auth: Added "delay_until=<timestamp>[+<max random secs>]" passdb
extra field. The auth will wait until <timestamp> and optionally some
randomness and then return success.
+ dict proxy: Added idle_msecs=<n> parameter. Support async operations.
+ Performance improvements for handling large mailboxes.
+ Added lib-dcrypt API for providing cryptographic functions.
+ Added "doveadm mailbox update" command
+ imap commands' output now includes timing spent on the "syncing"
stage if it's larger than 0.
+ cassandra: Added metrics=<path> to connect setting to output internal
statistics in JSON format every second to <path>.
+ doveadm mailbox delete: Added -e parameter to delete only empty
mailboxes. Added --unsafe option to quickly delete a mailbox,
bypassing lazy_expunge and quota plugins.
+ doveadm user & auth cache flush are now available via doveadm-server.
+ doveadm service stop <services> will stop specified services while
leaving the rest of Dovecot running.
+ quota optimization: Avoid reading mail sizes for backends which
don't need them (count, fs, dirsize)
+ Added mailbox { autoexpunge_max_mails=<n> } setting.
+ Added welcome plugin: http://wiki2.dovecot.org/Plugins/Welcome
+ fts: Added fts_autoindex_exclude setting.
- v2.2.24's MIME parser was assert-crashing on mails having truncated
MIME headers.
- auth: With multiple userdbs the final success/failure result wasn't
always correct. The last userdb's result was always used.
- doveadm backup was sometimes deleting entire mailboxes unnecessarily.
- doveadm: Command -parameters weren't being sent to doveadm-server.
- If dovecot.index read failed e.g. because mmap() reached VSZ limit,
an empty index could have been opened instead, corrupting the
mailbox state.
- imapc: Fixed EXPUNGE handling when imapc_features didn't have modseq.
- lazy-expunge: Fixed a crash when copying failed. Various other fixes.
- fts-lucene: Fixed crash on index rescan.
- auth_stats=yes produced broken output
- dict-ldap: Various fixes
- dict-sql: NULL values crashed. Now they're treated as "not found".
Changelog:
Fixed When entering members into a mailing list, the enter key dismissed the panel instead of just moving onto the next line
Fixed Email without HTML elements was sent as HTML, despite "Delivery Format: Auto-detect" option
Fixed Options applied to a template were lost when the template was used.
Fixed Contacts could not be deleted when they were found through a search
Fixed Views from global searches did not respect "mail.threadpane.use_correspondents"
Version 1.2.5:
- Support SHA256 fingerprints for tls_fingerprint, and mark both SHA1 and MD5 as
deprecated.
Version 1.2.4:
- The system default policy is used with GnuTLS instead of a hardcoded one.
Version 1.2.3:
- A bug in SOCKS support was fixed.
- Handling non-fatal errors in TLS handshakes was fixed.
Version 1.2.2:
- No significant changes.
Version 1.2.1:
- The new configure option --with-tls replaces --with-ssl.
- A new configure option --disable-gai-idn was added.
Version 1.2.0:
- Support for SOCKS proxies was added. This allows mpop to be used with Tor.
- GNOME Keyring support now uses libsecret instead of libgnome-keyring. It is
now documented how to use secret-tool to manage passwords for mpop; the
obsolete mpop-gnome-tool script is removed.
- Configuration file security is now only checked if the file actually contains
secrets such as passwords. (If you still store passwords in the configuration
file, consider using the passwordeval command or a key ring instead.)
- The GSSAPI authentication method is not chosen automatically anymore, you have
to request it manually if you really want to use it.
- Libidn is not required for IDN support anymore on systems where getaddrinfo()
supports the AI_IDN flag and the GnuTLS version is >= 3.4.0.
- SSLv3 is disabled, and the obsolete tls_force_sslv3 command and
--tls-force-sslv3 option have no effect anymore.
Version 1.0.29:
- No significant changes.
Upstream changes:
version 3.38: Tue Feb 9 02:48:21 UTC 2016
- rt.cpan.org#107592: redact credentials via debug if !Showcredentials
[Gilles Lamiral]
- rt.cpan.org#110273: failure to quote password values
(regression introduced in 3.36 via fix for rt.cpan.org#100601)
[Gilles Lamiral]
- rt.cpan.org#107593: allow getquota("")
- *Quote() now returns qq("") for defined but empty values
- rt.cpan.org#107011: fix folders_hash() docs and usage in is_parent()
[Gilles Lamiral]
- rt.cpan.org#106500: split UID EXPUNGE with a large sequence set
- added t/quota.t and t/lib/MyTest.pm for testing
- updated copyright for 2016
version 3.37: Fri Aug 14 11:04:53 EDT 2015
- regex fix in rt.cpan.org#96575 required Perl 5.10
updated regex to be backwards compatible with Perl 5.8
[Paul Howarth]
version 3.36: Fri Aug 14 01:40:50 UTC 2015
- rt.cpan.org#96575: parsing fixes for fetch_hash and bodystructure
+ better handling of data containing escaped characters
[Ken Neighbors]
- rt.cpan.org#97718: hang waiting for tag if DONE sent outside of IDLE
[Laurence Darby]
- rt.cpan.org#100683: failed literal commands hang waiting for '+'
[Matthias Pitzl]
- rt.cpan.org#100601: login() fails if username requires use of literals
[Andy Lyttle]
- *rt.cpan.org#103823: is_parent() should return undef on \NoInferiors
[Gilles Lamiral]
- rt.cpan.org#105456: fetch_hash fails if sequence number contains '*'
+ *no longer removing unrequested data (except UID) in returned hashes
[Gilles Lamiral]
- rt.cpan.org#91912: selectable broke in 3.29 due to \b around \NoSelect
[Justin Vallon, Gilles Lamiral]
- some documentation, test cleanup and new tests
version 3.35: Fri, Nov 22, 2013 2:18:41 PM
- *use Quote() over Massage() to avoid stripping double quotes from arg
+ removed constant NonFolderArg
+ may deprecate Massage() in a future release
- _list_or_lsub failed to handle folder names with double quotes
+ cleanup Escaped_results()
+ new methods: Escaped_history() _escaped_trans_data()
+ removed method: _list_response_preprocess()
[Gilles Lamiral, Victor L閉
- rt.cpan.org#90315: getacl on a folder returned as literal failed
+ _read_line could remove extra space when literal data was received
[Carl Karcher]
- rt.cpan.org#89040: typo fixes
[David Steinbrunner]
version 3.34: Fri, Sep 27, 2013 12:50:17 AM
- make Makefile.PL use non-interactive and document test.txt usage
- new attribute: Socketargs => [ (IO::Socket::.. args) ]
+ cleanup connect() to more flexible with IO::Socket::* args
- untagged server data during send literal may cause client to hang
[Arthur Wolfe, Josh Hillman]
+ _send_line() needs '+' only to know it is OK to send LITERAL data
+ created _response_code_sub() to simplify _get_response()
- remove internal "Folders" cache
- Allow for RFC 6154 "IMAP LIST Extension for Special-Use Mailboxes"
[Mathias Reitinger]
+ new method: folders_hash()
+ deprecate: xlist_folders(), xlist()
pkgsrc changes:
- (cosmetic) fix a pkglint warning and proper indent variables in options.mk
Changes:
Version 1.6.5:
- Support SHA256 fingerprints for tls_fingerprint, and mark both SHA1 and MD5 as
deprecated.
RELEASE 1.1.5
-------------
- Plugin API: Add html2text hook
- Plugin API: Added addressbook_export hook
- Fix missing emoticons on html-to-text conversion
- Fix random "access to this resource is secured against CSRF" message at logout (#4956)
- Fix missing language name in "Add to Dictionary" request in HTML mode (#4951)
- Enable use of TLSv1.1 and TLSv1.2 for IMAP (#4955)
- Fix XSS issue in SVG images handling (#4949)
- Fix (again) security issue in DBMail driver of password plugin [CVE-2015-2181] (#4958)
- Fix bug where Archive/Junk buttons were not active after page jump with select=all mode (#4961)
- Fix bug in long recipients list parsing for cases where recipient name contained @-char (#4964)
- Fix additional_message_headers plugin compatibility with Mail_Mime >= 1.9 (#4966)
- Hide DSN option in Preferences when smtp_server is not used (#4967)
- Protect download urls against CSRF using unique request tokens (#4957)
- newmail_notifier: Refactor desktop notifications
- Fix so contactlist_fields option can be set via config file
- Fix so SPECIAL-USE assignments are forced only until user sets special folders (#4782)
- Fix performance in reverting order of THREAD result
- Fix converting mail addresses with @www. into mailto links (#5197)
Add SMF support, clean up etc.
* Mon Feb 13 2012 Martin Matuska <martin@matuska.org>
- 1.8.0 release
- Allow to specify complete DSN in configuration file
- Support listening on UNIX sockets
- Support pidfile command line argument
* Mon Feb 01 2010 Michal Ludvig <mludvig@logix.net.nz>
- Upgraded VERSION to 1.8.0-rc2
- Reverted GNU sed syntax in Makefile
* Sat Jan 23 2010 Michal Ludvig <mludvig@logix.net.nz>
- Upgraded VERSION to 1.8.0-rc1
- 'make dist' now creates sqlgrey-$VERSION.tar.gz with
the help of 'git archive'
* Mon Aug 17 2009 Michal Ludvig <mludvig@logix.net.nz>
- 1.7.7 release getting ready
- Reworked "smart"/"class-c" IPv6 address handling.
- Added IPv6 address support for clients_ip_whitelist(.local)
file
- client_ip_whitelist(.local) now supports address/prefix
notation both for IPv4 and IPv6 addresses.
* Sun Aug 05 2007 Lionel Bouton <lionel-dev@bouton.name>
- 1.7.6 release
- Database handling fix (deactivated InactiveDestroy unless
needed)
- Reopen database connection on SIGUSR1
* Thu Feb 15 2007 Dan Faerch <dan.sqlgrey @hacker.dk>
- 1.7.5 release
- Changed db_cleanup. clean time stored in db for better
handling,
especially in clustered environments
- Fix for harmless warnings about "possible typo"
- Fix for sqlgrey dying if syslog is offline
- Filled feature req from Riaan Kok. Support "postfix attributes
on both
sides".. Ie: "client_name !~ helo_name"
* Sun Aug 03 2006 Dan Faerch <dan-NOSPAM@hacker.dk>
- 1.7.4 release
- Added feature Discrimination
- Added feature DBCluster
- Added config option reject_code (eg. answer 451 instead of 450)
* Wed Nov 16 2005 Lionel Bouton <lionel-dev@bouton.name>
- 1.7.3 release
- fixes for a crash with '*' in email adresses
* Tue Oct 25 2005 Lionel Bouton <lionel-dev@bouton.name>
- 1.7.2 release
- fixes for several errors in logging
- clean_method ported from 1.6.x
* Thu Sep 15 2005 Lionel Bouton <lionel-dev@bouton.name>
- 1.7.1 release
- fix for a race condition in multiple instances configurations
- fix for weekly stats
* Tue Jun 21 2005 Lionel Bouton <lionel-dev@bouton.name>
- 1.7.0 release
- now continue if the DB isn't available at startup time
- based on 1.6.0 with Michel Bouissou's work:
. better connect cleanup when creating AWL entries
. source IP throttling
version 2.18: Wed 18 May 23:52:30 CEST 2016
Fixes:
- Mail::Header should accept \r in empty line which ends the
header. rt.cpan.org#114382 [Ricardo Signes]
Changelog:
Fixed in Thunderbird 45.1
2016-39 Miscellaneous memory safety hazards (rv:46.0 / rv:45.1 / rv:38.8)
Christian Holler, Tyson Smith, and Phil Ringalda reported memory safety problems and crashes that are fixed in Firefox ESR 45.1, Firefox ESR 38.8 and Firefox 46.
Memory safety bugs fixed in Firefox ESR 45.1, Firefox ESR 38.8 and Firefox 46 (CVE-2016-2807)
Gary Kwong, Christian Holler, Jesse Ruderman, Mats Palmgren, Carsten Book, Boris Zbarsky, David Bolter, and Randell Jesup reported memory safety problems and crashes that are fixed in Firefox ESR 45.1 and Firefox 46.
Memory safety bugs fixed in Firefox ESR 45.1 and Firefox 46 (CVE-2016-2806)
Gary Kwong, Christian Holler, Andrew McCreight, Boris Zbarsky, and Steve Fink reported memory safety problems and crashes that are fixed in Firefox 46.
Memory safety bugs fixed in Firefox 46 (CVE-2016-2804)
Christian Holler reported a memory safety problem that is fixed in Firefox ESR 38.8.
Memory safety bug fixed in Firefox ESR 38.8 (CVE-2016-2805)
version 2.17: Wed 11 May 17:20:21 CEST 2016
Fixes:
- Mail::Header should only accept totally empty lines as header
terminator, not to break MIME::Tools regression tests.
rt.cpan.org#113918 [David Cantrell]
for all pkgsrc dir/file ownership rules. Fixes unprivileged
user/group names from leaking into binary packages, manifest as
non-fatal chown/chgrp failure messages at pkg_add time.
Bump respective packages' PKGREVISION.
Upstream changes:
1.542 2016-01-28
Major overhaul to tests by Philipp Gortan
Tiny bug fixes
1.541 2015-10-06
Updated packaging: META.*, switch to ExtUtils::MakeMaker
Additions include:
- Upgrade UW-IMAP to Panda IMAP from https://github.com/jonabbey/panda-imap.
- S/MIME: Add screen to manage certificates.
- S/MIME: Signatures are validated using the user's certificates instead of the ones included in the message. Behavior can be disabled by disabling the option "Validate Using Certificate Store Only" which is enabled by default.
- S/MIME: sign messages using intermediate certificates when needed and possible.
- S/MIME: validation of certificates for servers that modify signed content.
- S/MIME: signed and encrypted messages will be signed first and encrypted second, so that they can be decoded by other clients.
- S/MIME: add the sender certificate to the list of certificates in encrypted messages to make it possible for the sender to decrypt the message they sent.
- S/MIME: When transferring certificates to a local container, create container with default names PublicContainer, PrivateContainer and CAContainer, as appropriate for these files, unless the user has provided some other names.
- HTML: Style tag in body of html message causes Alpine to not write its content until a new </style>
- HTML: <BR>, <BR />, and <BR/> are considered the same inline tag, the same is valid for the <HR> tag.
- S/MIME: Forwarding a message will include the signed part as part of the text and not as a multipart message, just as the reply command does.
- Unix Alpine: If a password file is defined, and S/MIME is enabled, the key and certificate used to encrypt the password file are saved in the ~/.alpine-smime/.pwd directory, or in the directory specified by the -pwdcertdir command line option.
- Add support to selective expunge through a subcommand of the select-apply commands.
- Pico: New subcommand of the search command, allows to reverse the direction of search.
- Add /tls1, /tls1_1, /tls1_2 and /dtls1 to the definition of a server to use different ways to connect using ssl, for example {server.com/tls1} will attempt to connect to server.com at the ssl imap port (port 993) and establish a connection using TLSv1. These flags can be used in conjunction with the /ssl flag, the ssl flag is redundant. Conversely, however, the /ssl flag does not imply any of these flags; the /ssl flag means SSLv3 or, if not available, SSLv2 in the SSL port.
- Alpine does not attempt to automatically reopen a collection that was not opened due to cancellation by the user. Instead, the user must try to open it explicitly.
- Alpine searches for a certificate that matches an email address in all addresses in a certificate (instead of just the first one) but when it tries to unlock the certificate, it asks for the password for the first email address in that certificate.
- Experimental: Write the content-type of a message in lowercase, as some non-compliant servers do not understand uppercase content-type, such as those of GMX.de.
- Experimental: Do not send the RSET command before attempting to send a message, as this causes a delay in some evily managed servers.
- Opening a folder updates recent count in maildrops (this already works for other types of folders)
- Automatically redraw screen after opening an attachment instead of simply clearing it.
- Pico: Justification works without need of a predefined quote string. This allows justification of blocks of text that are indented with spaces.
- Decode the name of attachment names, so they can be written as part of the description of the part.
- Check bounds and tie strings off to improve security. Contributed by James Jerkins.
- Replace tabs by spaces in From and Subject fields to control for size in screen of these fields. Change only in index screen display.
- Aggregate operations allows bouncing a list of messages using a role. Suggested by Ulf-Dietrich Braumann.
- Disable saving new passwords to the password file. Implemented by Louis Raphael from dpslabs.com.
- Makefile: Add $(LIBINTL) to the flags to link rpdump, rpload, alpined and alpineldap because MAC OSX 10.8 x86_64 needs it. Reported by Charles M. Register.
Bugs that have been addressed include:
- S/MIME: signed messages that contained an attachment would not validate.
- S/MIME: signed and encrypted messages from Thunderbird would not validate.
Thanks to Andreas Schamanek for testing, debugging and advising during the
process of fixing this problem.
- S/MIME: Forwarding messages with multipart content-type failed to be signed
with "Error writing pipe" message. Reported by Andreas Schamanek and Stefan
Mueller.
- S/MIME: Certificates are lost when using a pinerc file outside of the home
directory.
- S/MIME: accessing the S/MIME configuration screen would deinitialize SMIME
making it not possible to sign or encrypt messages.
- S/MIME: Forwarding a signed message might make the body contain mime
information that is not part of the body, and hence making the body of the
message seem wrong.
- S/MIME Alpine would compute incorrectly the signature of a message that
contains 8bit if the option "Enable 8bit ESMTP Negotiation" is enabled, the
message contains 8bit characters and the smtp server supports 8bit sending.
- When replying to several messages, subject will be decoded first, and then
stripped from re/fwd before they are compared to determine the subject of
the replied message.
- Fix in WebAlpine: do not use deprecated dereference in pointer, needs to
use tcl_getstringresult() instead. Reported by Ulf-Dietrich Braumann.
- WebAlpine: fail to build with debug disabled. Fix from Sam Hathaway.
- WebAlpine: add _GNU_SOURCE to make pubcookie build.
- Transformation of UTF-8 to MUTF7 was not being done when creating a folder
in an IMAP server.
- Fix _INIT_ token for reply quote string to include support for 8-bit in
personal names. Reported by Lev Gorenstein.
- When writing the .pinerc file, lines were truncated if they were longer
than 10,000 characters. This could cause data corruption, so now lines are
allowed to be of any length.
- In Unix Alpine (but not in MAC OSX) fix a problem that made Alpine remove
attachments before they were open by a mailcap viewer. It requires that the
user has an equivalent to a command such as "ps auxww" to list the list of
processes, and check if there is any program using the attachment. The default
is "/bin/ps auxww", but it can be changed at compile time with the option
--with-ps-cmd. See the help of the variable mailcap-check-interval for more
information.
- Crash when tcp connection to NNTP server was lost after connection had been
established, but lost immediately afterwards.
- Crash with message "lock when already locked", when painting an index was
based on scores that needed information from a remote addressbook in the
same server as the folder opened. Reported by Peter Koellner.
- Crash in message/rfc822 attachments encoded in base64.
- Postponed messages whose content-type is text/html, text/enriched and
text/richtext are sent with that content-type, even though, after resuming
composition, Alpine had changed its type to text/plain.
- Alpine cannot handle correctly some characters in the Windows-1256
character set, which might lead to a crash or a corruption in the screen.
Work was done to contain the bug. A more complete fix will be done in a future
release. Reported by Professor Robert Funnell.
- WebAlpine: add _GNU_SOURCE to make pubcookie build.
- Save command did not warn of existence of a message with a deleted
attachment in an aggregate save, unless cursor was positioned on a message
with a deleted attachment. Reported by Florian Herzig.
- DATE tokens were not internally transformed to UTF-8, which made their
values not appear complete in the screen. Reported by Werner Scheinast.
- Fixes to configure script so that it will not require PAM for every system.
- Fix to configure script so that it will use CPPFLAGS instead of CPPCFLAGS,
and so the --with-ssl-include-dir option take effect during the build. Fix
by Ulf-Dietrich Braumann.
- Quoted string in URL Viewers configuration variable were not unquoted
before passing to viewer.
- Fix in configure script to detect location of tcl library; add /usr/local
in FreeBSD and fix a bug in configure script that used $alpine_TCLINC
instead of $alpine_TCLINC/tcl.h. Reported and fixed by Werner Scheinast.
- Move SSL configurations from UW-IMAP to configure script, and update
OpenSSL configuration for Mac OSX.
- Remove -lregex from linker flags when building --with-supplied-regex.
- When the download of an attachment is interrumpted, Alpine stills caches
what was downloaded, making the download incomplete for subsequent calls of
Alpine attempting to open the attachment. In the future, Alpine will not cache
any downloaded part of the attachment when it is interrupted. CVS:
----------------------------------------------------------------------
Enigmail 1.9.2
Released 2016-04-25, works with Thunderbird 38.0 & newer and SeaMonkey 2.35 & newer.
Notable Changes
This is a bugfix release
Important Note
This version requires GnuPG 2.0.7 or newer. GnuPG 1.4.x is not supported anymore.
Bugs fixed
Check the list of fixed defects at
https://sourceforge.net/p/enigmail/bugs/search/?q=status%3Afixed+%26%26+_fixed%3A1.9.2
Notmuch 0.22 (2016-04-26)
=========================
General
-------
Xapian 1.3 support
Notmuch should now build (and the test suite should pass) on recent
releases of Xapian 1.3.x. It has been tested with Xapian 1.3.5.
Limited support for S/MIME messages
Signature verification is supported, but not decryption. S/MIME
signature creation and S/MIME encryption are supported via built-in
support in Emacs. S/MIME support is not extensively tested at this
time.
Bug Fixes
Fix for threading bug involving deleting and re-adding
messages. Fix for case-sensitive content disposition headers. Fix
handling of 1 character directory names at top level.
Command Line Interface
----------------------
`notmuch show` now supports verifying S/MIME signatures
This support relies on an appropriately configured `gpgsm`.
Build System
------------
Drop dependency on "pkg-config emacs".
Emacs Interface
---------------
Notmuch replies now include all parts shown in the show view
There are two main user visible changes. The first is that rfc822
parts are now included in replies.
The second change is that part headers are now included in the reply
buffer to provide visible separation of the parts. The choice of
which part headers to show is customizable via the variable
`notmuch-mua-reply-insert-header-p-function`.
Filtering or Limiting messages is now bound to `l` in the search view
This binding now matches the analogous binding in show view.
`F` forwards all open messages in a thread
When viewing a thread of messages, the new binding `F` can be used
to generate a new outgoing message which forwards all of the open
messages in the thread. This is analogous to the `f` binding, which
forwards only the current message.
Preferred content type can be determined from the message content
More flexibility in choosing which sub-part of a
multipart/alternative part is initially shown is available by
setting `notmuch-multipart/alternative-discouraged` to a function
that returns a list of discouraged types. The function so specified
is passed the message as an argument and can examine the message
content to determine which content types should be discouraged. This
is in addition to the current capabilities (i.e. setting
`notmuch-multipart/alternative-discouraged` to a list of discouraged
types).
When viewing a thread ("show" mode), queries that match no messages no
longer generate empty buffers
Should an attempt be made to view the thread corresponding to a
query that matches no messages, a warning message is now displayed
and the terminal bell rung rather than displaying an empty buffer
(or, in some cases, displaying an empty buffer and throwing an
error). This also affects re-display of the current thread.
Handle S/MIME signatures in emacs
The emacs interface is now capable making and verifying S/MIME
signatures.
`notmuch-message-address-insinuate` is now a no-op
This reduces the amount of interference with non-notmuch uses of
message-mode.
Address completion improvements
An external script is no longer needed for address completion; if
you previously configured one, customize the variable
`notmuch-address-command` to try the internal completion. If
`company-mode` is available, notmuch uses it by default for
interactive address completion.
Test and experiment with the emacs MUA available in source tree
`./devel/try-emacs-mua` runs emacs and fills the window with
information how to try the MUA safely. Emacs is configured to use
the notmuch (lisp) files located in `./emacs` directory.
Documentation
-------------
New `notmuch-report(1)` and `notmuch-report.json(5)` man pages
describe `notmuch-report` and its JSON configuration file. You can
build these files by running `make` in the `devel/nmbug/doc`
directory.
notmuch-report
--------------
Renamed from `nmbug-status`. This script generates reports based on
notmuch queries, and doesn't really have anything to do with nmbug,
except for sharing the `NMBGIT` environment variable. The new name
focuses on the script's action, instead of its historical association
with the nmbug workflow. This should make it more discoverable for
users looking for generic notmuch reporting tools.
The default configuration file name (extracted from the `config`
branch of `NBMGIT` has changed from `status-config.json` to
`notmuch-report.json` so it is more obviously associated with the
report-generating script. The configuration file also has a new
`meta.message-url` setting, which is documented in
`notmuch-report.json(5)`.
`notmuch-report` now wraps query phrases in parentheses when and-ing
them together, to avoid confusion about clause grouping.
v0.4.14 26-04-2016 Stephan Bosch <stephan@rename-it.nl>
* The address test now allows specifying the X-Original-To header.
+ Implemented the Sieve imapsieve extension and its IMAP counterpart
(RFC 6785) as a set of plugins. This allows running Sieve scripts at IMAP
activity, rather than at delivery. There are also facilities for the
familiar sieve_before/sieve_after administrator scripts. A user script is
defined for a mailbox using an IMAP METADATA entry, whereas administrator
scripts are configured using mailbox matching rules defined in the plugin
settings.
+ Adjusted the Sieve ihave extension to allow capability tests to be performed
at runtime. This way, scripts can be written that work both at delivery and
from IMAP.
+ Implemented support for runtime trace debugging. This means that detailed
information about which commands, actions and tests are performed is written
to a file. That file is created in the configured directory, but only if
that directory exists. This way, a particular user can be easily singled out
for debugging. This works much like the Dovecot rawlog facility. The trace
output is identical to what is produced using sieve-test with its "-t"
command line option.
+ Added a "sieve_user_email" setting that configures the user's primary email
address. This is mainly useful to have a user email address available in
IMAP, where envelope data is unavailable.
+ Implemented the dovecot-specific "vnd.dovecot.report" extension. This allows
sending report messages in the Message Abuse Reporting Format (RFC 5965).
- extprograms plugin: Fixed epoll() panic caused by closing the output FD
before the output stream.
- Made sure that the local part of a mail address is encoded properly using
quoted string syntax when it is not a dot-atom.
v2.2.24 2016-04-26 Timo Sirainen <tss@iki.fi>
* doveconf now warns if it sees a global setting being changed when
the same setting was already set inside some filters. (A common
mistake has been adding more plugins to a global mail_plugins
setting after it was already set inside protocol { .. }, which
caused the global setting to be ignored for that protocol.)
* LMTP proxy: Increased default timeout 30s -> 125s. This makes it
less likely to reach the timeout and cause duplicate deliveries.
* LMTP and indexer now append ":suffix" to session IDs to make it
unique for the specific user's delivery. (Fixes duplicate session
ID warnings in stats process.)
+ Added dict-ldap for performing read-only LDAP dict lookups.
+ lazy-expunge: All mails can be saved to a single specified mailbox.
+ mailbox { autoexpunge } supports now wildcards in mailbox names.
+ doveadm HTTP API: Added support for proxy commands
+ imapc: Reconnect when getting disconnected in non-selected state.
+ imapc: Added imapc_features=modseq to access MODSEQs/HIGHESTMODSEQ.
This is especially useful for incremental dsync.
+ doveadm auth/user: Auth lookup performs debug logging if
-o auth_debug=yes is given to doveadm.
+ Added passdb/userdb { auth_verbose=yes|no } setting.
+ Cassandra: Added user, password, num_threads, connect_timeout and
request_timeout settings.
+ doveadm user -e <value>: Print <value> with %variables expanded.
- Huge header lines could have caused Dovecot to use too much memory
(depending on config and used IMAP commands). (Typically this would
result in only the single user's process dying with out of memory
due to reaching service { vsz_limit } - not a global DoS).
- dsync: Detect and handle invalid/stale -s state string better.
- dsync: Fixed crash caused by specific mailbox renames
- auth: Auth cache is now disabled passwd-file. It was unnecessary and
it broke %variables in extra fields.
- fts-tika: Don't crash if it returns 500 error
- dict-redis: Fixed timeout handling
- SEARCH INTHREAD was crashing
- stats: Only a single fifo_listeners was supported, making it
impossible to use both auth_stats=yes and mail stats plugin.
- SSL errors were logged in separate "Stacked error" log lines
instead of as part of the disconnection reason.
- MIME body parser didn't handle properly when a child MIME part's
--boundary had the same prefix as the parent.
- Based on PR pkg/51107 by ISIHARA Takanori
------------------------------------------------
Announce: #OpenSMTPD 5.7.3p2 released
- fixes crash when used with #OpenSSL 1.0.2f - portable only
--------------------------------------------
- Based on PR pkg/51107 by ISIHARA Takanori
- Explicit ChangeLog was not found.
- New command added:
^x e force to set encoding
See ${PREFIX}/share/doc/cue/cue.hlp
version 2.16: Mon 18 Apr 17:58:23 CEST 2016
Fixes:
- Mail::header regression in parsing files.
rt.cpan.org#113874 [John L Berger]
version 2.15: Mon 18 Apr 13:55:30 CEST 2016
Fixes:
- Mail::Header continue reading after wrongly folders line
rt.cpan.org#113464 [Mark Sapiro]
Improvements:
- Mail::Mailer::open call of exec() explained [Malte Stretz]
- fix example in Mail::Address [peter77]