12021-10-29 Richard Russon <rich@flatcap.org> 2* Features 3 - Notmuch: support separate database and mail roots without .notmuch 4* Bug Fixes 5 - fix notmuch crash on open failure 6 - fix crypto crash handling pgp keys 7 - fix ncrypt/pgp file_get_size return check 8 - fix restore case-insensitive header sort 9 - fix pager redrawing of long lines 10 - fix notmuch: check database dir for xapian dir 11 - fix notmuch: update index count after `<entire-thread>` 12 - fix protect hash table against empty keys 13 - fix prevent real_subj being set but empty 14 - fix leak when saving fcc 15 - fix leak after `<edit-or-view-raw-message>` 16 - fix leak after trash to hidden mailbox 17 - fix leak restoring postponed emails 18 192021-10-22 Richard Russon <rich@flatcap.org> 20* Bug Fixes 21 - fix new mail notifications 22 - fix pattern compilation error for ~( !~>(~P) ) 23 - fix menu display on window resize 24 - Stop batch mode emails with no argument or recipients 25 - Add sanitize call in print mailcap function 26 - fix `hdr_order` to use the longest match 27 - fix (un)setenv to not return an error with unset env vars 28 - fix Imap sync when closing a mailbox 29 - fix segfault on OpenBSD current 30 - sidebar: restore `sidebar_spoolfile` colour 31 - fix assert when displaying a file from the browser 32 - fix exec command in compose 33 - fix `check_stats` for Notmuch mailboxes 34 - Fallback: Open Notmuch database without config 35 - fix gui hook commands on startup 36* Changed Config 37 - Re-enable `$ssl_force_tls` 38* Translations 39 - 100% Serbian 40 - 100% Lithuanian 41 - 100% German 42* Build 43 - Remove Slang from the build 44 - Warn about deprecated configure options 45 462021-10-15 Richard Russon <rich@flatcap.org> 47* Security 48 - Fix CVE-2021-32055 49* Features 50 - threads: implement the `$use_threads` feature 51 https://neomutt.org/feature/use-threads 52 - hooks: allow a -noregex param to folder and mbox hooks 53 - mailing lists: implement list-(un)subscribe using RFC2369 headers 54 - mailcap: implement x-neomutt-nowrap flag 55 - pager: add `$local_date_header` option 56 - imap, smtp: add support for authenticating using XOAUTH2 57 - Allow `<sync-mailbox`> to fail quietly 58 - imap: speed up server-side searches 59 - pager: improve skip-quoted and skip-headers 60 - notmuch: open database with user's configuration 61 - notmuch: implement `<vfolder-window-reset>` 62 - config: allow += modification of my_ variables 63 - notmuch: tolerate file renames behind neomutt's back 64 - pager: implement `$pager_read_delay` 65 - notmuch: validate `nm_query_window_timebase` 66 - notmuch: make $nm_record work in non-notmuch mailboxes 67 - compose: add `$greeting` - a welcome message on top of emails 68 - notmuch: show additional mail in query windows 69* Changed Config 70- Renamed lots of config, e.g. `askbcc` to `ask_bcc`. 71* Bug Fixes 72 - imap: fix crash on external IMAP events 73 - notmuch: handle missing libnotmuch version bumps 74 - imap: add sanity check for qresync 75 - notmuch: allow windows with 0 duration 76 - index: fix index selection on `<collapse-all>` 77 - imap: fix crash when sync'ing labels 78 - search: fix searching by Message-Id in `<mark-message>` 79 - threads: fix double sorting of threads 80 - stats: don't check mailbox stats unless told 81 - alias: fix crash on empty query 82 - pager: honor mid-message config changes 83 - mailbox: don't propagate read-only state across reopens 84 - hcache: fix caching new labels in the header cache 85 - crypto: set invalidity flags for gpgme/smime keys 86 - notmuch: fix parsing of multiple `type=` 87 - notmuch: validate $nm_default_url 88 - messages: avoid unnecessary opening of messages 89 - imap: fix seqset iterator when it ends in a comma 90 - build: refuse to build without pcre2 when pcre2 is linked in ncurses 91* Translations 92 - 100% Serbian 93 - 100% Lithuanian 94 - 100% German 95 - 100% Czech 96 - 96% Spanish 97 - 92% Polish 98 - 85% Norwegian 99 - 80% French 100 - 78% Russian 101 - 74% Esperanto 102 - 66% Greek 103 1042021-02-05 Richard Russon <rich@flatcap.org> 105* Features 106 - Add <skip-headers> to skip past message headers in pager 107 - Add <view-pager> function to attachment menu 108* Bug Fixes 109 - Fix detection of mbox files with new mail 110 - Fix crash on collapsed thread 111 - Fix group-chat-reply 112 - Clear the message window on resize 113 - Do not crash on return from shell-exec if there's no open mailbox 114 - Abort IMAP open if condstore/qresync updates fetch fails 115 - Fix smtp crash on invalid $smtp_authenticators list 116 - Fix pager dropped input on screen resize 117 - Fix mime forwarding 118 - Check config after hooks 119 - Always recreate a mailbox after folder-hook 120* Translations 121 - 88% Slovakian 122* Docs 123 - Adjust doc to explicitly mention $count_alternative 124 - Restore correct "$sort_re" documentation 125 - Clarify pattern completion 126 - Man pages: Clear up "-H" and "-O" 127* Build 128 - Update to latest acutest 129 - Update to latest autosetup 130 - Make the location of /tmp configurable 131 1322020-11-20 Richard Russon <rich@flatcap.org> 133* Bug Fixes 134 - Fix crash when saving an alias 135* Translations 136 - 70% Russian 137* Code 138 - Remove redundant function call 139 1402020-11-20 Richard Russon <rich@flatcap.org> 141* Security 142 - imap: close connection on all failures 143* Features 144 - alias: add <limit> function to Alias/Query dialogs 145 - config: add validators for {imap,smtp,pop}_authenticators 146 - config: warn when signature file is missing or not readable 147 - smtp: support for native SMTP LOGIN auth mech 148 - notmuch: show originating folder in index 149* Bug Fixes 150 - sidebar: prevent the divider colour bleeding out 151 - sidebar: fix <sidebar-{next,prev}-new> 152 - notmuch: fix <entire-thread> query for current email 153 - restore shutdown-hook functionality 154 - crash in reply-to 155 - user-after-free in folder-hook 156 - fix some leaks 157 - fix application of limits to modified mailboxes 158 - write Date header when postponing 159* Translations 160 - 100% Lithuanian 161 - 100% Czech 162 - 70% Turkish 163* Docs 164 - Document that $sort_alias affects the query menu 165* Build 166 - improve ASAN flags 167 - add SASL and S/MIME to --everything 168 - fix contrib (un)install 169* Code 170 - my_hdr compose screen notifications 171 - add contracts to the MXAPI 172 - maildir refactoring 173 - further reduce the use of global variables 174* Upstream 175 - Add $count_alternatives to count attachments inside alternatives 176 1772020-09-25 Richard Russon <rich@flatcap.org> 178* Features 179 - Compose: display user-defined headers 180 - Address Book / Query: live sorting 181 - Address Book / Query: patterns for searching 182 - Config: Add '+=' and '-=' operators for String Lists 183 - Config: Add '+=' operator for Strings 184 - Allow postfix query ':setenv NAME?' for env vars 185* Bug Fixes 186 - Fix crash when searching with invalid regexes 187 - Compose: Prevent infinite loop of `send2-hook`s 188 - Fix sidebar on new/removed mailboxes 189 - Restore indentation for named mailboxes 190 - Prevent half-parsing an alias 191 - Remove folder creation prompt for POP path 192 - Show error if `$message_cachedir` doesn't point to a valid directory 193 - Fix tracking LastDir in case of IMAP paths with Unicode characters 194 - Make sure all mail gets applied the index limit 195 - Add warnings to -Q query CLI option 196 - Fix index tracking functionality 197* Changed Config 198 - Add `$compose_show_user_headers` (yes) 199* Translations 200 - 100% Czech 201 - 100% Lithuanian 202 - Split up usage strings 203* Build 204 - Run shellcheck on hcachever.sh 205 - Add the Address Sanitizer 206 - Move compose files to lib under compose/ 207 - Move address config into libaddress 208 - Update to latest acutest - fixes a memory leak in the unit tests 209* Code 210 - Implement ARRAY API 211 - Deglobalised the Config Sort functions 212 - Refactor the Sidebar to be Event-Driven 213 - Refactor the Color Event 214 - Refactor the Commands list 215 - Make ctx_update_tables private 216 - Reduce the scope/deps of some Validator functions 217 - Use the Email's IMAP UID instead of an increasing number as index 218 - debug: log window focus 219 2202020-08-21 Richard Russon <rich@flatcap.org> 221* Bug Fixes 222 - fix maildir flag generation 223 - fix query notmuch if file is missing 224 - notmuch: don't abort sync on error 225 - fix type checking for send config variables 226* Changed Config 227 - `$sidebar_format` - Use `%D` rather than `%B` for named mailboxes 228* Translations 229 - 96% Lithuanian 230 - 90% Polish 231 2322020-08-14 Richard Russon <rich@flatcap.org> 233* Security 234 - Add mitigation against DoS from thousands of parts 235* Features 236 - Allow index-style searching in postpone menu 237 - Open NeoMutt using a mailbox name 238 - Add `cd` command to change the current working directory 239 - Add tab-completion menu for patterns 240 - Allow renaming existing mailboxes 241 - Check for missing attachments in alternative parts 242 - Add one-liner docs to config items 243* Bug Fixes 244 - Fix logic in checking an empty From address 245 - Fix Imap crash in `cmd_parse_expunge()` 246 - Fix setting attributes with S-Lang 247 - Fix: redrawing of `$pager_index_lines` 248 - Fix progress percentage for syncing large mboxes 249 - Fix sidebar drawing in presence of indentation + named mailboxes 250 - Fix retrieval of drafts when "postponed" is not in the mailboxes list 251 - Do not add comments to address group terminators 252 - Fix alias sorting for degenerate addresses 253 - Fix attaching emails 254 - Create directories for nonexistent file hcache case 255 - Avoid creating mailboxes for failed subscribes 256 - Fix crash if rejecting cert 257* Changed Config 258 - Add `$copy_decode_weed`, `$pipe_decode_weed`, `$print_decode_weed` 259 - Change default of `$crypt_protected_headers_subject` to "..." 260 - Add default keybindings to history-up/down 261* Translations 262 - 100% Czech 263 - 100% Spanish 264* Build 265 - Allow building against Lua 5.4 266 - Fix when sqlite3.h is missing 267* Docs 268 - Add a brief section on stty to the manual 269 - Update section "Terminal Keybindings" in the manual 270 - Clarify PGP Pseudo-header `S<id>` duration 271* Code 272 - Clean up String API 273 - Make the Sidebar more independent 274 - De-centralise the Config Variables 275 - Refactor dialogs 276 - Refactor: Help Bar generation 277 - Make more APIs Context-free 278 - Adjust the edata use in Maildir and Notmuch 279 - Window refactoring 280 - Convert libsend to use Config functions 281 - Refactor notifications to reduce noise 282 - Convert Keymaps to use STAILQ 283 - Track currently selected email by msgid 284 - Config: no backing global variable 285 - Add events for key binding 286* Upstream 287 - Fix imap postponed mailbox use-after-free error 288 - Speed up thread sort when many long threads exist 289 - Fix ~v tagging when switching to non-threaded sorting 290 - Add message/global to the list of known "message" types 291 - Print progress meter when copying/saving tagged messages 292 - Remove ansi formatting from autoview generated quoted replies 293 - Change postpone mode to write Date header too 294 - Unstuff `format=flowed` 295 2962020-08-07 Richard Russon <rich@flatcap.org> 297* Devel Release - see 2020-08-14 298 2992020-06-26 Richard Russon <rich@flatcap.org> 300* Bug Fixes 301 - Avoid opening the same hcache file twice 302 - Re-open Mailbox after folder-hook 303 - Fix the matching of the spool_file Mailbox 304 - Fix link-thread to link all tagged emails 305* Changed Config 306 - Add $tunnel_is_secure config, defaulting to true 307* Upstream 308 - Don't check IMAP PREAUTH encryption if $tunnel is in use 309 - Add recommendation to use $ssl_force_tls 310 3112020-06-19 Richard Russon <rich@flatcap.org> 312* Security 313 - Abort GnuTLS certificate check if a cert in the chain is rejected 314 - TLS: clear data after a starttls acknowledgement 315 - Prevent possible IMAP MITM via PREAUTH response 316* Features 317 - add config operations +=/-= for number,long 318 - Address book has a comment field 319 - Query menu has a comment field 320* Contrib 321 - sample.neomuttrc-starter: Do not echo promted password 322* Bug Fixes 323 - make "news://" and "nntp://" schemes interchangeable 324 - Fix CRLF to LF conversion in base64 decoding 325 - Double comma in query 326 - compose: fix redraw after history 327 - Crash inside empty query menu 328 - mmdf: fix creating new mailbox 329 - mh: fix creating new mailbox 330 - mbox: error out when an mbox/mmdf is a pipe 331 - Fix list-reply by correct parsing of List-Post headers 332 - Decode references according to RFC2047 333 - fix tagged message count 334 - hcache: fix keylen not being considered when building the full key 335 - sidebar: fix path comparison 336 - Don't mess with the original pattern when running IMAP searches 337 - Handle IMAP "NO" resps by issuing a msg instead of failing badly 338 - imap: use the connection delimiter if provided 339 - Memory leaks 340* Changed Config 341 - `$alias_format` default changed to include `%c` comment 342 - `$query_format` default changed to include `%e` extra info 343* Translations 344 - 100% Lithuanian 345 - 84% French 346 - Log the translation in use 347* Docs 348 - Add missing commands unbind, unmacro to man pages 349* Build 350 - Check size of long using `LONG_MAX` instead of `__WORDSIZE` 351 - Allow ./configure to not record cflags 352 - fix out-of-tree build 353 - Avoid locating gdbm symbols in qdbm library 354* Code 355 - Refactor unsafe TAILQ returns 356 - add window notifications 357 - flip negative ifs 358 - Update to latest acutest.h 359 - test: add store tests 360 - test: add compression tests 361 - graphviz: email 362 - make more opcode info available 363 - refactor: `main_change_folder()` 364 - refactor: `mutt_mailbox_next()` 365 - refactor: `generate_body()` 366 - compress: add `{min,max}_level` to ComprOps 367 - emphasise empty loops: "// do nothing" 368 - prex: convert `is_from()` to use regex 369 - Refactor IMAP's search routines 370 3712020-05-01 Richard Russon <rich@flatcap.org> 372* Bug Fixes 373 - Make sure buffers are initialized on error 374 - fix(sidebar): use abbreviated path if possible 375* Translations 376 - 100% Lithuanian 377* Docs 378 - make header cache config more explicit 379 3802020-04-24 Richard Russon <rich@flatcap.org> 381* Bug Fixes 382 -Fix history corruption 383 -Handle pretty much anything in a URL query part 384 -Correctly parse escaped characters in header phrases 385 -Fix crash reading received header 386 -Fix sidebar indentation 387 -Avoid crashing on failure to parse an IMAP mailbox 388 -Maildir: handle deleted emails correctly 389 -Ensure OP_NULL is always first 390* Translations 391 -100% Czech 392* Build 393 -cirrus: enable pcre2, make pkgconf a special case 394 -Fix finding pcre2 w/o pkgconf 395 -build: tdb.h needs size_t, bring it in with stddef.h 396 3972020-04-17 Richard Russon <rich@flatcap.org> 398* Features 399 - Fluid layout for Compose Screen, see: https://vimeo.com/407231157 400 - Trivial Database (TDB) header cache backend 401 - RocksDB header cache backend 402 - Add \<sidebar-first\> and \<sidebar-last\> functions 403* Bug Fixes 404 - add error for CLI empty emails 405 - Allow spaces and square brackets in paths 406 - browser: fix hidden mailboxes 407 - fix initial email display 408 - notmuch: fix time window search. 409 - fix resize bugs 410 - notmuch: fix entire-thread: update current email pointer 411 - sidebar: support indenting and shortening of names 412 - Handle variables inside backticks in sidebar_whitelist 413 - browser: fix mask regex error reporting 414* Translations 415 - 100.00% Lithuanian 416 - 98.88% Chinese (simplified) 417* Build 418 - Use regexes for common parsing tasks: urls, dates 419 - Add configure option `--pcre2` -- Enable PCRE2 regular expressions 420 - Add configure option `--tdb` -- Use TDB for the header cache 421 - Add configure option `--rocksdb` -- Use RocksDB for the header cache 422 - Create libstore (key/value backends) 423 - Update to latest autosetup 424 - Update to latest acutest.h 425 - Rename `doc/` directory to `docs/` 426 - make: fix location of .Po dependency files 427 - Change libcompress to be more universal 428 - Fix test fails on х32 429 - fix uidvalidity to unsigned 32-bit int 430* Code 431 - Increase test coverage 432 - Fix memory leaks 433 - Fix null checks 434* Upstream 435 - Buffer refactoring 436 - Fix use-after-free in mutt_str_replace() 437 - Clarify PGP Pseudo-header S\<id\> duration 438 - Try to respect MUTT_QUIET for IMAP contexts too 439 - Limit recurse depth when parsing mime messages 440 4412020-03-20 Richard Russon \<rich@flatcap.org\> 442* Bug Fixes 443 - Fix COLUMNS env var 444 - Fix sync after delete 445 - Fix crash in notmuch 446 - Fix sidebar indent 447 - Fix emptying trash 448 - Fix command line sending 449 - Fix reading large address lists 450 - Resolve symlinks only when necessary 451* Translations 452 - 100% Lithuanian 453 - 96% Spanish 454* Docs 455 - Include OpenSSL/LibreSSL/GnuTLS version in neomutt -v output 456 - Fix case of GPGME and SQLite 457* Build 458 - Create libcompress (lz4, zlib, zstd) 459 - Create libhistory 460 - Create libbcache 461 - Move zstrm to libconn 462* Code 463 - Add more test coverage 464 - Rename magic to type 465 - Use mutt_file_fopen() on config variables 466 - Change commands to use intptr_t for data 467 4682020-03-13 Richard Russon \<rich@flatcap.org\> 469* Features 470 - UI: add number of old messages to sidebar_format 471 - UI: support ISO 8601 calendar date 472 - UI: fix commands that don’t need to have a non-empty mailbox to be valid 473 - PGP: inform about successful decryption of inline PGP messages 474 - PGP: try to infer the signing key from the From address 475 - PGP: enable GPGME by default 476 - Notmuch: use query as name for vfolder-from-query 477 - IMAP: add network traffic compression (COMPRESS=DEFLATE, RFC4978) 478 - Header cache: add support for generic header cache compression 479* Bug Fixes 480 - Fix uncollapse_jump 481 - Only try to perform entire-thread on maildir/mh mailboxes 482 - Fix crash in pager 483 - Avoid logging single new lines at the end of header fields 484 - Fix listing mailboxes 485 - Do not recurse a non-threaded message 486 - Fix initial window order 487 - Fix leaks on IMAP error paths 488 - Notmuch: compose(attach-message): support notmuch backend 489 - Fix IMAP flag comparison code 490 - Fix $move for IMAP mailboxes 491 - Maildir: maildir_mbox_check_stats should only update mailbox stats if requested 492 - Fix unmailboxes for virtual mailboxes 493 - Maildir: sanitize filename before hashing 494 - OAuth: if 'login' name isn't available use 'user' 495 - Add error message on failed encryption 496 - Fix a bunch of crashes 497 - Force C locale for email date 498 - Abort if run without a terminal 499* Changed Config 500 - `$crypt_use_gpgme` - Now defaults to 'yes' (enabled) 501 - `$abort_backspace` - Hitting backspace against an empty prompt aborts the prompt 502 - `$abort_key` - String representation of key to abort prompts 503 - `$arrow_string` - Use an custom string for arrow_cursor 504 - `$crypt_opportunistic_encrypt_strong_keys` - Enable encryption only when strong a key is available 505 - `$header_cache_compress_dictionary` - Filepath to dictionary for zstd compression 506 - `$header_cache_compress_level` - Level of compression for method 507 - `$header_cache_compress_method` - Enable generic hcache database compression 508 - `$imap_deflate` - Compress network traffic 509 - `$smtp_user` - Username for the SMTP server 510* Translations 511 - 100% Lithuanian 512 - 81% Spanish 513 - 78% Russian 514* Build 515 - Add libdebug 516 - Rename public headers to lib.h 517 - Create libcompress for compressed folders code 518 - Enable Cirrus CI for FreeBSD 519* Code 520 - Refactor Windows and Dialogs 521 - Lots of code tidying 522 - Refactor: mutt_addrlist\_{search,write} 523 - Lots of improvements to the Config code 524 - Use Buffers more pervasively 525 - Unify API function naming 526 - Rename library shared headers 527 - Refactor libconn gui dependencies 528 - Refactor: init.[ch] 529 - Refactor config to use subsets 530 - Config: add path type 531 - Remove backend deps from the connection code 532* Upstream 533 - Allow ~b ~B ~h patterns in send2-hook 534 - Rename smime oppenc mode parameter to get_keys_by_addr() 535 - Add $crypt_opportunistic_encrypt_strong_keys config var 536 - Fix crash when polling a closed ssl connection 537 - Turn off auto-clear outside of autocrypt initialization 538 - Add protected-headers="v1" to Content-Type when protecting headers 539 - Fix segv in IMAP postponed menu caused by reopen_allow 540 - Adding ISO 8601 calendar date 541 - Fix $fcc_attach to not prompt in batch mode 542 - Convert remaining mutt_encode_path() call to use struct Buffer 543 - Fix rendering of replacement_char when Charset_is_utf8 544 - Update to latest acutest.h 545 5462019-12-07 Richard Russon \<rich@flatcap.org\> 547* Features 548 - compose: draw status bar with highlights 549* Bug Fixes 550 - crash opening notmuch mailbox 551 - crash in mutt_autocrypt_ui_recommendation 552 - Avoid negative allocation 553 - Mbox new mail 554 - Setting of DT_MAILBOX type variables from Lua 555 - imap: empty cmdbuf before connecting 556 - imap: select the mailbox on reconnect 557 - compose: fix attach message 558* Build 559 - make files conditional 560 - add gpgme check for RHEL6 561* Code 562 - enum-ify log levels 563 - fix function prototypes 564 - refactor virtual email lookups 565 - factor out global Context 566 5672019-11-29 Richard Russon \<rich@flatcap.org\> 568* Features 569 - Add raw mailsize expando (%cr) 570* Bug Fixes 571 - Avoid double question marks in bounce confirmation msg 572 - Fix bounce confirmation 573 - fix new-mail flags and behaviour 574 - fix: browser \<descend-directory\> 575 - fix ssl crash 576 - fix move to trash 577 - fix flickering 578 - Do not check hidden mailboxes for new mail 579 - Fix new_mail_command notifications 580 - fix crash in examine_mailboxes() 581 - fix crash in mutt_sort_threads() 582 - fix: crash after sending 583 - Fix crash in tunnel's conn_close 584 - fix fcc for deep dirs 585 - imap: fix crash when new mail arrives 586 - fix colour 'quoted9' 587 - quieten messages on exit 588 - fix: crash after failed mbox_check 589 - browser: default to a file/dir view when attaching a file 590* Changed Config 591 - Change $write_bcc to default off 592* Translations 593 - 100% Portuguese (Brazil) 594 - 92% Polish 595* Docs 596 - Add a bit more documentation about sending 597 - Clarify $write_bcc documentation. 598 - Update documentation for raw size expando 599 - docbook: set generate.consistent.ids to make generated html reproducible 600* Build 601 - fix build/tests for 32-bit arches 602 - tests: fix test that would fail soon 603 - tests: fix context for failing idna tests 604 6052019-11-11 Richard Russon \<rich@flatcap.org\> 606* Bug Fixes 607 - browser: fix directory view 608 - fix crash in mutt_extract_token() 609 - force a screen refresh 610 - fix crash sending message from command line 611 - notmuch: use nm_default_url if no mailbox data 612 - fix forward attachments 613 - fix: vfprintf undefined behaviour in body_handler 614 - Fix relative symlink resolution 615 - fix: trash to non-existent file/dir 616 - fix re-opening of mbox Mailboxes 617 - close logging as late as possible 618 - log unknown mailboxes 619 - fix crash in command line postpone 620 - fix memory leaks 621 - fix icommand parsing 622 - fix new mail interaction with mail_check_recent 623 6242019-11-02 Richard Russon \<rich@flatcap.org\> 625* Bug Fixes 626 - Mailboxes command with empty backticks 627 - Mbox save-to-trash 628 - Mkdir for new maildir folders 629 - Maildir: new mail detection 630 - Truncation of "set" command on a path variable 631 - Update crash (when changing folder) 632 - Resolve symbolic links when saving a message 633 - Folder-hook calling "unmailboxes \*" 634 - Failed ssl negotiation 635 - Crash when using "alias -group" 636 - LibIDN error when charset wasn't set 637 - Notmuch abort entire-thread if database lacks message 638 6392019-10-25 Richard Russon \<rich@flatcap.org\> 640* Features 641 - Add $fcc_before_send, defaulting unset 642 - Deprecate TLS 1.0 and 1.1 by default 643 - Turn on $ssl_force_tls by default 644 - Command line -z and -Z options to work with IMAP 645 - Add size display configuration variables 646 - Summary pages: version, set, set all, bind, macro 647 - CONDSTORE and QRESYNC support 648 - OAUTHBEARER support 649 - inotify support 650 - add index-format-hook 651 - Add $auto_subscribe variable 652 - Allow relative date hour/min/sec offsets 653 - Add attributes support on color declarations 654 - Style Menu Options 655 - Add new pattern type ~I for external searches 656 - Add \<named-mailboxes\> command 657* Changed Config 658 - folder_format 659 - pgp_use_gpg_agent 660 - shell 661 - ssl_force_tls 662 - ssl_use_tlsv1 663 - ssl_use_tlsv1_1 664 - status_format 665 - to_chars 666 - user_agent 667* New Config 668 - attach_save_dir 669 - attach_save_without_prompting 670 - autocrypt 671 - autocrypt_acct_format 672 - autocrypt_dir 673 - autocrypt_reply 674 - auto_subscribe 675 - crypt_chars 676 - crypt_protected_headers_read 677 - crypt_protected_headers_save 678 - crypt_protected_headers_subject 679 - crypt_protected_headers_write 680 - external_search_command 681 - fcc_before_send 682 - forward_attachments 683 - imap_condstore 684 - imap_fetch_chunk_size 685 - imap_oauth_refresh_command 686 - imap_qresync 687 - imap_rfc5161 688 - include_encrypted 689 - nm_flagged_tag 690 - nm_replied_tag 691 - pop_oauth_refresh_command 692 - sidebar_non_empty_mailbox_only 693 - size_show_bytes 694 - size_show_fractions 695 - size_show_mb 696 - size_units_on_left 697 - smtp_oauth_refresh_command 698 - ssl_use_tlsv1_3 699* New Commands 700 - index-format-hook 701 - named-mailboxes 702 - unbind 703 - unmacro 704* New Functions 705 - autocrypt-acct-menu 706 - autocrypt-menu 707 - compose-to-sender 708 - create-account 709 - delete-account 710 - descend-directory 711 - group-chat-reply 712 - mailbox-cycle 713 - mailbox-list 714 - toggle-active 715 - toggle-prefer-encrypt 716 - toggle-write 717 - vfolder-from-query-readonly 718* Bug Fixes 719 - Fix crashes 720 - Fix memory leaks 721 - Fix undefined behaviour 722 - Fix coverity defects 723* Translations 724 - 100% Lithuanian 725 - 100% Chinese (Simplified) 726 - 100% Portuguese (Brazil) 727 - 95% German 728 - 95% Finnish 729 - 95% Czech 730 - 91% Polish 731 - 78% Japanese 732 - 73% Dutch 733 - 72% Spanish 734 - 62% Swedish 735 - 55% Slovak 736* Docs 737 - OpenPGP and S/MIME configuration 738 - Quick-starter config section 739 - Autocrypt feature 740 - "Message Composition Flow" section to manual 741 - OAUTH support 742 7432018-07-16 Richard Russon \<rich@flatcap.org\> 744* Features 745 - \<check-stats\> function 746* Bug Fixes 747 - Lots 748 7492018-06-22 Richard Russon \<rich@flatcap.org\> 750* Features 751 - Expand variables inside backticks 752 - Honour SASL-IR IMAP capability in SASL PLAIN 753* Bug Fixes 754 - Fix toggle-read 755 - Do not truncate shell commands on ; or # 756 - pager: index must be rebuilt on MUTT_REOPENED 757 - Handle a BAD response in AUTH PLAIN w/o initial response 758 - fcc_attach: Don't ask every time 759 - Enlarge path buffers PATH_MAX (4096) 760 - Move LSUB call from connection establishment to mailbox SELECTion 761* Translations 762 - Update Chinese (Simplified): 100% 763 - Update Czech: 100% 764 - Update German: 100% 765 - Update Lithuanian: 100% 766 - Update Portuguese (Brazil): 100% 767 - Update Slovak: 59% 768 - Reduce duplication of messages 769* Code 770 - Tidy up the mailbox API 771 - Tidy up the header cache API 772 - Tidy up the encryption API 773 - Add doxygen docs for more functions 774 - Refactor more structs to use STAILQ 775 7762018-05-12 Richard Russon \<rich@flatcap.org\> 777* Features 778 - echo command 779 - Add $browser_abbreviate_mailboxes 780 - Add ~M pattern to match mime Content-Types 781 - Add support for multipart/multilingual emails 782 - Jump to a collapsed email 783 - Add support for idn2 (IDNA2008) 784* Bug Fixes 785 - Let mutt_ch_choose report conversion failure 786 - minor IMAP string handling fixes 787* Translations 788 - Chinese (Simplified) (100%) 789 - Czech (100%) 790 - German (100%) 791 - Lithuanian (62%) 792 - Portuguese (Brazil) (100%) 793* Coverity defects 794 - match prototypes to their functions 795 - make logic clearer 796 - reduce scope of variables 797 - fix coverity defects 798* Docs 799 - development: analysis 800 - development: easy tasks 801 - development: roadmap 802* Code 803 - start refactoring libconn 804 - split out progress functions 805 - split out window functions 806 - split out terminal setting 807 - convert MyVars to use TAILQ 808 - split mutt_file_{lock,unlock} 809 - Move IDN version string to mutt/idna.c 810 - refactor: init_locale() 811 - Eliminate static variable in mutt_file_dirname 812* Tidy 813 - test int functions against 0 814 - rename lots of constants 815 - rename lots of functions 816 - sort lots of fields/definitions 817* Upstream 818 - Increase account.user/login size to 128 819 - Fix comparison of flags with multiple bits set 820 - Change mutt_error call in mutt_gpgme_set_sender() to dprint 821 - Improve the error message when a signature is missing 822 - pager specific "show incoming mailboxes list" macro 823 - Improve gss debug printing of status_string 824 - Remove trailing null count from gss_buffer_desc.length field 825 - Add a comment in auth_gss about RFCs and null-termination 826 - Change prompt string for $crypt_verify_sig 827 8282018-03-23 Richard Russon \<rich@flatcap.org\> 829* Features 830 - unify logging/messaging 831 - add alert (blink) colors 832* Contrib 833 - Vim syntax for NeoMutt log files 834* Bug Fixes 835 - Fix progress bar range 836 - notmuch: stop if db open fails 837 - Improve index color cache flushing behavior 838 - lua: fix crash when setting a string 839* Translations 840 - Update Czech translation (100%) 841 - Update German translation (100%) 842 - Update Polish translation (94%) 843 - Update Portuguese (BR) translation (100%) 844 - Update Spanish translation (64%) 845 - Update Turkish translation (75%) 846 - Merge similar messages 847* Docs 848 - Clarify precedence of settings in config files 849 - Fix subjectrx example in the manual 850* Website 851 - Update Gentoo distro page 852 - Devel: Static analysis 853* Build 854 - Support —with-sysroot configure arg 855 - Expose EXTRA_CFLAGS_FOR_BUILD and EXTRA_LDFLAGS_FOR_BUIlD 856 - Update to latest autosetup 857 - Make sure git_ver.h doesn't eat random 'g's out of tag names 858* Code 859 - Refactor to reduce complexity 860 - Refactor to reduce variables' scope 861 - Sort functions/config to make docs more legible 862 8632018-02-23 Richard Russon \<rich@flatcap.org\> 864* Features 865 - browser: `\<goto-parent\>` function bound to "p" 866 - editor: `\<history-search\>` function bound to "Ctrl-r" 867 - Cygwin support: https://neomutt.org/distro/cygwin 868 - openSUSE support: https://neomutt.org/distro/suse 869 - Upstream Homebrew support: Very soon - https://neomutt.org/distro/homebrew 870* Bug Fixes 871 - gmail server-size search 872 - nested-if: correctly handle "\<" and "\>" with %? 873 - display of special chars 874 - lua: enable myvars 875 - for pgpewrap in default gpg.rc 876 - reply_regexp which wasn't formatted correctly. 877 - parsing of urls containing '?' 878 - out-of-bounds read in mutt_str_lws_len 879* Translations 880 - Review fuzzy lt translations 881 - Updated French translation 882* Website 883 - Installation guide for Cygwin 884 - Installation guide for openSUSE 885 - Installation guide for CRUX 886* Build 887 - check that DTDs are installed 888 - autosetup improvements 889 - option for which version of bdb to use 890 - drop test for resizeterm -- it's always present 891* Code 892 - split if's containing assignments 893 - doxygen: add/improve comments 894 - rename functions / parameters for consistency 895 - add missing {}s for clarity 896 - move functions to library 897 - reduce scope of variables 898 - boolify more variables 899 - iwyu: remove unnecessary headers 900 - name unicode chars 901 - tailq: migrate parameter api 902 - md5: refactor and tidy 903 - rfc2047: refactor and tidy 904 - buffer: improvements 905 - create unit test framework 906 - fix several coverity defects 907* Upstream 908 - Fix s/mime certificate deletion bug 909 - Disable message security if the backend is not available 910 - Fix improper signed int conversion of IMAP uid and msn values 911 - Change imap literal counts to parse and store unsigned ints 912 - Fix imap status count range check 913 - cmd_handle_fatal: make error message a bit more descriptive 914 - Create pgp and s/mime default and sign_as key vars 915 - Add missing setup calls when resuming encrypted drafts 916 - mutt_pretty_size: show real number for small files 917 - examine_directory: set directory/symlink size to zero 918 - Add history-search function, bound to ctrl-r 919 - Avoid a potential integer overflow if a Content-Length value is huge 920 9212017-12-15 Richard Russon \<rich@flatcap.org\> 922* Bug Fixes 923 - Fix some regressions in the previous release 924 9252017-12-08 Richard Russon \<rich@flatcap.org\> 926* Features 927 - Enhance ifdef feature to support my_ vars 928 - Add \<edit-or-view-raw-message\> 929 - Remove vim syntax file from the main repo 930 - Support reading FQDN from mailname files 931* Bug Fixes 932 - Do not turn CRLF into LF when dealing with transfer-encoding=base64 933 - Cleanup "SSL is unavailable" error in mutt_conn_find 934 - Don't clear the macro buffer during startup 935 - Fixup smart modify-labels-then-hide for !tag case 936 - Add sleep after SMTP error 937 - Restore folder settings after folder-hook 938 - Fix segfault when pipe'ing a deleted message 939* Docs 940 - Display_filter escape sequence 941 - Correct spelling mistakes 942 - Add a sentence to quasi-delete docs 943 - Modify gpg.rc to accommodate GPG 2.1 changes 944* Build 945 - Fix build for RHEL6 946 - Define NCURSES_WIDECHAR to require wide-char support from ncurses 947 - Autosetup: fix check for missing sendmail 948 - Respect --with-ssl path 949 - Check that OpenSSL md5 supports -r before using it 950 - Autosetup: expand --everything in `neomutt -v` 951 - Make sure objects are not compiled before git_ver.h is generated 952 - Build: fix update-po target 953 - Fix out-of-tree builds 954 - Fix stdout + stderr redirection in hcachever.sh 955 - Build: moved the check for idn before the check for notmuch 956 - Define prefix in Makefile.autosetup 957 - Install stuff to $(PACKAGE) in $(libexecdir), not $(libdir) 958 - Update autosetup to latest master 959* Code 960 - Rename files 961 - Rename functions 962 - Rename variables 963 - Rename constants 964 - Remove unused parameters 965 - Document functions 966 - Rearrange functions 967 - Move functions to libraries 968 - Add new library functions 969 - Rearrange switch statements 970 - Boolification 971 - Drop #ifdef DEBUG 972 - Fix Coverity defects 973 - Insert braces 974 - Split ifs 975 - Fallthrough 976 - Fix shadow variable 977 - Replace mutt_debug with a macro 978 - Return early where possible 979* Upstream 980 - Note which ssl config vars are GnuTLS or OpenSSL only 981 - Add message count to $move quadoption prompt 982 - Add %R (number of read messages) for $status_format 983 - Add $change_folder_next option to control mailbox suggestion order 984 - Fix $smart_wrap to not be disabled by whitespace-prefixed lines 985 - Remove useless else branch in the $smart_wrap code 986 - Fix ansi escape sequences with both reset and color parameters 987 9882017-10-27 Richard Russon \<rich@flatcap.org\> 989* Bug Fixes 990 - variable type when using fread 991 - prevent timezone overflow 992 - tags: Show fake header for all backends 993 - notmuch: virtual-mailboxes should accept a limit 994 - Issue 888: Fix imap mailbox flag logging 995 - fix actions on tagged messages 996 - call the folder-hook before saving to $record 997 - Fix smart wrap in pager without breaking header 998 - Add polling for the IDLE command 999* Docs 1000 - imap/notmuch tags: Add some documentation 1001 - English and other cleanups 1002 - compressed and nntp features are now always built 1003* Website 1004 - Update Arch instructions 1005* Build 1006 - Fix update-po 1007 - Fix neomutt.pot location, remove from git 1008 - Allow to specify --docdir at configure time 1009 - Generate neomuttrc even if configured with --disable-doc 1010 - Let autosetup define PWD, do not unnecessarily try to create hcache dir 1011 - Use bundled wcscasecmp if an implementation is not found in libc 1012 - Use host compiler to build the documentation 1013 - Update autosetup to latest master branch 1014 - autosetup: delete makedoc on 'make clean' 1015 - Fixes for endianness detection 1016 - Update autosetup to latest master branch 1017 - Do not use CPPFLAGS / CFLAGS together with CC_FOR_BUILD 1018 - --enable-everything includes lua 1019 - autosetup: check for sys_siglist[] 1020* Code 1021 - move functions to library 1022 - lib: move MIN/MAX macros 1023 - simplify null checks 1024 - kill preproc expansion laziness 1025 - reduce scope of variables 1026 - merge: minor code cleanups 1027 - split up 'if' statements that assign and test 1028 - Refactor: Remove unused return type 1029 - Bool: change functions in mx.h 1030 - bool: convert function parameters in nntp.h 1031 - add extra checks to mutt_pattern_exec() 1032 - Use safe_calloc to initialize memory, simplify size_t overflow check 1033 - Move mutt_rename_file to lib/file.[hc] 1034 - doxygen: fix a few warnings 1035 - minor code fixes 1036 - use mutt_array_size() 1037 - refactor out O_NOFOLLOW 1038 - initialise variables 1039 - lib: move List and Queue into library 1040 - url: make notmuch query string parser generic 1041 - Wrap dirname(3) inside a mutt_dirname() function 1042 10432017-10-13 Richard Russon \<rich@flatcap.org\> 1044* Bug Fixes 1045 - crash using uncolor 1046 - Sort the folders list when browsing an IMAP server 1047 - Prefer a helpful error message over a BEEP 1048* Build 1049 - Do not fail if deflate is not in libz 1050 - Support EXTRA_CFLAGS and EXTRA_LDFLAGS, kill unused variable 1051 10522017-10-06 Richard Russon \<rich@flatcap.org\> 1053* Features 1054 - Add IMAP keywords support 1055* Bug Fixes 1056 - set mbox_type 1057 - %{fmt} date format 1058 - Fix off-by-one buffer overflow in add_index_color 1059 - crash in mbox_to_udomain 1060 - crash in mutt_substrdup 1061 - crash looking up mime body type 1062 - digest_collapse was broken 1063 - crash using notmuch expando with imap 1064 - imap: Fix mx.mbox leak in imap_get_parent_path 1065 - overflow in mutt_mktime() 1066 - add more range-checking on dates/times 1067 - Remove spurious error message 1068 - Unsubscribe after deleting an imap folder 1069 - Do not pop from MuttrcStack what wasn't pushed 1070* Docs 1071 - replace mutt refs with neomutt 1072 - drop old vim syntax file 1073* Code 1074 - convert functions to use 'bool' 1075 - convert structs to use STAILQ 1076* Build 1077 - Autosetup-based configuration 1078 - drop upstream mutt references 1079 - rename everything 'mutt' to 'neomutt' 1080 - move helper programs to lib dir 1081 - rename regexp to regex 1082 - expand buffers to avoid gcc7 warnings 1083* Upstream 1084 - Remove \Seen flag setting for imap trash 1085 - Change imap copy/save and trash to sync flags, excluding deleted 1086 - Improve imap fetch handler to accept an initial UID 1087 - Display an error message when delete mailbox fails 1088 - Updated French translation 1089 - Fix imap sync segfault due to inactive headers during an expunge 1090 - Close the imap socket for the selected mailbox on error 1091 - Add missing IMAP_CMD_POLL flag in imap mailbox check 1092 - Change maildir and mh check_mailbox to use dynamic sized hash 1093 - Fix uses of context-\>changed as a counter 1094 - Make cmd_parse_fetch() more precise about setting reopen/check flags 1095 - Enable $reply_self for group-reply, even with $me_too unset 1096 10972017-09-12 Richard Russon \<rich@flatcap.org\> 1098* Bug Fixes 1099 - broken check on resend message 1100 - crash in vfolder-from-query 1101* Build 1102 - Be more formal about quoting in m4 macros 1103 - fix warnings raised by gcc7 1104 - notmuch: add support for the v5 API 1105 11062017-09-07 Richard Russon \<rich@flatcap.org\> 1107* Contrib 1108 - Add guix build support 1109* Bug Fixes 1110 - Only match real mailboxes when looking for new mail 1111 - Fix the printing of ncurses version in -v output 1112 - Bind editor \<delete\> to delete-char 1113 - Fix overflowing colours 1114 - Fix empty In-Reply-To generation 1115 - Trim trailing slash from completed dirs 1116 - Add guix-neomutt.scm 1117 - Fix setting custom query_type in notmuch query 1118* Website 1119 - New technical documentation LINK 1120 - Improve Gentoo distro page 1121* Build 1122 - Better curses identification 1123 - Use the system's wchar_t support 1124 - Use the system's md5 tool (or equivalent) 1125 - Clean up configure.ac 1126 - Teach gen-map-doc about the new opcode header 1127* Source 1128 - Rename functions (snake_case) 1129 - Rename constants/defines (UPPER_CASE) 1130 - Create library of shared functions 1131 - Much tidying 1132 - Rename globals to match user config 1133 - Drop unnecessary functions/macros 1134 - Use a standard list implementation 1135 - Coverity fixes 1136 - Use explicit NUL for string terminators 1137 - Drop OPS\* in favour of opcodes.h 1138* Upstream 1139 - Fix menu color calls to occur before positioning the cursor 1140 - When guessing an attachment type, don't allow text/plain if there is a null character 1141 - Add $imap_poll_timeout to allow mailbox polling to time out 1142 - Handle error if REGCOMP in pager fails when resizing 1143 - Change recvattach to allow nested encryption 1144 - Fix attachment check_traditional and extract_keys operations 1145 - Add edit-content-type helper and warning for decrypted attachments 1146 - Add option to run command to query attachment mime type 1147 - Add warning about using inline pgp with format=flowed 1148 11492017-07-14 Richard Russon \<rich@flatcap.org\> 1150* Translations 1151 - Update German translation 1152* Docs 1153 - compile-time output: use two lists 1154 - doxygen: add config file 1155 - doxygen: tidy existing comments 1156* Build 1157 - fix hcachever.sh script 1158* Upstream 1159 - Fix crash when $postponed is on another server. 1160 11612017-07-07 Richard Russon \<rich@flatcap.org\> 1162* Features 1163 - Support Gmail's X-GM-RAW server-side search 1164 - Include pattern for broken threads 1165 - Allow sourcing of multiple files 1166* Contrib 1167 - vombatidae colorscheme 1168 - zenburn colorscheme 1169 - black 256 solarized colorscheme 1170 - neonwolf colorscheme 1171 - Mutt logos 1172* Bug Fixes 1173 - flags: update the hdr message last 1174 - gpgme S/MIME non-detached signature handling 1175 - menu: the thread tree color 1176 - Uses CurrentFolder to populate LastDir with IMAP 1177 - stabilise sidebar sort order 1178 - colour emails with a '+' in them 1179 - the padding expando '%\>' 1180 - Do not set old flag if mark_old is false 1181 - maildir creation 1182 - Decode CRLF line endings to LF when copying headers 1183 - score address pattern do not match personal name 1184 - open attachments in read-only mode 1185 - Add Cc, In-Reply-To, and References to default mailto_allow 1186 - Improve search for mime.types 1187* Translations 1188 - Update Chinese (Simplified) translation 1189* Coverity defects 1190 - dodgy buffers 1191 - leaks in lua get/set options 1192 - some resource leaks 1193* Docs 1194 - update credits 1195 - limitations of new-mail %f expando 1196 - escape \<\>'s in nested conditions 1197 - add code of conduct 1198 - fix ifdef examples 1199 - update mailmap 1200 - Update modify-labels-then-hide 1201 - fix mailmap 1202 - drop UPDATING files 1203* Website 1204 - Changes pages (diff) 1205 - Update Arch distro page 1206 - Update NixOS distro page 1207 - Add new Exherbo distro page 1208 - Update translation hi-score table 1209 - Update code of conduct 1210 - Update Newbies page 1211 - Add page about Rebuilding the Documentation 1212 - Add page of hard problems 1213* Build 1214 - remove unnecessary steps 1215 - drop instdoc script 1216 - move smime_keys into contrib 1217 - fixes for Solaris 1218 - don't delete non-existent files 1219 - remove another reference to devel-notes.txt 1220 - Handle native Solaris GSSAPI. 1221 - drop configure options --enable-exact-address 1222 - drop configure option --with-exec-shell 1223 - drop configure option --enable-nfs-fix 1224 - drop configure option --disable-warnings 1225 - Completely remove dotlock 1226 - More sophisticated check for BDB version + support for DB6 (non default) 1227* Tidy 1228 - drop VirtIncoming 1229 - split parse_mailboxes into parse_unmailboxes 1230 - tidy some mailbox code 1231 - tidy the version strings 1232* Upstream 1233 - Add ~\<() and ~\>() immediate parent/children patterns 1234 - Add L10N comments to the GNUTLS certificate prompt 1235 - Add more description for the %S and %Z $index_format characters 1236 - Add config vars for forwarded message attribution intro/trailer 1237 - Block SIGWINCH during connect() 1238 - Improve the L10N comment about Sign as 1239 - Auto-pad translation for the GPGME key selection "verify key" headers 1240 - Enable all header fields in the compose menu to be translated 1241 - Force hard redraw after $sendmail instead of calling mutt_endwin 1242 - Make GPGME key selection behavior the same as classic-PGP 1243 - Rename 'sign as' to 'Sign as'; makes compose menu more consistent 1244 - Change the compose menu fields to be dynamically padded 1245 12462017-06-09 Richard Russon \<rich@flatcap.org\> 1247* Contrib 1248 - unbind mappings before overwriting in vim-keys 1249* Bug Fixes 1250 - latest coverity issues (#624) 1251 - don't pass colour-codes to filters 1252 - Don't set a colour unless it's been defined. 1253 - crash if no from is set or founds 1254 - ifdef command 1255* Translations 1256 - fix translations 1257 - fix some remaining translation problems 1258* Docs 1259 - explain binding warnings 1260 - don't document unsupported arches 1261* Build 1262 - fix make git_ver.h 1263 - allow xsltproc and w3m calls to fail 1264 - fix make dist 1265* Upstream 1266 - Add a mutt_endwin() before invoking $sendmail 1267 - Restore setenv function 1268 - Fix tag-prefix to not abort on $timeout 1269 - Change km_dokey() to return -2 on a timeout/sigwinch 1270 - Enable TEXTDOMAINDIR override to make translation testing easier 1271 - Fix "format string is not a string literal" warnings 1272 12732017-06-02 Richard Russon \<rich@flatcap.org\> 1274* Features 1275 - Warn on bindkey aliasing 1276 - Drop PATCHES, tidy 'mutt -v' output 1277 - Add %z format strings to index_format 1278 - Add debug_level/debug_file options 1279* Bug Fixes 1280 - Fix nntp group selection 1281 - Fix status color 1282 - Tidy up S/MIME contrib 1283 - Do not try to create Maildir if it is an NNTP URL 1284 - Fix missing NONULL for mutt.set() in Lua 1285* Translations 1286 - Fix German PGP shortkeys 1287* Docs 1288 - Remove feature muttrc files 1289 - Merge README.notmuch into manual 1290 - Remove unneeded scripts 1291 - Remove README.SECURITY 1292 - Remove BEWARE and devel-notes.txt 1293 - Update Makefiles 1294 - Delete TODO files 1295 - Remove legacy files 1296 - Don't generate vim-neomutt syntax file 1297 - Remove LaTeX/pdf manual generation 1298 - Add missing docs for expandos 1299 - Fix sidebar howto examples 1300 - Remove some upstream references 1301 - Drop refs to patches 1302 - Improve PR template and CONTRIBUTING.md 1303* Website 1304 - Fix list items in newbie-tutorial's Mailing List Guidelines 1305 - Remove configure options that no longer exist 1306 - fix newbie tutorial 1307 - document signing tags / releases 1308 - config: drop unused paginate command 1309 - script: split tests up into several 1310 - convert credits page to markdown 1311 - simpify 404 page 1312 - improve newbie tutorial 1313 - remove help.html and integrate its content elsewhere 1314 - make: "graphviz" program is needed for generating diagram 1315 - improve getting started guide // include legacy files 1316 - dev: add list of architectures/operating systems 1317 - numerous small fixes 1318* Build 1319 - Remove typedefs and rename ~130 structs 1320 - Add separate hcache dir 1321 - Move crypto files to ncrypt dir 1322 - Split up mutt.h, protos.h 1323 - Always build: sidebar, imap, pop, smtp, compressed, nntp 1324 - Remove --enable-mailtool configure option 1325 - Make dotlock optional 1326 - Change gpgme requirement back to 1.1.0 1327 - Remove check_sec.sh 1328 - Fix safe_calloc args 1329 - Remove unused macros 1330 - Remove unused option: SmimeSignOpaqueCommand 1331 - Move configure-generated files 1332 - Update distcheck build flags 1333 - Drop obsolete iconv check 1334 - Unused prototypes - unsupported systems 1335 - Drop many configure tests for things defined in POSIX:2001 1336 - Kill useless crypthash.h file 1337 - Run clang-format on the code 1338 - Fail early if ncursesw cannot be found 1339 - Add names prototype arguments 1340 - Abbreviate pointer tests against NULL 1341 - Initialise pointers to NULL 1342 - Reduce the scope of for loop variables 1343 - Coverity: fix defects 1344* Upstream 1345 - Convert all exec calls to use mutt_envlist(), remove setenv function 1346 - Note that mbox-hooks are dependent on $move 1347 - Refresh header color when updating label 1348 - Remove glibc-specific execvpe() call in sendlib.c 1349 - Add color commands for the compose menu headers and security status 1350 - Fix sidebar count updates when closing mailbox 1351 - Don't modify LastFolder/CurrentFolder upon aborting a change folder operation 1352 - Change message modifying operations to additively set redraw flags 1353 - Improve maildir and mh to report flag changes in mx_check_mailbox() 1354 - Add $header_color_partial to allow partial coloring of headers 1355 - Rename REDRAW_SIGWINCH to REDRAW_FLOW 1356 - Create R_PAGER_FLOW config variable flag 1357 - Turn IMAP_EXPUNGE_EXPECTED back off when syncing 1358 - Add $history_remove_dups option to remove dups from history ring 1359 - Also remove duplicates from the history file 1360 - Don't filter new entries when compacting history save file 1361 - Move the IMAP msn field to IMAP_HEADER_DATA 1362 - Fix imap expunge to match msn and fix index 1363 - Fix cmd_parse_fetch() to match against MSN 1364 - Start fixing imap_read_headers() to account for MSN gaps 1365 - Add msn_index and max_msn to find and check boundaries by MSN 1366 - Properly adjust fetch ranges when handling new mail 1367 - Small imap fetch fixes 1368 - Don't abort header cache evaluation when there is a hole 1369 - Fix mfc overflow check and uninitialized variable 1370 - Fix potential segv if mx_open_mailbox is passed an empty string 1371 - Don't clean up idata when closing an open-append mailbox 1372 - Don't clean up msn idata when closing an open-append mailbox 1373 - Fix memory leak when closing mailbox and using the sidebar 1374 - Change imap body cache cleanup to use the uid_hash 1375 - Convert classic s/mime to space delimit findKeys output 1376 - Add self-encrypt options for PGP and S/MIME 1377 - Change $postpone_encrypt to use self-encrypt variables first 1378 - Automatic post-release commit for mutt-1.8.3 1379 - Add note about message scoring and thread patterns 1380 13812017-04-28 Richard Russon \<rich@flatcap.org\> 1382* Bug Fixes 1383 - Fix and simplify handling of GPGME in configure.ac (@gahr) 1384* Docs 1385 - Fix typo in README.neomutt (@l2dy) 1386* Upstream 1387 - Fix km_error_key() infinite loop and unget buffer pollution 1388 - Fix error message when opening a mailbox with no read permission 1389 13902017-04-21 Richard Russon \<rich@flatcap.org\> 1391* Features 1392 - add lua scripting 1393 - add command-line batch mode 1394 - index_format: add support of %K 1395* Bug Fixes 1396 - attachment/pager: Use mailcap for test/* except plain 1397 - Fix uncollapse_new in pager 1398 - fix garbage in chdir prompt due to unescaped string 1399 - Fix inbox-first functionality when using mutt_pretty_mailbox 1400 - add full neomutt version to log startup 1401 - fix bug in uncolor for notmuch tag 1402 - fix broken from_chars behaviour 1403* Coverity defects 1404 - strfcpy 1405 - add variable - function arg could be NULL/invalid 1406 - add variable - failed function leads to invalid variable 1407 - add variable - Context could become NULL 1408 - add variable - alloc/strdup could return NULL 1409 - add variable - route through code leads to invalid variable 1410 - remove variable test 1411 - test functions 1412 - tidy switches 1413 - unused variables 1414 - refactor only 1415 - check for buffer underruns 1416 - fix leaks 1417 - minor fixes 1418 - bug: add missing break 1419 - bug: don't pass large object by value 1420 - fix: use correct buffer size 1421 - shadow variables 1422 - 0 -\> NULL 1423* Docs 1424 - many minor updates 1425 - sync translations 1426 - delete trailing whitespace 1427 - indent the docbook manual 1428 - use w3m as default for generating UTF8 manual.txt 1429* Website 1430 - many minor updates 1431 - fix broken links 1432 - add to list of useful programs 1433 - test automatic html checker 1434 - remove trailing whitespace 1435 - add irc description 1436 - update issue labels (dev) 1437 - new page: closed discussions 1438 - new page: making neomutt (dev) 1439* Build 1440 - drop obsolete m4 scripts 1441 - don't look for lua libs unless asked for 1442 - workaround slang warnings 1443 - lower the gettext requirement 0.18 -\> 0.17 1444 - add keymap_alldefs.h to BUILT_SOURCES 1445 - fix make dist distcheck 1446 - Remove -Iimap from CFLAGS and include imap/imap.h explicitly 1447 - mx: fix conditional builds 1448 - Make iconv mandatory (no more --disable-iconv) 1449 - refactor: Split out BUFFER-handling functions 1450* Tidy 1451 - drop control characters from the source 1452 - drop vim modelines 1453 - delete trailing whitespace 1454 - mark all local functions as static 1455 - delete unused functions 1456 - replace FOREVER with while (true) 1457 - drop #if HAVE_CONFIG_H 1458 - use #ifdef for potentially missing symbols 1459 - remove #if 0 code blocks 1460 - drop commented out source 1461 - IMAP auth functions are stored by pointer cannot be static 1462 - force OPS to be rebuilt after a reconfigure 1463 - be specific about void functions 1464 - expand a few more alloc macros 1465 - add argument names to function prototypes 1466 - drop local copy of regex code 1467 - rearrange code to avoid forward declarations 1468 - limit the scope of some functions 1469 - give the compress functions a unique name 1470 - use snake_case for function names 1471 - add missing newlines to mutt_debug 1472 - remove generated files from repo 1473 - look for translations in all files 1474 - fix arguments to printf-style functions 1475 - license text 1476 - unify include-guards 1477 - tidy makefiles 1478 - initialise pointers 1479 - make strcmp-like functions clearer 1480 - unify sizeof usage 1481 - remove forward declarations 1482 - remove ()s from return 1483 - rename files hyphen to underscore 1484 - remove unused macros 1485 - use SEEK_SET, SEEK_CUR, SEEK_END 1486 - remove constant code 1487 - fix typos and grammar in the comments 1488 - Switch to using an external gettext runtime 1489 - apply clang-format to the source code 1490 - boolify returns of 84 functions 1491 - boolify lots of struct members 1492 - boolify some function parameters 1493* Upstream 1494 - Add $ssl_verify_partial_chains option for OpenSSL 1495 - Move the OpenSSL partial chain support check inside configure.ac 1496 - Don't allow storing duplicate certs for OpenSSL interactive prompt 1497 - Prevent skipped certs from showing a second time 1498 - OpenSSL: Don't offer (a)ccept always choice for hostname mismatches 1499 - Add SNI support for OpenSSL 1500 - Add SNI support for GnuTLS 1501 - Add shortcuts for IMAP and POP mailboxes in the file browser 1502 - Change OpenSSL to use SHA-256 for cert comparison 1503 - Fix conststrings type mismatches 1504 - Pass envlist to filter children too 1505 - Fix mutt_envlist_set() for the case that envlist is null 1506 - Fix setenv overwriting to not truncate the envlist 1507 - Fix (un)sidebar_whitelist to expand paths 1508 - Fix mutt_refresh() pausing during macro events 1509 - Add a menu stack to track current and past menus 1510 - Change CurrentMenu to be controlled by the menu stack 1511 - Set refresh when popping the menu stack 1512 - Remove redraw parameter from crypt send_menus 1513 - Don't full redraw the index when handling a command from the pager 1514 - Filter other directional markers that corrupt the screen 1515 - Remove the OPTFORCEREDRAW options 1516 - Remove SidebarNeedsRedraw 1517 - Change reflow_windows() to set full redraw 1518 - Create R_MENU redraw option 1519 - Remove refresh parameter from mutt_enter_fname() 1520 - Remove redraw flag setting after mutt_endwin() 1521 - Change km_dokey() to pass SigWinch on for the MENU_EDITOR 1522 - Separate out the compose menu redrawing 1523 - Separate out the index menu redrawing 1524 - Prepare for pager redraw separation 1525 - Separate out the pager menu redrawing 1526 - Don't create query menu until after initial prompt 1527 - Silence imap progress messages for pipe-message 1528 - Ensure mutt stays in endwin during calls to pipe_msg() 1529 - Fix memleak when attaching files 1530 - Add $ssl_verify_partial_chains option for OpenSSL 1531 - Move the OpenSSL partial chain support check inside configureac 1532 - Don't allow storing duplicate certs for OpenSSL interactive prompt 1533 - Prevent skipped certs from showing a second time 1534 - OpenSSL: Don't offer (a)ccept always choice for hostname mismatches 1535 - Add SNI support for OpenSSL 1536 - Add SNI support for GnuTLS 1537 - Add shortcuts for IMAP and POP mailboxes in the file browser 1538 - Updated French translation 1539 - Change OpenSSL to use SHA-256 for cert comparison 1540 - Fix conststrings type mismatches 1541 - Pass envlist to filter children too 1542 - Fix mutt_envlist_set() for the case that envlist is null 1543 - Fix setenv overwriting to not truncate the envlist 1544 - Fix mutt_refresh() pausing during macro events 1545 - Add a menu stack to track current and past menus 1546 - Change CurrentMenu to be controlled by the menu stack 1547 - Set refresh when popping the menu stack 1548 - Remove redraw parameter from crypt send_menus 1549 - Don't full redraw the index when handling a command from the pager 1550 - Fix (un)sidebar_whitelist to expand paths 1551 - Filter other directional markers that corrupt the screen 1552 - Remove the OPTFORCEREDRAW options 1553 - Remove SidebarNeedsRedraw 1554 - Change reflow_windows() to set full redraw 1555 - Create R_MENU redraw option 1556 - Remove refresh parameter from mutt_enter_fname() 1557 - Remove redraw flag setting after mutt_endwin() 1558 - Change km_dokey() to pass SigWinch on for the MENU_EDITOR 1559 - Separate out the compose menu redrawing 1560 - Separate out the index menu redrawing 1561 - Prepare for pager redraw separation 1562 - Separate out the pager menu redrawing 1563 - Don't create query menu until after initial prompt 1564 - Silence imap progress messages for pipe-message 1565 - Ensure mutt stays in endwin during calls to pipe_msg() 1566 - Fix memleak when attaching files 1567 - automatic post-release commit for mutt-181 1568 - Added tag mutt-1-8-1-rel for changeset f44974c10990 1569 - mutt-181 signed 1570 - Add ifdefs around new mutt_resize_screen calls 1571 - Add multiline and sigwinch handling to mutt_multi_choice 1572 - Set pager's REDRAW_SIGWINCH when reflowing windows 1573 - Add multiline and sigwinch handling to mutt_yesorno 1574 - Change the sort prompt to use (s)ort style prompts 1575 - Handle the pager sort prompt inside the pager 1576 - Fix GPG_TTY to be added to envlist 1577 - automatic post-release commit for mutt-182 1578 15792017-03-06 Richard Russon \<rich@flatcap.org\> 1580* Bug Fixes 1581 - Get the correct buffer size under fmemopen/torify (#441) 1582 - Use static inlines to make gcc 4.2.1 happy 1583 - getdnsdomainname: cancel getaddrinfo_a if needed 1584 - imap: remove useless code (#434) (origin/master) 1585 - Fixes missing semi-colon compilation issue (#433) 1586* Docs 1587 - github: added template for Pull Requests, issues and a CONTRIBUTION.md (#339) 1588 - editorconfig: support for new files, fix whitespace (#439) 1589 - add blocking fmemopen bug on debian to manual (#422) 1590* Upstream 1591 - Increase ACCOUNT.pass field size. (closes #3921) 1592 - SSL: Fix memory leak in subject alternative name code. (closes #3920) 1593 - Prevent segv if open-appending to an mbox fails. (closes #3918) 1594 - Clear out extraneous errors before SSL_connect() (see #3916) 1595 15962017-02-25 Richard Russon \<rich@flatcap.org\> 1597* Features 1598 - Add option $show_multipart_alternative 1599 - notmuch: Allow to use untransformed tag for color 1600 - Use getaddrinfo_a if possible (#420) 1601* Bug Fixes 1602 - handle sigint within socket operations (#411) 1603 - Avoid browsing the remote spool_file by setting MUTT_SELECT_MULTI attach 1604 - notmuch: fix crash when completing tags (#395) 1605 - Fixes missing failure return of notmuch msg open (#401) 1606 - Fix latest Coverity issues (#387) 1607 - Advance by the correct number of position even for unknown characters (#368) 1608 - Release KyotoCabinet data with kcfree() (#384) 1609 - 22 resource leaks 1610* Translations 1611 - Update translations 1612 - Update the German translation (#397) 1613* Docs 1614 - fix typo in notmuch example 1615 - remove duplicate "default" in the sidebar intro 1616 - fix confusing description of notmuch operators (#371) 1617 - correct spelling mistakes (#412) 1618* Website 1619 - link to clang-format config in main repo (#28) 1620 - updated list of useful programs 1621 - update/improve list of useful programs 1622 - sidebar_format has a single default value 1623 - fix name of GNU Guix 1624 - added guix distro 1625 - added link to new afew maintainers 1626 - add code of conduct 1627 - add mutt-addressbook to useful 1628 - remove unnecessary unicode non-breaking spaces 1629 - github merging 1630* Build 1631 - Enable and run unit-tests on the feature/unit-test branch 1632 - add notmuch to default, feature 1633 - new dbs for mutt 1634 - master is now the main branch 1635 - streamline builds 1636 - fix doc generator 1637 - add a few includes (prelude to clang-format) 1638 - slcurses.h defines its own bool type 1639 - travis: use container build 1640 - add clang-format file 1641 - Remove ugly macros and casts from crypt_gpgme.c 1642 - fix minor reflow issues in some comments 1643 - editorconfig: use spaces to indent in *.[ch] files 1644 - added comment-blocks for clang-format to ignore 1645 - fix 80 column limit, align statements 1646 - Remove snprintf.c from EXTRA_DIST (#406) 1647 - Kill homebrew (v)snprintf implementations, as they are C99 (#402) 1648 - Display charset + small refactoring 1649 - Do not cast or check returns from safe_calloc (#396) 1650 - refactor: create a generic base64 encode/decode 1651 - debug: remove dprint in favor of mutt_debug (#375) 1652 - Fix dubious use macro for _() / gettext() (#376) 1653 - Use mutt_buffer_init instead of memset 1654 - Make the heap method and datatype a plain list 1655 - Reverts making AliasFile into a list_t (#379) 1656 - Turn mutt_new_* macros into inline functions 1657 - Do not cast return values from malloc (or similar) 1658* Upstream 1659 - Simplify mutt_label_complete(). 1660 - Permit tab completion of pattern expressions with ~y (labels). 1661 - Fix the mutt_label_complete() pos parameter. 1662 - Fix the x-label update code check location. 1663 - Improve the label completion hash table usage. 1664 - Adds label completion. 1665 - Add hash_find_elem to get the hash element. 1666 - Minor fixes to the x-label patch from David. 1667 - Adds capability to edit x-labels inside mutt, and to sort by label. 1668 - Allow "unsubjectrc *" to remove all patterns. 1669 - Add subjectrx command to replace matching subjects with something else. 1670 - Abstract the SPAM_LIST as a generic REPLACE_LIST 1671 - Improve Reply-to vs From comparison when replying. (closes #3909) 1672 - Fix sidebar references to the "new count" to be "unread". (closes #3908) 1673 - Fix several alias hashtable issues. 1674 - Add casecmp and strdup_key flags to hash_create() 1675 - Improve error handling in mbox magic detection. 1676 - Allow initial blank lines in local mailboxes. 1677 - Fix minor documentation issues. 1678 - Convert cmd_parse_search to use the uid hash. (closes #3905) 1679 - Create a uid hash for imap. (see #3905) 1680 - Convert HASH to be indexable by unsigned int. (see #3905) 1681 - Fix imap server-side search to call uid2msgno() only once. (see #3905) 1682 - Add a pattern_cache_t to speed up a few repeated matches. 1683 - Canonicalize line endings for GPGME S/MIME encryption. (closes #3904) 1684 - Fix build for bdb. 1685 - Create function to free header cache data. 1686 - Add Kyoto Cabinet support to the header cache. 1687 - Prevent null pointer exception for h-\>ai_canonname 1688 - Show SHA1 fp in interactive cert check menu. 1689 - Fix potential cert memory leak in check_certificate_by_digest(). 1690 - Plug memory leak in weed-expired-certs code. 1691 - Filter expired local certs for OpenSSL verification. 1692 - Change "allow_dups" into a flag at hash creation. 1693 16942017-02-06 Richard Russon \<rich@flatcap.org\> 1695* Bug Fixes 1696 - Unicode 0x202F is a non-break space too (#358) (@gahr) 1697 - improve readability of find_subject() (@toogley) 1698 - Import hcache-lmdb fixes from upstream (#363) (@gahr) 1699 - Rework the "inbox-first" implementation to make code self-explanatory (#356) (@gahr) 1700 - If possible, only redraw after gpgme has invoked pinentry (#352) (@gahr) 1701 - Remove two use-after free in global hooks (#353) (@guiniol) 1702 - Handle BAD as IMAP_AUTH_UNAVAIL (#351) (@gahr) 1703 - Do not crash when closing a non-opened mailbox (origin/requests/github/343) (@gahr) 1704 - Import hcache benchmark (@gahr) 1705 - fix: bug introduced by mkdir changes (#350) 1706 - change pager to allow timehook-hook to fire 1707* Docs 1708 - Update documentation about modify-labels-then-hide (@bbenne10) 1709 17102017-01-28 Richard Russon \<rich@flatcap.org\> 1711* Features 1712 - Add option for missing subject replacement 1713 - notmuch: Allow \<modify-labels\> to toggle labels 1714 - Support for aborting mailbox loading 1715 - Do a mailbox check after shell escape 1716 - Support of relative paths sourcing and cyclic source detection 1717 - Support of multiple config files as CLI arguments 1718 - Extend the ~m pattern to allow relative ranges 1719 - Implement SASL's PLAIN mechanism as a standalone authenticator 1720 - Add support for sensitive config options 1721 - Searching with a window over notmuch vfolders 1722* Contrib 1723 - fix vim syntax file for index-color commands 1724 - add .editorconfig 1725* Bug Fixes 1726 - fix global hooks to not take a pattern 1727 - Avoid breaking relative paths when avoiding cyclic checks on 1728 - Fix sorting when using '/' as a namespace separator 1729* Docs 1730 - Added waffle badges to readme 1731 - Describe the new message ranges 1732 - add documentation for -DS command line switch 1733 - fix typos in section on config locations 1734 - remove reference to missing keybinding 1735 - fix docbook validation 1736* Build 1737 - Start migrating to stdbool logic 1738 - add recursive mkdir() 1739 - reformat the source to mutt standards 1740 - appease check_sec.sh 1741 17422017-01-13 Richard Russon \<rich@flatcap.org\> 1743* Features 1744 - Allow custom status flags in index_format 1745 - $from_chars highlights differences in authorship 1746 - notmuch: make 'Folder' and 'Tags' respect (un)ignore 1747 - notmuch: add "virtual-unmailboxes" command 1748* Bug Fixes 1749 - pick smarter default for $sidebar_divider_char 1750 - status color breaks "mutt -D" 1751 - Enable reconstruct-thread in the pager 1752 - manually touch 'atime' when reading a mbox file 1753 - allow $to_chars to contain Unicode characters 1754 - increase the max lmdb database size 1755 - restore limit current thread 1756 - don't reset the alarm unless we set it 1757 - some more places that may get NULL pointers 1758 - rework initials to allow unicode characters 1759* Translations 1760 - Spanish translation 1761 - German translation 1762* Docs 1763 - Improve whitespace and grammar on the NNTP feature page 1764 - make $to_chars docs more legible 1765 - de-tab the DocBook 1766 - fix 301 redirects 1767* Build 1768 - New configure option --enable-everything 1769 - add a constant for an aborted question 1770 - enhance mutt_to_base64() (and callers) 1771 - Fix configure.ac to require md5 if hcache is enabled 1772 - Bail if a selected hcache backend cannot be found 1773 - refactor mutt_matches_ignore 1774 - fix hcache + make dist 1775 - add unicode string helper function 1776 - Re-indent configure.ac 1777 - generate devel version suffix 1778 - fix check_sec.sh warnings 1779 - remove unnecessary #ifdef's 1780 - add missing #ifdef for nntp 1781 - ignore some configure temp files 1782 - fix "make dist" target 1783 - fix function prototypes 1784 - fix coverity warnings 1785 - notmuch: drop strndup, replace with mutt_substrdup 1786* Upstream 1787 - Fix failure with GPGME 1.8: do not steal the gpgme_ prefix. 1788 - search muttrc file according to XDG Base Specification (closes #3207) 1789 - Improve openssl interactive_check_cert. (closes #3899) 1790 - Add mutt_array_size macro, change interactive_check_cert() to use it. (see #3899) 1791 - Return to pager upon aborting a jump operation. (closes #3901) 1792 - Change sidebar_spool_file coloring to be lower precedence. 1793 - Move '@' pattern modifier documentation to the right section. 1794 - Add setenv/unsetenv commands. 1795 - Rework OpenSSL certificate verification to support alternative chains. (closes #3903) 1796 - Add option to control whether threads uncollapse when new mail arrives. 1797 - In the manual, replaced 2 para by example (similar to the first example). 1798 - Create MbTable type for multibyte character arrays. (see #3024) 1799 - Make to_chars and status_chars accept mulitibyte characters. (closes #3024) 1800 18012016-11-26 Richard Russon \<rich@flatcap.org\> 1802* Features 1803 - Upstream adoption of compress 1804 - Multiple hcache backends and run-time selection 1805 - $forward_references includes References: header on forwards 1806 - Hooks: define hooks for startup and shutdown 1807 - Add $collapse_all to close threads automatically 1808* Bug Fixes 1809 - Index in pager crash 1810 - Tag with multiple labels 1811 - Make sure gdbm's symbols are not resolved in QDBM's compatibility layer 1812 - Fix crash when doing collapse_all on an empty folder 1813 - Fix: crash when browsing empty dir 1814 - Initialize imap_authenticate's return value to something meaningful 1815* Translations 1816 - Update German translation 1817 - Update Slovak translation 1818 - Update French translation 1819 - Add English (British) translation 1820 - Convert files to utf-8 1821 - Mass tidy up of the translation messages 1822* Docs 1823 - new-mail bug is fixed 1824 - add since date for features 1825 - expand example command options for compress 1826 - fix entries for beep and new-mail-command 1827 - add a version number to the generated vimrc 1828 - fix links in README 1829 - don't use smart quotes in manual examples 1830 - \<escape\> and \e means refers to both alt and escape key 1831* Build 1832 - Travis: test messages 1833 - Add option to disable translation messages 1834 - Split hcache code into per-backend files 1835 - Doc/Makefile clean neomutt-syntax.vim 1836 - Improve discovery for the Berkeley Database 1837 - Fix nntp/notmuch conditionals 1838 - Implement mutt_strchrnul() 1839 - Rename vim-keybindings to vim-keys 1840* Upstream 1841 - attach_format: add new %F placeholder 1842 - Compose: add operation to rename an attachment 1843 - Chain %d-\>%F-\>%f in the attachment menu 1844 - Move mbox close-append logic inside mbox_close_mailbox() 1845 - When $flag_safe is set, flagged messages cannot be deleted 1846 - Adds the '@' pattern modifier to limit matches to known aliases 1847 - Adds \<mark-message\> binding to create "hotkeys" for messages 1848 - Updated requirement on the C compiler 1849 - Fix mark-message translation and keybind menu 1850 - More openssl1.1 fixes: remove uses of X509-\>name in debugging. (closes #3870) 1851 - Don't close stderr when opening a tunnel. (closes #3726) 1852 - Minor resource and error logic cleanup in tunnel_socket_open() 1853 - Make sure that the output of X509_NAME_oneline is null-terminated 1854 18552016-11-04 Richard Russon \<rich@flatcap.org\> 1856* Bug Fixes 1857 - don't crash when the imap connection dies 1858* Upstream 1859 - Add root-message function to jump to root message in thread. 1860 - Updated French translation. 1861 - Prevent an integer overflow in mutt_mktime() (closes #3880) 1862 - Fix pager segfault when lineInfo.chunks overflows. (closes #3888) 1863 - Perform charset conversion on text attachments when piping. (closes #3773) (see #3886) 1864 - Add a --disable-doc configuration option. 1865 - Make ncurses and ncursesw header checking the same. 1866 - Attempt to silence a clang range warning. (closes #3891) 1867 - Fixed issue from changeset 4da647a80c55. (closes #3892) 1868 - Define PATH_MAX, it's missing on the GNU Hurd. (closes #3815) 1869 18702016-10-28 Richard Russon \<rich@flatcap.org\> 1871* Features 1872 - nntp: use safe_{fopen,fclose} 1873 - nntp: fix resource leak 1874 - forgotten-attachment: Ignore lines matching quote_regex. 1875 - forgotten-attachment: Fix checking logic. 1876 - forgotten-attachment: Update docs regarding $quote_regex. 1877 - notmuch: Add a fake "Folder" header to viewed emails 1878 - sidebar: consider description when using whitelist 1879 - skip-quoted: skip to body 1880* Bug Fixes 1881 - sensible-browser/notmuch changing mailbox 1882 - "inbox" sorting function 1883 - overhaul the index/pager updates 1884 - crash in hdrline 1885 - remove stray line introduced by pager fix 1886 - Possible fix for random pager crashes. 1887* Docs 1888 - use a more expressive coverity scan badge 1889 - light tidying 1890* Build 1891 - replace the ugly strfcpy() macro with a function 1892 - build: Look for tgetent in ncurses, fallback to tinfo only if not found 1893 - build: fix a couple of build warnings 1894 - travis: install doc dependencies 1895 - build: fix install/dist/distcheck targets 1896* Upstream 1897 - Fix POP3 SASL authentication mechanism DIGEST-MD5. (closes #3862) 1898 - Add a few explanatory comments to pop_auth_sasl(). (see #3862) 1899 - Fix GPGME signature zero timestamp and locale awareness issues. (closes #3882) 1900 - Handle presence of '--' delimiter in $sendmail. (closes #3168) 1901 - Allow IPv6 literal addresses in URLs. (closes #3681) 1902 - Fix gpgme segfault in create_recipient_set(). 1903 - Use mutt_strlen and mutt_strncmp in sidebar.c. 1904 - Change sidebar to only match $folder prefix on a $sidebar_divider_char. (closes #3887) 1905 - Actually fix gpgme segfault in create_recipient_set(). 1906 19072016-10-14 Richard Russon \<rich@flatcap.org\> 1908* Features 1909 - sidebar: Make sure INBOX appears first in the list. 1910 - notmuch: Synchronise tags to flags 1911* Bug Fixes 1912 - updates when pager is open 1913 - crash when neither $spool_file, $folder are set 1914 - forgotten-attachment: fix empty regex expression 1915 - status-color when pager_index_lines \> 0 1916 - buffer underrun when no menu item is selected 1917 - crash handling keywords/labels 1918* Docs 1919 - update notmuch references 1920* Build 1921 - update references to 1.7.1 1922 - strfcpy() improvement 1923* Upstream 1924 - automatic post-release commit for mutt-1.7.1 1925 - Mark IMAP fast-trash'ed messages as read before copying. (see #3860) 1926 - Updated Czech translation. 1927 - Preserve forwarded attachment names in d_filename. 1928 19292016-10-03 Richard Russon \<rich@flatcap.org\> 1930* Build 1931 - Fix install and dist targets 1932 19332016-10-02 Richard Russon \<rich@flatcap.org\> 1934* Features 1935 - Kyoto Cabinet header cache 1936 - Compose to Sender 1937 - Forgotten Attachment uses a regex 1938 - Optimize LMDB's hcache backend 1939 - Sensible-browser behaviour fixes 1940* Bug Fixes 1941 - Fixes repaint problem with $pager_index_lines #159 1942 - Quasi-Delete: check there's a selection 1943 - Bulletproof the pager 1944 - Typo in the version string 1945* Docs 1946 - Add badges to README.neomutt 1947 - Document the Kyoto cabinet hcache backend 1948 - Fix the layout of the syntax file 1949 - Make the license clear to github 1950 - Fix the alignment in a 'nested-if' example 1951 - Fix notmuch vim syntax file 1952 - Added Mailinglist mailto links to "Where is NeoMutt" section 1953 - Fix build of neomutt-syntax.vim 1954 - Fixed typo of devel mailinglist name 1955* Build 1956 - Travis: install the kyoto-cabinet dev files 1957 - Build source before docs 1958 - Build fix for strndup / malloc 1959 - Change gcc build options to prevent crashes 1960* Upstream 1961 - Ensure signatures exist when verifying multipart/signed emails. (closes #3881). 1962 - RFC2047-decode mailto url headers after RFC2822 parsing. (closes #3879) 1963 - RFC2047-decode mailto header values. (closes #3879) 1964 - Reset invalid parsed received dates to 0. (closes #3878) 1965 - Clear pager position when toggling headers. 1966 - Don't abort the menu editor on sigwinch. (closes #3875) 1967 - Mark some gpgme pgp menu keybinding translations as fuzzy. (closes #3874) 1968 - Check for NULL mx_ops in mx.c 1969 - Use body color for gpgme output. (closes #3872) 1970 - Fix gpgme segfault when querying candidates with a '+' in the address. (closes #3873) 1971 19722016-09-16 Richard Russon \<rich@flatcap.org\> 1973* Bug Fixes 1974 - Avoid segfault when listing mailboxes on startup 1975 John Swinbank 1976 - Fix buffer overrun in search for attach keyword 1977 James McCoy 1978 - Fix off-by-one in error message 1979 Antonio Radici 1980 - fix AC_INIT tarname parameter 1981 - fix crash when exiting the pager 1982 - fix another crash in the pager 1983 - nntp: close message handles 1984 - fix: make the pager more robust 1985 - fix sidebar sort order 1986 - fix notmuch tag completion 1987* Docs 1988 - doc: Removes bug entry in new-mail docs 1989 Santiago Torres 1990 - fix some translations in crypt_gpgme.c 1991 Antonio Radici 1992 - docs: mass tidy up 1993* Upstream 1994 - Fix sidebar documentation a bit 1995 - Add unsidebar_whitelist command 1996 - Remove the $locale configuration variable 1997 - Add $attribution_locale configuration variable 1998 - Add missing include \<locale.h\> to send.c and edit.c 1999 - Filter out zero width no-break space (U+FEFF) 2000 - Update a confusing and obsolete comment 2001 - Moves mutt_copy_list to muttlib.c, where it belongs 2002 - Redraw screen after an SSL cert prompt 2003 - Preserve message-id and mft headers for recalled messages 2004 - Fix openssl 1.1 compilation issues 2005 20062016-09-10 Richard Russon \<rich@flatcap.org\> 2007* New Features 2008 - Colouring Attachments with Regex 2009 Guillaume Brogi 2010 - PGP Encrypt to Self 2011 Guillaume Brogi 2012 - Sensible Browser 2013 Pierre-Elliott Bécue 2014 - Reply using X-Original-To: header 2015 Pierre-Elliott Bécue 2016 - Purge Thread 2017 Darshit Shah 2018 - Forgotten attachment 2019 Darshit Shah 2020 - Add sidebar_ordinary color 2021* Bug Fixes 2022 - align the nntp code with mutt 2023 Fabian Groffen 2024 - check for new mail while in pager when idle 2025 Stefan Assmann 2026 - Allow the user to interrupt slow IO operations 2027 Antonio Radici 2028 - keywords: check there are emails to tag 2029 - fix duplicate saved messages 2030 - flatten contrib/keybase dir to fix install 2031 - restore the pager keymapping 'i' to exit 2032 - proposed fix for clearing labels 2033 - notmuch: sync vfolder_format to folder_format 2034* Docs 2035 - Update List of Features and Authors 2036* Build 2037 - fix configure check for fmemopen 2038 - use fixed version strings 2039* Upstream 2040 - Increase date buffer size for $folder_format. 2041 - Disable ~X when message scoring. 2042 - Fix pgpring reporting of DSA and Elgamal key lengths. 2043 - Stub out getdnsdomainname() unless HAVE_GETADDRINFO. 2044 - Autoconf: always check for getaddrinfo(). 2045 - Add missing sidebar contrib sample files to dist tarball. 2046 20472016-08-27 Richard Russon \<rich@flatcap.org\> 2048* NeoMutt for Mutt 1.7.0 2049* Build 2050 - Disable fmemopen until bug is fixed 2051* Contrib 2052 - Keybase portability improvements 2053 Joshua Jordi (JakkinStewart) 2054 20552016-08-21 Richard Russon \<rich@flatcap.org\> 2056* Contrib 2057 - Updates to Keybase Support 2058 Joshua Jordi (JakkinStewart) 2059* Bug Fixes 2060 - Fix data-loss when appending a compressed file 2061 - Don't paint invisible progress bars 2062 - Revert to Mutt keybindings 2063 - Don't de-tag emails after labelling them 2064 - Don't whine if getrandom() fails 2065 Adam Borowski (kilobyte) 2066 - Fix display when 'from' field is invalid 2067* Config 2068 - Support for $XDG_CONFIG_HOME and $XDG_CONFIG_DIRS 2069 Marco Hinz (mhinz) 2070* Docs 2071 - Fix DocBook validation 2072 - Document Notmuch queries 2073* Build 2074 - More Autoconf improvements 2075 Darshit Shah (darnir) 2076 - Create Distribution Tarballs with autogen sources 2077 Darshit Shah (darnir) 2078 20792016-08-08 Richard Russon \<rich@flatcap.org\> 2080* New Features 2081 - Timeout Hook - Run a command periodically 2082 - Multiple fcc - Save multiple copies of outgoing mail 2083* Contrib 2084 - Keybase Integration 2085 Joshua Jordi (JakkinStewart) 2086* Devel 2087 - Attached - Prevent missing attachments 2088 Darshit Shah (darnir) 2089 - Virtual Unmailboxes - Remove unwanted virtual mailboxes 2090 Richard Russon (flatcap) 2091* Bug Fixes 2092 - Sidebar's inbox occasionally shows zero/wrong value 2093 - Fix crash opening a second compressed mailbox 2094* Config 2095 - Look for /etc/neomuttrc and ~/.neomuttrc 2096* Docs 2097 - Fix broken links, typos 2098 - Update project link 2099 - Fix version string in the manual 2100* Build 2101 - Add option to disable fmemopen 2102 - Install all the READMEs and contribs 2103 - Big overhaul of the build 2104 Darshit Shah (darnir) 2105 21062016-07-23 Richard Russon \<rich@flatcap.org\> 2107* New Motto: "Teaching an Old Dog New Tricks" 2108 - Thanks to Alok Singh 2109* New Features 2110 - New Mail Command - Execute a command on receipt of new mail 2111 - vim-keys - Mutt config for vim users 2112 - LMDB: In-memory header caching database 2113 - SMIME Encrypt to Self - Secure storage of sensitive email 2114* Bug Fixes 2115 - rework mutt_draw_statusline() 2116 - fix cursor position after sidebar redraw 2117 - Add sidebar_format flag '%n' to display 'N' on new mail. 2118 - fix index_format truncation problem 2119 - Fix compiler warnings due to always true condition 2120 - Change sidebar next/prev-new to look at mailbox-\>new too. 2121 - Change the default for sidebar_format to use %n. 2122 - sidebar "unsorted" order to match Mailbox list order. 2123 - Include ncurses tinfo library if found. 2124 - Sidebar width problem 2125 - sidebar crash for non-existent mailbox 2126 - Temporary compatibility workaround 2127 - Reset mailbox-\>new for the current mailbox in IMAP. 2128 - version.sh regression 2129 - crash when notmuch tries to read a message 2130 - status line wrapping 2131* Docs 2132 - Mass tidy up of the docs 2133 - Fix xml validation 2134 - Add missing docs for new features 2135* Travis 2136 - New build system: 2137 https://github.com/neomutt/travis-build 2138 Now we have central control over what gets built 2139 21402016-07-09 Richard Russon \<rich@flatcap.org\> 2141* Bug-fixes 2142 - This release was a temporary measure 2143 21442016-06-11 Richard Russon \<rich@flatcap.org\> 2145* Change in behaviour 2146 - Temporarily disable $sidebar_refresh_time 2147 Unfortunately, this was causing too many problems. 2148 It will be fixed and re-enabled as soon as possible. 2149* Bug Fixes 2150 - Fix several crashes, on startup, in Keywords 2151 - Reflow text now works as it should 2152 - Lots of typos fixed 2153 - Compress config bug prevented it working 2154 - Some minor bug-fixes from mutt/default 2155 - Single quote at line beginning misinterpreted by groff 2156 - Setting $sidebar_width to more than 128 would cause bad things to happen. 2157 - Fix alignment in the compose menu. 2158 - Fix sidebar mailbox stats updating on mailbox close. 2159* Build Changes 2160 - Sync whitespace to mutt/default 2161 - Alter ChangeLog date format to simplify Makefiles 2162 - Use the new notmuch functions that return a status 2163 - Rename sidebar functions sb_* -\> mutt_sb_* 2164 21652016-05-23 Richard Russon \<rich@flatcap.org\> 2166* New Features: 2167 - Keywords: Email Label/Keywords/Tagging 2168 - Compress: Compressed mailboxes support 2169 - NNTP: Talk to a usenet news server 2170 - Separate mappings for \<enter\> and \<return\> 2171 - New configure option: --enable-quick-build 2172 - Various build fixes 2173 21742016-05-02 Richard Russon \<rich@flatcap.org\> 2175* Update for Mutt-1.6.0 2176* Bug Fixes: 2177 - Build for Notmuch works if Sidebar is disabled 2178 - Sidebar functions work even if the Sidebar is hidden 2179 - sidebar-next-new, etc, only find *new* mail, as documented 2180 - Notmuch supports *very* long queries 2181 21822016-04-16 Richard Russon \<rich@flatcap.org\> 2183* Big Bugfix Release 2184* Bug Fixes: 2185 - Fix crash caused by sidebar_folder_indent 2186 - Allow the user to change mailboxes again 2187 - Correct sidebar's messages counts 2188 - Only sort the sidebar if we're asked to 2189 - Fix refresh of pager when toggling the sidebar 2190 - Compose mode: make messages respect the TITLE_FMT 2191 - Conditional include if sys/syscall.h 2192 - Build fix for old compilers 2193 - Try harder to keep track of the open mailbox 2194* Changes to Features 2195 - Allow sidebar_divider_char to be longer 2196 (it was limited to one character) 2197 - Ignore case when sorting the sidebar alphabetically 2198* Other Changes 2199 - Numerous small tweaks to the docs 2200 - Lots of minor code tidy-ups 2201 - Enabling Notmuch now forcibly enables Sidebar 2202 (it is dependent on it, for now) 2203 - A couple of bug fixes from mutt/stable 2204 22052016-04-04 Richard Russon \<rich@flatcap.org\> 2206* Update for Mutt-1.6.0 2207* No other changes in this release 2208 22092016-03-28 Richard Russon \<rich@flatcap.org\> 2210* New Features 2211 - skip-quoted - skip quoted text 2212 - limit-current-thread - limit index view to current thread 2213* Sidebar Intro - A Gentle Introduction to the Sidebar (with pictures). 2214 22152016-03-20 Richard Russon \<rich@flatcap.org\> 2216* Numerous small bugfixes 2217* TravisCI integration 2218 22192016-03-17 Richard Russon \<rich@flatcap.org\> 2220* New Features 2221 - notmuch - email search support 2222 - ifdef - improvements 2223 22242016-03-07 Richard Russon \<rich@flatcap.org\> 2225* First NeoMutt release 2226* List of Features: 2227 - bug-fixes - various bug fixes 2228 - cond-date - use rules to choose date format 2229 - fmemopen - use memory buffers instead of files 2230 - ifdef - conditional config options 2231 - index-color - theme the email index 2232 - initials - expando for author's initials 2233 - nested-if - allow deeply nested conditions 2234 - progress - show a visual progress bar 2235 - quasi-delete - mark emails to be hidden 2236 - sidebar - overview of mailboxes 2237 - status-color - theming the status bar 2238 - tls-sni - negotiate for a certificate 2239 - trash - move 'deleted' emails to a trash bin 2240 2241