You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
meli/CHANGELOG.md

68 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

Added

  • 0e3a0c4b Add safe UI widget area drawing API
  • 0114e695 Add next_search_result and previous_search_result shortcuts
  • c4344529 Add .git-blame-ignore-revs file

Fixed

  • bcec745c Fix command and status bar drawing
  • 62b8465f Fix ThreadView for new TUI API
  • 28fa66cc Fix ThreadedListing for new TUI API
  • 2c6f180d Fix macos compilation
  • 24971d19 Fix compilation with 1.70.0 cargo

Changed

  • a1cbb198 Return Results instead of panicking
  • 7645ff1b Rename write_string{to_grid,}
  • c2ae19d1 Return Option from current_pos
  • b61fc3ab Add HelpView struct for shortcuts widget
  • ba7a97e9 Add x axis scroll support
  • 3495ffd6 Change UIEvent::Notification structure
  • ccf6f9a2 Remember previous set [index_style]] preferences
  • 23c15261 Abstract envelope view filters away
  • 031d0f7d Add area.is_empty() checks in cell iterators
  • e37997d6 Store Link URL value in Link type

Refactoring

  • 0500e451 Add missing EnvelopeRemove event handler
  • ab14f819 Make write_string_to_grid a CellBuffer method
  • e0adcdfe Move rest of methods under CellBuffer
  • 0a74c7d0 Overhaul refactor
  • 3b4acc15 Add tests
  • 7eedd860 Remove address_list! macro
  • f3e85738 Move build.rs scripts to build directory
  • 77325486 Remove on-push hooks for actions w/ run on-pr

Documentation

Packaging

  • cd2ba80f Update metadata
  • 5f8d7c80 Update deb-dist target command with author metadata
  • 59c99fdc Update debian package metadata

Miscellaneous Tasks

  • 6506fffb Rewrite email flag modifications
  • 23507932 Update cache on set_flags
  • 470cae6b Update thread cache on email flag modifications
  • c1c41c91 Update README.md and add Codeberg mirror
  • 84f3641e Re-add on-screen message display
  • 54d21f25 Re-add contact list and editor support
  • 458258e1 Re-enable compact listing style
  • 1c1be7d6 Add display_name(), display_slice(), display_name_slice() methods
  • 5dd71ef1 Upgrade JobsView component to new TUI API
  • b5cc2a09 Upgrade MailboxManager component to new TUI API
  • ed8a5de2 Re-enable EditAttachments component
  • 77a8d9e2 Make ModSequence publicly accessible
  • 64898a05 Make UIDStore constructor pub
  • 10c3b0ea Bump version to 0.8.5-rc.1
  • 71f3ffe7 Update Makefile
  • 63a63253 Use type alias for c_char
  • c751b2e8 Re-enable conversations listing style
  • d16afc7d Bump version to 0.8.5-rc.2
  • da251455 Bump meli version to 0.8.5-rc.2
  • 3a709794 Update minimum rust version from 1.65.0 to 1.68.2
  • f900dbea Use cargo-derivefmt to sort derives alphabetically
  • 5ff4e8ae Run builds.yaml when any manifest file changes
  • 0a617410 Split test.yaml to test.yaml and lints.yaml
  • 3ba1603a Add manifest file only lints workflow
  • 1617212c Add scripts/check_debian_changelog.sh lint
  • e19f3e57 Cargo-sort all Cargo.toml files
  • c41f35fd Use actions/checkout@v3
  • 876616d4 Use actions/upload-artifact@v3
  • 2419f4bd Add debian package build workflow

v0.8.4 - 2023-11-22

Fixed

Miscellaneous Tasks

v0.8.3 - 2023-11-22

Added

Fixed

  • d3cbf184 Add extra_submission_headers fields in composer form and autocomplete for Newsgroups
  • 7aec5b8e Fix SMTP example doc
  • f702dc22 Fix new clippy lints.
  • 688e39a6 Fix clippy lints

Changed

  • 5a7919bb Use ConversationsListing::format_date
  • 0f3b5294 Hoist format_date() to ListingTrait method

Refactoring

  • e1b55340 Show error description when TIOCGWINSZ ioctl fails
  • e95c275d Remove duplicate end sequence
  • 8a21be21 Replace splice with truncate
  • 2db021fa Remove regexp from default features
  • fa33a946 Move managesieve-client binary to tools/

Miscellaneous Tasks

  • e88957ae Add extra_submission_headers field in MailBackendCapabilities struct
  • 606f487f Add IRC channel badge
  • 0e60bdf2 Add "iterator" feature to signal-hook
  • ac2a5dcd Add display() method for Address
  • 43bfd413 Update ahash dependency
  • af241d25 Bump version to 0.8.3
  • 7387b67e Enable "static" build for C library dependencies by default
  • bfc78a08 Replace CRLF with LF when editing
  • 111a1160 Bump version to 0.8.3

v0.8.2 - 2023-09-22

Fixed

Changed

  • 22525d40 Go to end when pressing next/page down for the second time
  • 71474436 Revert 22525d40 behavior when sidebar not focused

Miscellaneous Tasks

v0.8.1 - 2023-09-13

Added

  • 6476985c Add Cross.toml for aarch64-unknown-linux-gnu builds
  • 45d4f611 Add install-man cli subcommand to install manpages on your system
  • a4f0dbac Add current working directory tracking to Context

Fixed

  • 49a38a23 Fix invalid Type link references
  • 85af5244 Fix invalid mailto() results when body field exists
  • c7825c76 Handle dialog Esc in the parent component
  • dd4d0b79 Fix typo
  • c43aeb0e Fix invalid address parse on folded values
  • 7e3e9386 Fix out-of-bounds draw when terminal is small
  • 7e4ed2fa Fix some out of bounds drawing.

Changed

  • 1b3bebe3 Open earliest unread email instead of first in thread
  • 49c36009 Don't initialize entire thread at once
  • 0a9c89b6 Add toggle_layout shortcut
  • 64ba0459 Init cursor at To: header field
  • 81974311 Show current number command buffer

Refactoring

  • a337e226 Refactor module structure
  • b4f2f335 Remove deflate feature; make it a hard dependency
  • 2dc29405 Add feature to use cache instead of downloading unicode data
  • 0132677f Introduce CommandError with context
  • 3344a8db Remove unnecessary Clone derives
  • b673af02 Move to crate root
  • 54862f86 Add hide_sidebar_on_launch option

Miscellaneous Tasks

  • a615b470 Embed xdg-utils crate
  • f0075b86 Show descriptive tab names for composer and threads
  • 6d5ebb5b Split code into submodules, add better error reporting
  • 63abf1e8 Update README.md
  • bb4d2000 Unify toggle_* parsers
  • 9b9c38f7 Don't flood user with sqlite3 errors if db is corrupted
  • 747e39bf Add print-used-paths subcommand
  • 39e99770 Use Context::current_dir() when saving files to relative paths
  • fe0a96f0 Update to 2021 edition
  • 3944e4e6 Update to 2021 edition
  • 7eed8278 Bump version to 0.8.1

v0.8.0 - 2023-08-29

Added

  • 36e29cb6 Add configurable mailbox sort order
  • 81184b18 Add extra_identities configuration flag
  • b716e438 Add collapse option for mailboxes in sidebar menu
  • 3d92b410 Add cli-docs feature to the default set
  • 104352e5 Add table UI widget
  • 7d9cabb0 Add mailbox manager tab
  • 660bacb9 Add mailto command to open composer with initial values from mailto template
  • 3adf72ae Add support for utf-7 encoding
  • d9c07def Add command to select charset encoding for email
  • 8c671935 Add compose (pre-submission) hooks for validation/linting
  • 96537e48 Add {Timer,Component}Id wrapper types over Uuid
  • b5f205b7 Add availability to use server_password_command in the nntp backend like in the IMAP backend
  • a5770c89 Add Woodpecker-CI check pipeline
  • d4e605c0 Add tagref source code annotations
  • cf9a04a5 Add metadata to Jobs, and add JobManager tab
  • bb7e119a Add gitea CI workflows
  • 1c79786e Add scripts/make_html_manual_page.py
  • 65e82d88 Add meli/README.md symbolic link

Fixed

  • ce2068d3 Fix background watch using JSON paths incorrectly
  • e9aaa7b0 Use *const c_char instead of *const i8 for portability
  • aa3524dd Fix tag not being removed in set_flags()
  • daa900ec Fix embed terminal in macos
  • 7fca5f01 Fix jmap build with isahc 1.7.2
  • ed3dbc85 Fix crashes when listing is empty
  • 824f614a Fix HtmlView not being redrawn when parent is dirty
  • 97ff3e78 Only add toml files to the themes
  • 9cb66ef8 Fix all clippy warnings in meli crate
  • 0c0bee44 Add missing .PHONY targets, fix missing tab indentation
  • a73885ac Improve embed terminal
  • da9c80cc Enhance SubjectPrefix with strip_prefixes_from_list() method
  • aa99b0d7 Implement configurable subject prefix stripping when replying
  • cbe593cf Add configurable header preample suffix and prefix for editing
  • 2de69d17 Fix erroneous placement of newlnes for wrap_header_preamble suffix
  • 94bd84b4 Fix clippy lints for meli crate
  • b138d9bc Fix some clippy lints
  • c6bdda03 Fix notmuch error shown on any missing backend
  • 16646976 Fix reply subject prefixes stripping original prefix
  • 88a1f0d4 Fix FETCH response parsing bug
  • 59b95f83 Fix docs
  • 282af86e Fix NAME sections manual pages for correct whatis(1) parsing
  • bd22f986 Fix clippy lints
  • 5ba7b2cd Fix clippy lints for meli binary
  • 7924aa8b Fix compilation
  • b9030a68 Fix selection not appearing immediately and invalid motions
  • 4f45b109 Fix tag updates not showing up right away
  • abc56eae Fix SEEN flag update hiding mail view momentarily
  • 40c6647d Fix multipart/related with main text/html part not displayed correctly
  • 11140b4a Fix test output
  • 3a10953f Update fix-prefix-for-debian.patch
  • 939dc15e Fix melib tests
  • 39d9c2af Fix test smtp server logic
  • 34bb532e Mention w3m dependency
  • b1a71887 Clippy fixes
  • 1f8ac228 Fix ftplugin location and add example mail.vim file
  • 1eea8bab Fix test_imap_fetch_response.
  • daf42fd4 Fix build error with quote 1.0.28
  • 6388bea9 Fix &[u8] index in HeaderMap
  • c5ecacea Fix some search criteria in Query type
  • 27a4dcb9 Fix some rustdoc lints
  • fdc0861a Fix expanded_hash argument off by one error
  • 0c0a678c Fix overlay widgets not being reaped after Unrealize event
  • 65179d48 Fix cursor/widget focus scrolling logic
  • e64923ee Fix debug_assert condition
  • 5f29faa6 Clippy lint fixes
  • 0b258a1f Clippy lint fixes
  • ba7f5dce Fix display of threaded conversations tree structure
  • 1dc1d868 Fix infinite loop bug
  • e8e49e74 Fix wrong per message offset
  • e3dfeaad Fix compilation error when building without gpgme feature
  • 7998e1e7 Add missing LC libc constants for openbsd target_os
  • b5657201 Fix doctest compilation errors
  • c2ed3e28 Fix Source::* view showing only envelope body
  • d93ee413 Add timestamp_to_string_utc
  • 6086a378 Fix libgpgme segfault error and re-enable gpg
  • ab418c1d Refresh documentation, fix encryption/signing
  • 0219dc87 Respect max_objects_in_get when fetching email
  • 6280bc75 Fix blob download URL formatting
  • 2df73547 Fix overflow substracts
  • 8e698cab Fix unreachable-pub and disjoint-capture lint errors
  • 40d4ecef Accept invalid (non-ascii) address comment text
  • 4e654d2d Limit LIST ACTIVE command length to 512 octets
  • 84081f4e Minor style fix
  • 97d36868 Use Happy Eyeballs algorithm Ꙭ
  • 96f0b3e6 Fix shortcut section order
  • 64982b4c Fix page{up,down} event bubbling up
  • 8551e1ba Fix new 1.72 default clippy lints

Changed

  • 8563bccd Don't cache CellBuffer, only row info
  • 0f6f3e30 Add IMAP config in config parse test
  • ce269c64 Don't fail on server_password_command
  • 9dc4d405 Add focus_{left,right} shortcuts to switch focus
  • 4b96bd59 Add ColorCache constructor to deduplicate code
  • c06c3f58 Draw gap between list and mail view
  • c9d26bb4 Add configurable custom hooks with shell commands
  • 02e86d1f Check for subject overflow on draw
  • 8cab9d9d Add option to hide consecutive identical From values inside a thread
  • 363f4930 Add {previous,next}_entry shortcuts to quickly open other mail entries
  • 342df091 Don't set all thread to seen when opening a thread entry
  • 74e15316 Open message/rfc822 attachments in subview instead of new tab
  • 369c1dbd Show open command in status bar
  • 519257b0 Add relative_menu_indices setting for menubar
  • 8abc9358 Add newline after Version: 1 header
  • 561ba9c8 Add relative_list_indices setting for thread listing
  • 52874f9a Cancel previous jobs on MailView drop/update
  • 9037f084 Replace hardcoded Key::{Home,End} values with shortcut values
  • 31aa9ad2 Autogen mbox filename when exporting mail to directories

Refactoring

  • 330a2b20 Flush stdout in Ask() after printing
  • 340d6451 Add config setting for sidebar ratio
  • d0de0485 Add {in,de}crease_sidebar shortcuts
  • f5dc25ae Check that all conf flags are recognized in validation
  • d3e62e3d Use conf shortcuts for scroll {up, down}
  • 23c23556 Fill and align shortcut table columns
  • 5823178c Add test that looks in source code for invalid theme key references
  • 9205f3b8 Handle a per account mail order parameter
  • d921b3c3 Use mail sorting parameters from config
  • f4e0970d Add ability to kill embed process
  • bde87af3 Refactor filter() method in Listing trait
  • a42a6ca8 Show notifications in terminal if no alternative
  • eb5949dc Switch summary<->details identifiers
  • 8c7b001a Add thread_subject_pack command to pack different inner thread subjects in entry title
  • 388d4e35 Add in-progress messages while connecting in IMAP
  • 787c64c2 Remove expect()s from create_config_file()
  • b87d54ea Impl Into<BTreeSet> for EnvelopeHashBatch
  • e450ad0f Remove unused struct
  • c54a31f7 Break line for error messages
  • 7935e49a Check properly if mailbox request is an error
  • 117d7fbe Make private fields public
  • ffb12c6d Make all public struct fields public
  • 46a038dc Remove interactive messages when #[cfg(test)]
  • 803d3414 Implement some rfc5804 commands
  • b776409d Add thread, env hash index fields
  • cc439b23 Add RowsState struct
  • db227dea Add error messages if mandoc,man binaries are missing
  • ee9d458b Implement mailbox {un,}sub actions
  • 7af89359 Replace use of Self::DESCRIPTION with Shortcuts struct consts
  • eaecc5ea Remove hardcoded major .so version for non linux/macos target_os
  • f63ce388 Move ManageMailboxes to Tab Actions
  • 3c847ad2 Add beginning of sieve parser
  • 5443b7e8 Remove literal_map() parse combinator
  • 12cb717b Add server_password_command to jmap
  • 428f752b Remove obsolete crate::components::mail::get_display_name()
  • 91557c2c Prevent list blank when refreshing account
  • d332e457 Add proper Display impl for HeaderName
  • f537c249 Move text field to its own module
  • d33f9d54 Remove unreachable!() in Key::serialize
  • 330887c4 Introduce imap-codec.
  • 4da53669 Remove bincode dep, use serde_json for sqlite3 values
  • 155fb41b Remove unused Component::set_id method
  • 575509f1 Move mail view to listing parent component
  • 6858ee1f Move subcommand handling to its own module
  • b0e867eb Move src to meli/src
  • 48a10f72 Remove unused BackendOp::fetch_flags() method
  • 073d43b9 Move data files to data subdir
  • 1e084c1d Move backends out of the backends module
  • a5446975 Move braille and screen to their own module files
  • 005bf388 Move components/utilities -> utilities
  • 64ab65dd Move components/contacts -> contacts
  • 7c9a4b4b Move components/mail -> mail
  • df638cce Remove stale failing doc code example
  • da8e8104 Remove leftover debug prints
  • a1e70061 Move Sort{Order,Field} to utils mod
  • 66c21ab1 Move StandardHeader to its own module
  • 946309c6 Do some small parser refactoring
  • b95f7783 Move JmapSession to its own module

Documentation

  • a866b294 Update valid shortcut entries from src/conf/shortcuts.rs
  • f76f4ea3 Add meli.7, a general tutorial document
  • 5fa4b626 Add more screenshots
  • 7c711542 Complete guide document
  • 30cc5d3d Add edit-config in manpages
  • 24103f33 Add external-tools.md document
  • b6c93e49 Add use_tls option in IMAP connection settings
  • 34a54d3c Add some TODO([#222](https://git.meli-email.org/meli/meli/issues/222))s.

Packaging

  • 671ce9f6 Add missing build dependencies

Miscellaneous Tasks

  • 25805229 Log vcard parsing failures
  • 5f003a31 Parse vCards with just LF instead of CRLF line endings
  • d8e9a005 Add quoted REFERENCES field in parsing of responses
  • 81d12656 Escape IMAP passwords properly
  • 0d8bedd2 Make is_online() await for connection
  • d4b690d5 Send password as byte literal on LOGIN
  • 2eb22a29 Stop hardcoding certain component colors
  • 2c23ca34 Update most Cargo dependencies
  • 721891c2 Update nom dependency
  • 4fdc90b3 Use open instead of xdg-open in macos
  • 9558b2ae Parse Cp1253 as windows1253 encoding
  • 6a843d49 Export list_mail_in_maildir_fs() function
  • d6355a30 Impl Debug for ParsingError
  • dc5afa13 Use osascript/applescript for notifications on macos
  • e6d6e1f5 Don't unwrap if pseudoterminal creation fails
  • ca84906d Escape all quotes in applescript on macos
  • 4a79b202 Update dependency versions
  • e29041f7 Rename src/bin.rs to src/main.rs
  • 7650805c Bring stripped binary size down to 7MiB
  • ca488968 Add strip option to profile.release
  • 10497952 Wrap stdout in BufWriter
  • 29042aba Add mbox date format parse
  • 480000eb Show error if account directory does not contain ".notmuch" subdirectory
  • a484b397 Show informative error messages if libloading fails
  • 4a20fc42 Update CHANGELOG.md
  • a72c96a2 Add 8BITMIME support to smtp client
  • 3c0f5d82 Add BINARYMIME support to smtp client
  • 36883692 Add smtp test
  • 9cbbf71e Add DecodeOptions struct for decoding
  • 0df46a63 Show error if sqlite3 search backend is set but doesn't exist
  • a7a50d30 Box<_> some large fields in biggest types
  • d8d43a16 Add html_open config setting
  • 0ed10711 Add new_mail_script option
  • c3fdafde Documentation touchups
  • 347be543 Add NetworkErrorKind enum
  • 0c08cb73 Mark mailboxes as subscribed on personal accounts
  • 129573e0 Rename root_path to root_mailbox
  • 7e09b180 Replace _Ref deref unwraps with expect()
  • 55ed9624 Use server_url instead of server_hostname + server_port in config
  • 0ef4dde9 Wrap serde_json deserialize errors in human readable errors
  • dd0baa82 Spawn user-given command strings with sh -c ".."
  • 3697b7d9 Don't use LC_ category in place of LC_ masks in libc calls
  • 6d20abdd Add #[allow(deref_nullptr)] in bindgen tests
  • 17b42b1a Add json deserialization tests
  • 64346dd3 Add map_res, quoted_slice, is_a, alt, take, take_literal
  • 56fc43bc Add As{Ref,Mut} impls for RwRef{,Mut}
  • 63179841 Add --bin flag to meli cargo build target
  • ded9adde More descriptive "Unimplemented" messages
  • 2224a710 Reset imap cache on init error
  • 252d2bdf Replace hardcoded /bin/false with 'false'
  • 2427b097 Make tag_default background lighter on light theme
  • 7382e301 Convert EnvelopeHash from typedef to wrapper struct
  • 259aeb00 Convert {Account,Mailbox}Hash from typedef to wrapper struct
  • 5634f955 Rename MeliError struct to Error
  • 7606317f Add support for virtual mailbox hierarchy
  • 2878bbb8 Add parser for mutt alias file
  • de2f46fe Rustfmt changes
  • f9ac9b60 Temporarily disable libgpgme functions because of a bug
  • 256a3e25 Update minimum supported rust version
  • fbc1007f Deserialize null to empty vec for messageId
  • d7ec97f0 Small rustfmt change
  • 2447a2cb Avoid relying on hardcoded hash values
  • d679a744 Implement Bearer token authentication
  • 47e6d5d9 Add edit-config CLI subcommand that opens config files on EDITOR
  • 3a02b6fb Mention how to override w3m with html_filter
  • 85d4316a Replace old logging module with the log create
  • 1f1ea307 On draw() set dirty on return
  • 77020e0c Update CHANGELOG.md
  • 682ea554 Add .idea (CLion) to .gitignore.
  • f63f6445 Improve error message when m4 executable is missing.
  • cc27639f Use Envelope attachments when editing and don't add already existing headers
  • 30866f75 Bypass rustfmt bug.
  • 235fceaf Add standard heeder constants in email::headers
  • aebff3d3 Implement mailto RFC properly
  • 954329d8 Set file extensions to temp files, use open in macos
  • 58889bca Add show_extra_headers option
  • 23d95973 Add search.rs module
  • 6bf1756d Implement more search criteria in Query type
  • 299c8e0f Restructure pub use melib::* imports
  • f8623d4b Implement more ResponseCode cases
  • b92a80a2 Resync even if UIDVALIDITY is missing from cache
  • bf615e7d Check for case when envelope has its own message id in References and In-Reply-To
  • e0257c9d Run cargo-sort
  • d7e6b40b Auto re-index sqlite3 database if it's missing
  • cd85d833 Replace timestamp with Date value in message/rfc822 Display
  • 579372b4 Improve readability of Envelope.
  • 6c6d9f4b Improve ordering of flag_impl!s.
  • 8f14a237 Put imap-codec logic under the imap_backend feature
  • fd0faade Add connection instance id string for debugging in logs
  • 5c9b3fb0 Impl Component for Box
  • 45bac6eb Tidy up use of debug!
  • 5699baec Add utils::{futures, random}
  • b05d9299 Impl exponential backoff when retrying connection
  • f5cfbd32 On set_flags, update {un,}seen sets in all mailboxes
  • f0d88005 Change message/rfc822 Display repr
  • f98e36ce Replace old-style /*! module doc comments with //!
  • 1bcc0bbe Add mbox parsing test
  • 619fbef1 Recursively calculate update_show_subject()
  • 957abf4e Update cargo dependencies
  • 9d51b6bd Update imap-codec.
  • 7c33f899 Use published imap-codec 0.10.0.
  • 3803d788 If auth is false checks if config has password entry
  • 866166eb Don't print parsing error for empty bytes
  • 5b5869a2 Re-enable print to stderr ifdef MELI_DEBUG_STDERR
  • 13fe64a0 Cache pgp signature verification results
  • 5ceddf41 Update CHANGELOG.md
  • 4e55fbc9 Add SEEN flag to all envs, since NNTP has no flags
  • e9cd800f Add support for storing read status locally
  • 53cba4be Update README.md relative file paths
  • c4c245ee Respect danger_accept_invalid_certs setting
  • 29b43e2c Replace mktime with timegm
  • 4874e30f Add smtp-trace feature
  • 51e9fbe8 Add account_name identifier to sqlite3 index database name
  • 129f1091 Rename imap_backend feature to imap
  • fe027fa3 Rename maildir_backend feature to maildir
  • fe7dcc50 Rename notmuch_backend feature to notmuch
  • e9f09a15 Rename mbox_backend feature to mbox
  • 7db930ca Rename jmap_backend feature to jmap
  • 89c90f22 Add nntp feature
  • b65934fa Add nntp-trace feature
  • 8ecdb6df Add imap-trace feature
  • 9216e7bc Add opt id string for tracing
  • ae25ffba Don't do plain EHLO before starting Tls connection
  • 8cb2a515 Use localhost in lieu of 127.0.0.1 for CI
  • 0ee1b6e0 Start background watch job in init
  • 448e0635 Log error when command length exceeds 512 octets
  • bf543855 Add PartialEq for MessageID
  • 7c7f6e19 Don't increase Thread length for duplicates
  • 5c2b0471 Normalize std::fmt::* imports
  • 0f60009e Add RUSTFLAGS with -D warnings
  • 6578a566 Update cargo install directions
  • 4f6081b6 Update to imap-codec 1.0.0-beta.
  • dc2b0044 Run rustfmt and cargo-sort
  • b3858de2 Impl Fromio::ErrorKind for ErrorKind
  • f93adb68 Replace change_color uses with change_theme
  • f193bdf6 Add column headers and sorting
  • 095d24f9 Add PULL_REQUEST_TEMPLATE.md
  • ab57e942 Add delete_contact shortcut
  • 3963103d Prevent duplicate contact creation
  • f162239f Change on: conditions for test.yaml
  • 974b3a53 Update bitflags, rusqlite dependencies
  • 4d22b669 Update dependencies
  • ffba203a Add support for Home and End key navigation
  • 3433f7c4 Update PULL_REQUEST_TEMPLATE.md
  • f7a4741b Add jmap-trace feature
  • c875dda4 Add last_method_response field to Connection
  • 37a787e6 Use IndexMap instead of HashMap
  • 6ebdc7f9 Add Id<_>::empty() contructor
  • 4f9b9773 Rename EmailImport to EmailImportObject
  • 11432ba2 Make null fields into Option<_>s
  • d9467d5f Save all core capabilities to session store
  • 31982931 Use Argument (value or resultreference) where appropriate
  • 29fd8522 Implement Backend::create_mailbox()
  • 5d8f07c8 Rename some objects better
  • 38bc1369 Add an Identity type.
  • 59513b26 Implement Backend::submit(), server-side submission
  • 5459a84f Update to imap-codec 1.0.0 (w/o -beta)
  • 290cfb86 Add a highlighted_selected theme key
  • 46636d87 Bump version to 0.8.0

Continuous Integration

alpha-0.7.2 - 2021-10-15

Added

  • Add forward mail option
  • Add url_launcher config setting
  • Add add_addresses_to_contacts command
  • Add show_date_in_my_timezone pager config flag
  • docs: add pager filter documentation
  • mail/view: respect per-folder/account pager filter override
  • pager: add filter command, esc to clear filter
  • Show compile time features in with command argument

Fixed

  • melib/email/address: quote display_name if it contains ","
  • melib/smtp: fix Cc and Bcc ignored when sending mail
  • melib/email/address: quote display_name if it contains "."

alpha-0.7.1 - 2021-09-08

Added

  • Change all Down/Up shortcuts to j/k
  • add 'GB18030' charset
  • melib/nntp: implement refresh
  • melib/nntp: update total/new counters on new articles
  • melib/nntp: implement NNTP posting
  • configs: throw error on extra unused conf flags in some imap/nntp
  • configs: throw error on missing composing section with explanation

Fixed

  • Fix compilation for netbsd-9.2
  • conf: fixed some boolean flag values requiring to be string e.g. "true"

alpha-0.7.0 - 2021-09-03

Added

Notable changes:

  • add import command to import email from files into accounts
  • add add-attachment-file-picker command and file_picker_command setting to use external commands to choose files when composing new mail
  • ask confirm for delete
  • add export-mbox command
  • add export-mail command
  • add TLS support with nntp
  • add JMAP watch with polling
  • add reload-config command
  • add import-mail command
  • imap: implement gmail XOAUTH2 authentication method
  • imap: implement OAUTH2 authentication
  • compose: treat inline message/rfc822 as attachments
  • add gpg support via libgpgme

Fixed

  • Loading notmuch library on macos
  • Limit dbus dependency to target_os = "linux"
  • IMAP, notmuch, mbox backends: various performance fixes

alpha-0.6.2 - 2020-09-24

Added

  • Add customizable mailbox tree in sidebar
  • Make dbus dependency opt-out (feature is dbus-notifications)
  • Implemented JMAP async, search, tagging, syncing
  • Preserve account order from configuration file
  • Implemented IMAP CONDSTORE support for IMAP cache
  • Add timeout setting for IMAP
  • Implement TCP keepalive for IMAP
  • Rewrote email address parsers.
  • Implement copy_messages for maildir
  • Implement selection with motions

Fixed

  • Fixed various problems with IMAP cache
  • Fixed various problems with IMAP message counts
  • Fixed various problems with IMAP connection hanging
  • Fixed IMAP not reconnecting on dropped IDLE connections
  • Fixed various problems with notmuch backend

alpha-0.6.1 - 2020-08-02

Added

  • added experimental NNTP backend
  • added server extension support and use in account status tab

Fixed

  • imap: fixed IDLE connection getting stuck when using DEFLATE

alpha-0.6.0 - 2020-07-29

Added

  • Add select command to select threads that match search query

  • Add support for mass copying/deleting/flagging/moving of messages

  • IMAP: add support for COMPRESS=DEFLATE and others Extension use can be configured with individual flags such as use_deflate

  • Rename EXECUTE mode to COMMAND

  • add async IMAP backend

  • add in-app SMTP support

  • ui: Show decoded source by default when viewing an Envelope's source

  • ui: Add search in pagers

  • Add managesieve REPL binary for managesieve script management

  • imap: add server_password_command

  • configuration: Add per-folder and per-account configuration overrides. e.g. accounts."imap.domain.tld".mailboxes."INBOX".index_style = "plain"

    The selection is done for a specific field as follows:

    if per-folder override is defined, return per-folder override
      else if per-account override is defined, return per-account override
        else return global setting field value.
    
  • themes: Add Italics, Blink, Dim and Hidden text attributes

  • ui: recognize readline shortcuts in Execute mode

  • ui: hopefully smarter auto-completion in Execute mode

  • demo NNTP python plugin

  • ui: add auto_choose_multipart_alternative: Choose text/html alternative if text/plain is empty in multipart/alternative attachments.

  • ui: custom date format strings

  • ui: manual refresh for mailbox view

  • ui: create mailbox command

  • fs autocomplete

  • ui: add support for NO_COLOR

  • enhanced, portable Makefile

  • added Debian packaging

  • added default_header_values: default header values used when creating a new draft

  • ui: switch between sidebar and mailbox view with {left,right} keys for more intuitive navigation

  • ui: add optional filter query for each mailbox view to view only the matching subset of messages (for example, you can hide all seen envelopes with filter = "not flags:seen"

Changed

  • Replace any use of 'folder' with 'mailbox' in user configuration
  • Load libnotmuch dynamically
  • Launch all user shell commands with sh -c "..."

Fixed

  • notmuch: add support for multiple accounts on same notmuch db

alpha-0.5.1 - 2020-02-09

Added

  • Added in-terminal floating notifications with history
  • Added mailbox creation/deletion commands in IMAP accounts
  • Added cli-docs compile time feature: Optionally build manpages to text with mandoc and print them from the command line.
  • Added new theme keys