- reply: consider the From address too when checking aliases
- imap: strip whitespace from Message-Id and In-Reply-To
- attach: fix content-transfer-encoding for rfc822 attachments
- textinput: make completions run async with cancellation
- history: read the history file from XDG_STATE_HOME
- completion: add command option descriptions
- completion: add commands descriptions
- completion: display descriptions next to choices
- gpg: do not sign with untrusted keys
- docs: fix typo for aerc-notmuch multi-file-strategy
- viewer: avoid crashes on opening invalid messages
- invite: honor the -a flag for :send
- mk: fix debug cflags
- notmuch: fix explicit searches for excluded tags
- mbox: handle invalid URL scheme in command line
- send: allow using envelope from address
- xdg: determine user runtime directory in a robust manner
- doc: fix formatting of reply -A flag
- reply: make {{.OriginalText}} available to custom templates
- config: add pinentry support to cred commands
- crypto: add pinentry support to gpg
- aerc: support terminal-based pinentry programs
- aerc: add quake-mode terminal
- models: pad message uids with zeroes
- calendar: skip editor when replying to invitations
- ircbot: sanitize email subjects
- commands: add reload
- store: extract configure logic
- account: update split views
- account: extract configure logic
- account: remove ui config struct field
- tabs: update ui config in any tab
- log: handle config reload
- config: extract load styleset function
- config: add reload helper functions
- jmap: refactor thread fetching
- jmap: lazily fetch identities
- maildir: set the forwarded flag when forwarding msgs
- notmuch: set the "passed" tag when forwarding msgs
- flag: manually toggle the forwarded tag
- templates: add a template for forwaded messages
- styles: add a style for forwarded messages
- search: allow searching for forwarded messages
- forward: allow forwarded flag to be set
- copy: add -d flag to decrypt before copying
- pipe: add -d flag to decrypt message
- cryptoutil: implement cleartext function
- mod: update go-maildir to v0.5.0
- go: bump minimal version to 1.21 and handle deprecations
- maildir: only abort directory listing if there are 0 uids
- filters: send real COLUMNS and LINES values
- templates: fix AccountFrom default breaking startup
- log: explain why the signature command failed
- template: pass account and folder names to signature command
- jmap: fix emailKey function name
- send: redact password in outgoing URI for logging
- notmuch: reload all changed messages on DB change
- view-message: add option to view message in background tab
- search,filter: add flag to use custom extensions
- imap: expose extension in capabilities
- imap: extend SEARCH with X-GM-RAW for full Gmail search syntax
- hooks: add logging for STDOUT and STDERR
- jmap: fix typo in man page
- calendar: fix error with non-gnu awk
- depends-diff: only print changes if any
- Release version 0.18.1
- smtp: take smtp-domain into account for tls connections
- smtp: fix error when setting smtp-domain with starttls
- rfc822: make header parsing less pedantic
- log: create directories if necessary
- vaxis: update to 0.9.2
- dirlist: store previous folder info
- rmdir: allow specifying folder to delete
- query: allow forcing overwrite of existing folder
- binds: allow per folder sections for the message viewer
- jmap: fix message list order direction
- commands: use AccountConfig.Backend instead of reflect
- hooks: add AERC_ACCOUNT_BACKEND to hooks with AERC_ACCOUNT
- templates: add .AccountBackend
- hooks: add AERC_FOLDER_ROLE to hooks with AERC_FOLDER
- accounts: skip accounts with errors instead of exiting
- jmap: bump go-jmap to v0.5.0
- doc: fix the syntax for -d in the usage example
- doc: update and rephrase -H header search syntax
- move: avoid crash when message list is not ready
- jmap: skip Email/get call if no emails to get
- app: propagate bell from the built-in terminal
- sendemail-validate: put prefix directly after -t flag
- wrap: include xlocale.h header on macOS
- jmap: fix go static check failure
- jmap: fix error message
- ui: add select-last-message option
- jmap: fetch entire threads
- jmap: invalidate cache if mailbox state is not consistent
- sendemail-validate: optionally use patatt to attest patches
- wrap: use nl_langinfo to get locale codeset
- binds: fix default d binding to actually ask a question
- doc: fix new-account mentions for all protocols
- github: fix macos build
- config: fix typos in aerc.conf comments
- readme: fix broken arch binary link
- imap: fix panic in connect
- docs: remove msmtp notice
- msgstore: restore the directoryChange bool to fix new message bell
- app: make aerc satisfy the Beeper interface again
- compose,viewer: do not always wrap people names in quotes
- sendemail-validate: add fallback for older git
- compose: explicitly identify converted text/* parts
- vaxis: fix panic trace print on stderr
- pipe: allow closing the terminal automatically
- gitignore: add tags and aerc-release-stats.png
- docs: be more explicit about the behaviour of :accept
- config: allow global options in accounts.conf
- composer: block :quit command if composer is active
- binds: fix FormatKeyStrokes to properly display certain keystrokes
- readme: add missing link for aerc-patch man page
- open: preserve the original filename
- contrib: improve readability of meeting requests
- ipc: add more fine-grained options to disable IPC
- ipc: disable IPC completely when disable-ipc=true
- ipc: add --no-ipc flag to completely disable IPC
- ipc: retry failed command directly, not over IPC
- ipc: improve error handling
- ui: use a custom prefix for dummy root
- notmuch: draw incomplete threads
- filters: add matching against attachment filename
- docs: update filter tips for images
- docs: correct IMAP IDLE default setting
- templates: do not add new line after signature
- release: improve generated email
- commands: add :query to create named notmuch dirs
- imap: drain updates channel when deleting messages
- ui: update vaxis and only use disambiguate csi-u flag
- view: only set seen flag if not present
- templates: Add documentation for .Signature
- security: update dependencies with known vulnerabilities
- filter: allow workers to combine filter terms
- commands: add align
- config: add msglist-scroll-offset
- scrollable: rewrite with scroll offset
- calendar: make invitation matching case-insensitive
- app: add keybinds annotation when printing bindings
- compose: show annotations on the review screen
- binds: parse annotations from keybind config
- templates: use email address as fallback
- Release version 0.17.0
- main: improve version string
- commands: rename patch delete to patch unlink
- templates: fix typo in the docs
- commands: rename patch remove to patch drop
- compose: fix deadlock when editor errors after :reply -c
- ipc: wait for app to be ready before accepting commands
- listbox: send some key events to textinput
- menu: use listbox as fallback command
- app: define two dialog constructors
- listbox: add external text filter function
- listbox: use tab key to cycle through list
- ui: allow thread arrow customization
- notmuch: correctly run queries in `*` folder
- doc: make sure aliases have the same signature
- help: add :man as alias
- mv: fix regression in selection of next message
- bindings: do not systematically trigger completion
- binds: add some vim-inspired binds
- maildir: show valid messages even if there are errors
- release.sh: add --dry-run flag
- flags: add support for draft flag
- notmuch: centralize flag/tag mappings
- tabs: optimize switching by offsets
- compose: don't attach key when removing signature
- mod: upgrade go-maildir to v0.4.1