github pimalaya/himalaya v0.7.0

latest releases: v1.0.0-beta.4, latest, v1.0.0-beta.3...
21 months ago

Added

  • Added offline support with the account sync command to synchronize
    a backend to a local Maildir backend [#342].
  • Added the flag --disable-cache to not use the local Maildir
    backend.
  • Added the email composer (from its own
    repository) [#341].
  • Added Musl builds to releases [#356].
  • Added himalaya man command to generate man page [#419].

Changed

  • Made commands read, attachments, flags, copy, move,
    delete accept multiple ids.
  • Flipped arguments ids and folder for commands copy and move
    in order the folder not to be considered as an id.

Fixed

  • Fixed missing folder aliases [#430].

Removed

  • Removed the -a|--attachment argument from write, reply and
    forward commands. Instead you can attach documents directly from
    the template using the syntax <#part filename=/path/to/you/document.ext>.
  • Removed the -e|--encrypt flag from write, reply and forward
    commands. Instead you can encrypt and sign parts directly from the
    template using the syntax <#part type=text/plain encrypt=command sign=command>Hello!<#/part>.
  • Removed the -l|--log-level option, use instead the RUST_LOG
    environment variable (see the
    wiki)

himalaya-lib v0.5.0

Added

  • Made backend functions accept a vector of id instead of a single id
    [#20].
  • Added function Backend::purge_folder that removes all emails
    inside a folder.
  • Added new Backend functions using the internal id:
    • get_envelope_internal: gets an envelope by its internal id
    • add_email_internal: adds an email and returns its internal id
    • get_emails_internal: gets emails by their internal id
    • copy_emails_internal: copies emails by their internal id
    • move_emails_internal: copies emails by their internal id
    • delete_emails_internal: copies emails by their internal id
    • add_flags_internal: adds emails flags by their internal id
    • set_flags_internal: set emails flags by their internal id
    • remove_flags_internal: removes emails flags by their internal id
  • Added emails synchronization feature. Backends that implement the
    ThreadSafeBackend trait inherit the sync function that
    synchronizes all folders and emails with a local Maildir instance.
  • Added Backend::sync function and link ThreadSafeBackend::sync to
    it for the IMAP and the Maildir backends.
  • Added the ability to URL encode Maildir folders (in order to fix
    path collisions, for eg [Gmail]/Sent). Also added a
    MaildirBackendBuilder to facilitate the usage of the
    url_encoded_folders option.
  • Added a process lock for ThreadSafeBackend::sync, this way only
    one synchronization can be performed at a time (for a same account).

Fixed

  • Used native IMAP commands copy and mv.
  • Fixed maildir date envelope parsing.
  • Fixed inline attachments not collected.

Changed

  • Improved Backend method names. Also replaced the self mut by a
    RefCell.
  • Simplified the Email struct: there is no custom implementation
    with custom fields. Now, the Email struct is just a wrapper around
    mailparse::ParsedMail.
  • Improved Flag structures.
  • Changed Backend trait functions due to [#20]:
    • list_envelope => list_envelopes
    • search_envelope => search_envelopes
    • get_email => get_emails, takes now ids: Vec<&str> and
      returns an Emails structure instead of an Email)
    • copy_email => copy_emails, takes now ids: Vec<&str>.
    • move_email => move_emails, takes now ids: Vec<&str>.
    • delete_email => delete_emails, takes now ids: Vec<&str>.
    • add_flags takes now ids: Vec<&str> and flags: &Flags.
    • set_flags takes now ids: Vec<&str> and flags: &Flags.
    • remove_flags takes now ids: Vec<&str> and flags: &Flags.

Removed

  • The email::Tpl structure moved to its own
    repository
    .
  • Encryption and signed moved with the email::Tpl in its own
    repository.

Pending issues

Don't miss a new himalaya release

NewReleases is sending notifications on new releases.