Switch branches/tags
Commits on Feb 16, 2018
Commits on Dec 5, 2017
Commits on Nov 7, 2017
Commits on Oct 24, 2017
  1. Bugfix on trash_msg_set_tags for non-archived messages to trash.

    manitou-mail committed Oct 24, 2017
    Tags of messages put in trashcan are subtracted from cached
    counts only when they were archived previously.
Commits on Oct 15, 2017
  1. Fix assignment by filters of already-assigned tags.

    manitou-mail committed Oct 15, 2017
    Also make sure that tags counters are updated if the message
    to tag is archived.
Commits on Oct 14, 2017
  1. Fix the handling/detection of pg_enable_utf8 for DBD::Pg>=3.6

    manitou-mail committed Oct 14, 2017
    DBD::Pg 3.6 has a fix for a double-encoding utf8 bug that
    made the test in get_db_encoding fails to figure out if we want
    to use Encode to produce utf-8 for the database.
Commits on Oct 13, 2017
Commits on Sep 29, 2017
Commits on Sep 25, 2017
Commits on Sep 22, 2017
Commits on Sep 18, 2017
  1. Generalize maintenance plugins into maintenance tasks.

    manitou-mail committed Sep 18, 2017
    Plugins are user-defined, whereas non-plugin tasks are implemented
    Updating runtime_info.last_alive is converted into an internal task.
Commits on Jul 5, 2017
  1. Drop mail_status in favor of a partial index on the unarchived mail.

    manitou-mail committed Jul 5, 2017
    Initially the reason for mail_status is the simplicity and cross-dbms
    portability. But a partial index performs better that joining against
    plus maintaining mail_status, and porting to a different dbms is
    not a current goal.
    Installations that want to keep relying on mail_status for the compatiblity
    of their queries can have it as a view:
     CREATE VIEW mail_status AS select mail_id,status from mail
      where status&(256+32+16)=0;
    The partial index is on status&32=0 only, to simplify the logic.
    Messages that are trashed (16) or sent (256) tend to be archived,
    so it's okay, performance-wise, not to bother about trashed but not
    archived, or sent but not archived.
    As a consequence of dropping mail_status, the triggers on insert, update,
    delete on mail are dropped as well.
    Also create status_mask() to help with status bitmasks readability in code.
    Note: this commit does not touch manitou-mdx, but a previous commit fdf22c3
    already carried the change (removing a join with mail_status)
    that should have landed in this commit.
Commits on Jul 4, 2017
Commits on May 2, 2017
Commits on Apr 12, 2017
  1. Rename functions in to clarify that they're asynchronous.

    manitou-mail committed Apr 12, 2017
    Some other jobs ('widx' and 'send_mail') are synchronous.
Commits on Mar 13, 2017
Commits on Mar 10, 2017
  1. Convert the results of attachments-to-text filters to utf-8 internally.

    manitou-mail committed Mar 10, 2017
    External text extractors cannot be trusted to produce valid utf-8.
    Instead of failing when inserting invalid utf-8 in the database
    and skipping the entire message, convert as much as possible
    with Perl's Encode, leaving out unindexed the part that can't be processed.
Commits on Mar 8, 2017
  1. Fix busy loop when update_runtime_info is off in daemon mode.

    manitou-mail committed Mar 8, 2017
    $last_alive needs to be updated in memory even when update_runtime_info
    is off, otherwise the main loop never goes in select() to sleep a bit.
Commits on Feb 24, 2017
Commits on Oct 26, 2016
  1. Use raw I/O for mailfiles.

    manitou-mail committed Oct 26, 2016
    That fixes the problem of possibly misinterpreting 8-bit mail
    depending on the locales.
Commits on Oct 12, 2016
  1. Do not use sh -e: manitou-mgr failing should not block the installation.

    manitou-mail committed Oct 12, 2016
    Specifically, when PostgreSQL is not accessible on the host,
    it's normal that manitou-mgr fails. Users can configure the
    database part after the installation if they wish to.
Commits on Oct 7, 2016
Commits on Oct 6, 2016
Commits on Oct 4, 2016
  1. Improved no_duplicate plugin to update tags when deduplicating.

    manitou-mail committed Oct 4, 2016
    The mail_id column is added and set in a postprocess plugin.
    When a duplicate is discarded, the tags it could have
    at the point of the discard can be optionally assigned
    to the previous instance of the same mail.
    This is primarily useful to track messages across folder moves,
    when manitou-mail is used to permanently sync from an IMAP server.
    Also, add a trigger to delete from no_duplicate_import when mail
    is deleted.