# changelog

author: Tim Semeijn <tim@goat.re> - 0.9.4-2
changelog:
  - Fix failing builds with *_poll build patch (3proxy-0.9.4-poll-build.patch)
  - Convert license to SPDX


author: Benjamin A. Beasley <code@musicinmybrain.net> - 0.12.6-1
changelog:
  - Update to 0.12.6 (close RHBZ#2162811)
  - Update License to SPDX
  - Document and/or unbundle all bundled libraries


author: David Michael <fedora.dm0@gmail.com> - 1.5-4
changelog:
  - Enable MicroLZMA support.
  - Switch the License tag to SPDX, and ship matching noneffective license files.


author: David Michael <fedora.dm0@gmail.com> - 1.6-3
changelog:
  - Backport patches for CVE-2023-33551 and CVE-2023-33552.
  - Change conditional build feature defaults for supporting EPEL 9.


author: Lukas Javorsky <ljavorsk@redhat.com> - 2.7.6-5
changelog:
  - Rebuilt for minizip-ng transition Fedora change
  - Fedora Change: https://fedoraproject.org/wiki/Changes/MinizipNGTransition


author: Richard Russon <rich@flatcap.org> - 20230517-1
changelog:
  - Features
    - #3699 - Support 24bit colors, aka truecolor
    - #3738 - Show complete MIME structure in attachments
    - #3842 - Allow percentages to be localized
  - Bug Fixes
    - #3813 - Fix crash in op_browser_subscribe
    - #3844 - Select the first email when coming from an empty limit
    - #3848 - Fix counting new mails in maildir
    - #3759 - bind: fix incorrect conflict report
    - #3781 - index: only refresh the menu on non-focus window changes
    - #3856 - tunnel: fix reconnection with `ssl_force=true`
    - #3860 - maildir: stop parsing headers at the end of the headers section
    - #3864 - Fix handling of bright colours
    - Fix sorting of labels
  - Translations
    - 100% Serbian
    - 100% Turkish
    - 100% Lithuanian
    - 100% Hungarian
    - 100% German
    - 99% Norwegian (Bokmål)
    - 99% Slovak
    - 99% Portuguese (Brazil)
    - 99% Czech
    - 95% French
  - Build
    - #3798 - Build with libidn2 by default, remove support for libidn1
  - Code
    - config: dynamically create/delete variables
    - config: unify handling of NeoMutt and user (my_) variables
    - config: cache config variables used often
    - speed: various speedups in parsing emails
    - cleanups: lots of code cleanups
    - Huge refactoring towards a separation of Mailbox/MailboxView


author: Richard Russon <rich@flatcap.org> - 20231006-1
changelog:
  - Features
    - #3870 - color: allow 'alert', 'bright', 'light' prefix for colorNNN
    - #3871 - color: refactor parsing code
    - #3895 - imap: truncate large UIDVALIDITYs to support non-conforming IMAP servers
    - #3898 - hcache: shrink Email and Body caches
    - #3900 - prompt: treat complete-query as complete where it makes sense
    - #3925 - help: add message flags to help screen
    - #3932 - help: add alternating colors
    - #3982 - mailboxes: add `-label`, `-notify` and `-poll` options
    - #4038 - add help to questions
    - #4046 - color_directcolor: Also set the default/initial value on startup
  - Bug Fixes
    - #3897 - maildir: fix sync when a deleted file disappears
    - #3878 - gnutls: fix "certificate saved" message
    - #3895 - imap: truncate large UIDVALIDITYs to support non-conforming servers
    - #3897 - maildir: fix fix error with `<sync-mailbox>` on mbsync
    - #3901 - address: parse comments after address
    - #3915 - bind: fix truncated binding strings
    - #3956 - fix 'from' address when real name isn't set
    - #3962 - Fix crash on `<next-thread>` when the `<limit>`ed view is empty
    - #3985 - browser: fix autocompletion
    - #3988 - pager: fix search crash
    - #3999 - help: fix search highlight
    - #4049 - force mail check on current mailbox after `<shell-escape>`
    - #4051 - openssl: continue if a signal interrupts an SSL read/write
  - Changed Config
    - #3881 - Rename `$imap_keepalive` to `$imap_keep_alive`
    - #3889 - Change defaults to use `%<...>` conditional syntax
    `$attach_format`, `$index_format`, `$mailbox_folder_format`,
    `$status_format`, `$ts_icon_format`, `$ts_status_format`
    - #3949 - Add `browser_sort_dirs_first` to always list directories first
  - Translations
    - 100% Turkish
    - 100% Serbian
    - 100% Lithuanian
    - 100% German
    - 99% Czech
    - 99% Polish
    - 98% Slovak
  - Code
    - #3877 - imap: factor out tagged emails
    - #3799 - address: use struct Buffer instead of plain char pointers
    - #3868 - drop notifications relay
    - #3869 - move `$delete_untag` out of the backend
    - #3873 - respect `--[disable-]fmemopen` in tests
    - hcache: optimize storage requirements, reduce config
    - logging: catch format string errors
    - colour:  refactor colour parsing
    - refactoring, cleanup
    - fixed coverity defects
    - convert many functions to use a `Buffer`


author: Richard Russon <rich@flatcap.org> - 20231023-1
changelog:
  - Bug Fixes
    - #4060 fix crash on exit
    - #4061 fix header colour
    - #4064 fix 32-bit date overflow
    - #4078 fix new mail in limited view
    - nntp: fix use-after-free
    - color: fix ansi colours
    - color: add +truecolor to version string


author: Richard Russon <rich@flatcap.org> - 20231103-1
changelog:
  - Features
    - #4080 - info screen: enable <save-message>
    - #4075 - add color command
    - color: add ANSI RGB support
    - color: Support ANSI 2x clear sequences
  - Bug Fixes
    - #4074 - color: fix palette conversion
    - #4081 - fix logging on error
    - #4081 - log: vim-style
    - #4082 - fix file auto-completion
    - #4090 - improve logic for growing mailbox memory
  - Translations
    - 100% Czech
    - 100% German
    - 100% Lithuanian
    - 100% Serbian
    - 100% Slovak
    - 100% Turkish
  - Build
    - #4085 - fix CFLAGS/LDFLAGS for ncurses
    - #4085 - configure --with-iconv
  - Code
    - #4067 - remove unused count of new mails from index private data
    - #4086 - smtp: Simplify the API of smtp_code()
    - #4091 - simplify CLAMP by expressing it with MIN/MAX
    - color: introduce ColorElement
    - color: log gui info on startup
    - color: move business logic out of parsers
    - color: tidy OptNoCurses cases
    - log: add log_multiline()
    - test: increase coverage


author: Richard Russon <rich@flatcap.org> - 20231221-1
changelog:
  - Features
    - #4126 - add alias 'tags:'
  - Bug Fixes
    - #4115 - create HelpBar after colours
    - #4116 - Fix Batch Sending of Emails
    - #4119 - Fix Header Cache Key Handling
    - #4121 - mutt_oauth2.py: error out if ENCRYPTION_PIPE was not supplied
    - #4124 - config: fix flag overlaps
    - #4125 - compose: restore view-text/pager/mailcap
    - color: fix attr_color_copy()
    - fix :color dump
    - fix leak in completion
    - force mail check on current mailbox after `<imap-fetch-mail>`
    - Allow sending an empty mail
    - mutt_oauth2.py: Use readline to overcome macOS input() restrictions
  - Changed Config
    - add $history_format: '%s'
  - Translations
    - 100% Czech
    - 100% German
    - 100% Lithuanian
    - 100% Serbian
    - 100% Slovak
    - 100% Turkish
    - 99% Spanish
    - 99% Hungarian
  - Coverity defects
    - #4111 Educate Coverity about ARRAYs
    - fix defects
  - Build
    - #4098 - build: use fallthrough attribute
    - #4100 - build: split maildir and mh types
    - #4101 - version: drop default features
    - #4108 - strip non-conditionals
    - #4122 - add github action to check for unused functions (xunused)
    - update fedora action
    - coverage: fix build for lcov v2
    - tests: fix error cases
  - Code
    - #4097 - config: add DT_ON_STARTUP
    - #4104 - Change mutt_default_save() and addr_hook() to take a buffer
    - #4105 - Use buffer pool in tests
    - #4106 - Switch some buffers to use the buffer pool
    - #4109 - Improve the Progress Bar
    - #4117 - remove MxOps::path_parent() and mutt_path_parent()
    - #4120 - remove unused functions
    - #4131 - move editor test code
    - #4133 - move log_disp_null() into test folder
    - #4137 - move config string name functions into tests
    - add: hook_new()/hook_free()
    - fix more printf-style params
    - rename compare to equal
    - hcache: renaming for clarity


author: Richard Russon <rich@flatcap.org> - 20240201-1
changelog:
  - Features
    - #4134 Command-line Crypto (neomutt -C)
  - Bug Fixes
    - #4065 track new-mail check time per mailbox
    - #4141 fix(change-folder): don't exclude notmuch
    - #4147 envelope: manage subject/real_subj together
    - #4155 fix parsing of $REPLYTO
    - #4158 status: fix refresh after sync-mailbox
    - #4166 Fix two memory leaks in notmuch support
    - progress: fix percentages
  - Translations
    - 100% Czech
    - 100% German
    - 100% Lithuanian
    - 100% Serbian
    - 100% Slovak
    - 100% Turkish
  - Docs
    - #4172 Several fixes for the manual pages
  - Build
    - build: openbsd workarounds
  - Code
    - #4142 add mutt_time_now()
    - #4146 config: factor out R_ flags
    - #4154 file: upgrade mutt_file_fopen/fclose()
    - #4159 upgrade mutt_str_append_item() to use struct Buffer
    - #4161 maildir: encapsulate the header cache
    - #4162 remove mutt_str_dequote_comment()
    - #4165 bufferize mutt_str_inline_replace() as buf_inline_replace()
    - #4167 bufferize mutt_strn_rfind() as buf_rfind()
    - #4168 replace buf_len() checks with buf_is_empty()
    - config: drop unused flags
    - use message_new()/message_free()
    - Reconsider the config type bitmap entirely


author: Richard Russon <rich@flatcap.org> - 20240323-1
changelog:
  - Bug Fixes
    - #4185 c441f5957 Fix memory leak in trash_append()
    - #4189 Fix off-by-one error in %b with notmuch
    - #4190 Zero-out mailbox counters on delete
    - #4204 colour: honour the normal colour
    - #4205 match folder-hook also against mailbox name (fixes #4201)
    - wrap colour in <show-log-messages>
    - history: fix saving file
    - history: improve error message format
  - Docs
    - #4182 docs: -C: Fix some accidents
    - #4188 Update oauth2 README
    - #4193 Update oauth2 README
    - fix typos, lots of tidying
    - tidy license info
  - Build
    - #4196 use FreeBSD 14.0 in Cirrus CI
    - actions: update cpu count
    - actions: use codeql v3
  - Code
    - #4186 Buffer refactoring: make_entry()
    - address: tidy config handling
    - coverage: buf, slist
    - graphviz: link labels
    - tidy buf_strcpy() calls
    - tidy char buffers
    - test: default timezone to UTC


author: Paul Howarth <paul@city-fan.org> - 1.3.8-0.2.rc3
changelog:
  - Update to 1.3.8rc3
    - Support SSH hostkey rotation via OpenSSH extensions (GH#1323)
    - NLST did not behave consistently for relative paths (GH#1325)
    - Support AES Galois Counter Mode (AES-GCM) in SSH; support for the
      "aes128-gcm@openssh.com" and "aes256-gcm@openssh.com" ciphers has been
      added to mod_sftp (Bug #3759)
    - Implement an LDAPConnectTimeout directive, to configure the timeout used
      when connecting to LDAP servers (GH#1333)
    - Implement OpenSSH "Encrypt-Then-MAC" (ETM) algorithm extensions (GH#1330)
    - Implement AllowForeignAddress class matching for passive data transfers
      (GH#1346)
    - Implement support for PCRE2 (GH#1353)
    - ProFTPD wouldn't start with several locales (Bug #4466)
    - Auth sources providing space-bearing user/group names caused compliance
      issues with MLSD/MLST responses (GH#1367)
    - DeleteAbortedStores removed successfully transferred files unexpectedly
      (Bug #4467)
    - Omit EPRT/EPSV from FEAT response when denied by <Limit> configuration
      (GH#1383)
    - Support uploading to symlinked files (GH#1379)
    - Keepalive socket options should be set using IPPROTO_TCP, not SOL_SOCKET
      (GH#1401)
    - TCP keepalive SocketOptions should apply to control as well as data
      connection (GH#1402)
    - ProFTPD always used the same PassivePorts port for first transfer (GH#1396)
    - mod_sftp needs to handle unknown SSH messages in an RFC-compliant manner,
      ignoring rather than disconnecting (GH#1410)
    - Improve handling of some globally applied configuration directives (GH#1418)
    - Name-based virtual hosts not working as expected after upgrade from 1.3.7a
      to 1.3.7b (GH#1369)


author: Paul Howarth <paul@city-fan.org> - 1.3.8-0.3.rc4
changelog:
  - Update to 1.3.8rc4
    - mod_sftp should fail on startup when SFTP and TLS are both enabled for a
      vhost (GH#1434)
    - DelayTable not properly using documented default value; this is a
      regression caused by the changes for Bug#4020 (GH#1440)
    - Support customizing SSH ciphers, digests, key exchanges via SFTPClientMatch
      (GH#1444)
    - Ensure that mod_sftp algorithms work properly with OpenSSL 3.x (GH#1448)
    - BanOnEvent BadProtocol triggers segfault (GH#1445)
    - SFTP "check-file" implementation computes incorrect results (GH#1439)
    - Implement SFTPHostKeys directive for configuring the SSH host key
      algorithms (GH#1457)
    - Implement the "curve448-sha512" SSH key exchange algorithm (GH#1437)
    - Include directive broken when using wildcards for directory components
      (GH#1472)
    - mod_sftp fails to build using OpenSSL 1.0.x: undefined reference to
      'EVP_MD_CTX_reset' (Bug #4485)
    - Reload after omitting explicit ModulePath value causes fatal module load
      failures (GH#1476)
  - Drop pcre build dependency since we have been explicitly disabling it for the
    last 5 years anyway
  - Fix X448 support check to fail properly with OpenSSL 1.1.0 (GH#1488)


author: Paul Howarth <paul@city-fan.org> - 1.3.8-0.4.rc4
changelog:
  - Update mod_vroot to 0.9.10
    - Fix unexpected filtering behaviour with mod_vroot (#2104972, GH#1491)


author: Paul Howarth <paul@city-fan.org> - 1.3.8-1
changelog:
  - Update to 1.3.8
    - 1.3.8rc4 failed to build mod_sftp with OpenSSL 1.1.0 due to X448 check
      (GH#1488)
    - 1.3.8rc4 failed to build on Solaris due to missing type declarations
      (GH#1494)
    - mod_ifsession doesn't change the effect of SFTPMaxChannels (GH#1500)
    - mod_tls module unexpectedly allows TLS handshake after authentication in
      some configurations (GH#1533)
    - Disable FSCachePolicy by default (GH#1528)
    - Avoid logging "session closed" messages unless there is a corresponding
      "session opened" log message, to avoid user confusion (GH#1539)
    - Implement support for the CSID FTP command (GH#1550)
    - Unable to verify signed data: signature type 'rsa-sha2-512' does not match
      publickey algorithm 'ssh-rsa' (Bug #4491)
    - mod_auth_otp improperly allows keyboard-interactive logins for users
      lacking OTP entries (GH#1560)
  - Update mod_vroot to 0.9.11
    - Addresses a bad interaction with mod_auth_file, and failed login attempts,
      which can lead to inexplicably "stuck" processes that cannot be terminated
      (https://github.com/proftpd/proftpd/issues/1384)
  - Use SPDX-format license tag


author: Paul Howarth <paul@city-fan.org> - 1.3.8-4
changelog:
  - Ensure mod_rewrite is linked against libidn2 so that it loads properly
    (rhbz#2166454, https://github.com/proftpd/proftpd/issues/1590)
  - No longer need to explicitly remove libtool archives from Fedora 36 onwards


author: Paul Howarth <paul@city-fan.org> - 1.3.8a-1
changelog:
  - Update to 1.3.8a
    - Fix mod_sftp failure to handle SFTP requests to truncate files to zero size
      (GH#1581)
    - Fix mod_sftp improperly handling SFTP WRITE requests for files opened for
      appending (GH#1584)
    - Build-time detection of Linux POSIX ACL support was broken since 1.3.8rc2
      (GH#1568)
    - Fix failure to load mod_rewrite as a dynamic module due to
      incomplete/missing library linker flags (GH#1590)
    - <Class> section is allowed to be in <Global>, but From directive is not
      (GH#1597)
    - ExtendedLog SSH, SFTP classes not working as expected (GH#1617)
    - Fix mod_sftp not handling multiple concurrent open file handles/transfers
      well for logging (GH#1646)
    - "TLSRequired off" plus Protocols directive caused mod_tls to terminate the
      session abruptly (GH#1679)
    - Fix mod_tls failure to compile against OpenSSL 3.0.8 due to missing
      ENGINE_METHOD_ flags (GH#1689)
    - Unknown named connection error when using different SQL backends (GH#1659)
    - Fix mod_sql not properly closing all named backend connections on session
      exit (GH#1697)
    - SSH key exchanges failed unexpectedly with "unable to write X bytes of raw
      data" errors due to small ProFTPD buffer (GH#1694)
    - Fix high session memory usage caused by SFTP outgoing data buffering
      (GH#1678)
    - Out-of-bounds buffer read when handling FTP commands (GH#1683,
      CVE-2023-51713)
    - SFTP algorithm settings in <Global> section were not being used (GH#1712)


author: Paul Howarth <paul@city-fan.org> - 1.3.8b-1
changelog:
  - Update to 1.3.8b
    - Compiling ProFTPD 1.3.8a mod_sftp, mod_tls using libressl 3.7.3 failed
      (GH#1735)
    - Build system failed for specific module names (GH#1756)
    - "Terrapin" Prefix Truncation Attacks in SSH Specification affected mod_sftp
      (CVE-2023-48795, GH#1760)


author: Paul Howarth <paul@city-fan.org> - 1.3.8b-2
changelog:
  - Use libsodium to provide ed25519 key support for mod_sftp (#2256340)
  - Update logrotate snippet to use try-reload-or-restart rather than reload
    for distributions with systemd 229 or later (PR#3)


author: Paul Howarth <paul@city-fan.org> - 1.3.8b-3
changelog:
  - Add 'proxy' sub-package with unbundled mod_proxy (rhbz#2272051)
  - Update fsio.c: if mkdir fails with EEXIST, also clear the cache (GH#1677)


author: Dominik Mierzejewski <dominik@greysector.net> - 2.6.2-28
changelog:
  - apply Debian patch to fix CVE-2021-42260 (rhbz#2253716, rhbz#2253718)
  - apply Debian patch to fix CVE-2023-34194 and its duplicate, CVE-2023-40462
    (rhbz#2254376, rhbz#2254381)
  - fix incorrect text element encoding (upstream isssue #51)
  - compile and run tests


author: Filipe Rosset <rosset.filipe@gmail.com> - 4.226-1
changelog:
  - Update to 4.226, enabled tests, spec cleanup and modernization
  - Fixes rhbz#1933296 rhbz#2047099 and rhbz#2026957


author: Nolan Poe <npgo22@gmail.com> - 5.022-1
changelog:
  - Update to 5.022 - Fix SPDX License identifier - Add CMake for tests - Fix
    runtime dependency check - Fix runtime version checck - Fix
    multithreading bug that causes spurious failures - Default to using
    tcmalloc


author: Nolan Poe <npgo22@gmail.com> - 5.022-2
changelog:
  - Improve conformance to modern Fedora packaging guidelines - Break out
    packages - Remove CC0 content


