19 KiB
19 KiB
Changelog
3.18.4 (2026-04-08)
Bug Fixes
- Bumped deps (cd06abe)
3.18.3 (2026-03-25)
Bug Fixes
- limit command line length to prevent memory exhaustion (592c566)
3.18.2 (2026-03-23)
Bug Fixes
- Bumped deps (e3c7088)
3.18.1 (2026-01-28)
Bug Fixes
- Bumpe deps (0ddf650)
3.18.0 (2025-12-22)
Features
Bug Fixes
- fix literal format checking (closes #244) (8b7d426)
- fix literal format checking and remove configurable option (2361c04)
3.17.1 (2025-12-12)
Bug Fixes
3.17.0 (2025-12-11)
Features
- add ability to customize auth required error message (e0f3e64)
- add configurable heloResponse option for HELO/EHLO greeting (7c8279f)
- added DSN capability to feature list (disabled by default) (#230) (bb17377)
- added support for ENHANCEDSTATUSCODES and DSN (closes #224) (#225) (ad545ef)
- added support for REQUIRETLS and other body params (71ce3aa)
Bug Fixes
- 193 (657ac6e)
- added resolver option, if server closing do not permit commands (fixes #177, fixes #181) (#222) (e79cac9)
- bug with proxy (#218) (9515e38)
- bumped deps (c499a3c)
- Bumped deps (ce34da4)
- deploy: added autorelease (0dbc8e1)
- deps: Bumped deps (e096b12)
- deps: Bumped deps (0a2d601)
- deps: use punycode module (438c617)
- relax email validation to accept Gmail forwarding addresses (9e83b07)
- relax email validation to accept Gmail forwarding addresses (b5ea6d9)
- release: fixed Git URL on package.json (5876626)
- Replaced punycode with punycode.js (4ccbcf2)
- strengthen email validation in _parseAddressCommand (9aced8d)
- unref timers to allow graceful process exit (e2542d2)
- update dependencies (7f22889)
- XFORWARD: Fixed client hostname processing. Fixes #147 (d518417)
3.16.1 (2025-11-05)
Bug Fixes
- relax email validation to accept Gmail forwarding addresses (b5ea6d9)
3.16.0 (2025-10-29)
Features
- add ability to customize auth required error message (e0f3e64)
- add configurable heloResponse option for HELO/EHLO greeting (7c8279f)
- added DSN capability to feature list (disabled by default) (#230) (bb17377)
- added support for ENHANCEDSTATUSCODES and DSN (closes #224) (#225) (ad545ef)
- added support for REQUIRETLS and other body params (71ce3aa)
Bug Fixes
- 193 (657ac6e)
- added resolver option, if server closing do not permit commands (fixes #177, fixes #181) (#222) (e79cac9)
- bug with proxy (#218) (9515e38)
- bumped deps (c499a3c)
- Bumped deps (ce34da4)
- deploy: added autorelease (0dbc8e1)
- deps: Bumped deps (e096b12)
- deps: Bumped deps (0a2d601)
- deps: use punycode module (438c617)
- release: fixed Git URL on package.json (5876626)
- Replaced punycode with punycode.js (4ccbcf2)
- strengthen email validation in _parseAddressCommand (9aced8d)
- unref timers to allow graceful process exit (e2542d2)
- XFORWARD: Fixed client hostname processing. Fixes #147 (d518417)
3.15.0 (2025-10-09)
Features
Bug Fixes
- bumped deps (c499a3c)
3.14.0 (2025-06-27)
Features
3.13.8 (2025-06-04)
Bug Fixes
- added resolver option, if server closing do not permit commands (fixes #177, fixes #181) (#222) (e79cac9)
3.13.7 (2025-05-20)
Bug Fixes
3.13.6 (2024-10-21)
Bug Fixes
3.13.5 (2024-09-08)
Bug Fixes
- Replaced punycode with punycode.js (4ccbcf2)
3.13.4 (2024-04-12)
Bug Fixes
- deps: Bumped deps (e096b12)
3.13.3 (2024-02-29)
Bug Fixes
- deps: Bumped deps (0a2d601)
3.13.2 (2024-02-02)
Bug Fixes
- release: fixed Git URL on package.json (5876626)
3.13.1 (2024-02-02)
Bug Fixes
v3.13.0 2023-08-15
- new event handler
onSecure - specified license identifier in package.json (from
MITtoMIT-0)
v3.12.0 2023-05-24
- new option
authRequiredMessage - Bumped deps
v3.11.0 2022-04-28
- Added github workflow for tests
- Removed Travis
- Fixed compatibility for Node v18
- Bumped deps
v3.10.0 2022-02-23
- Add missing space suffix to an empty 334 response
- Bumped dependencies
v3.9.0 2021-06-01
- Bumped dependencies
- Added extra log entries for 'close' events
v3.8.0 2020-11-13
- Bump dependencies to latest
- Access to challenge and challengeResponse (CRAM-MD5)
v3.7.0 2020-06-25
- Bump dependencies to latest
v3.6.0 2020-03-15
- Add remote address to any errors
- Bump dependencies to latest
v3.5.0 2019-01-04
- Fix reverse resolving invalid hostname error where greeting was sent twice
- Bump Nodemailer version to v5.0.0
v3.4.5 2018-05-25
- Expose connection id in 'connect' event
v3.4.4 2018-05-04
- Enclose punycode calls in try..catch
v3.4.2 2018-03-16
- handle missing address in listener handler
v3.4.0 2017-12-01
- Added new property
securedto indicate an TLS server where TLS is handled upstream - Allow handling TLS after PROXY header
v3.3.1 2017-11-28
- Do not choke on overly long reverse DNS call
v3.3.0 2017-10-05
- Added new method updateSecureContext({key, cert}) to update TLS options live
v3.2.0 2017-10-01
- Return net.listen() value
v3.1.0 2017-08-16
- Added new server option
needsUpgradeto upgrade sockets to TLS immediately after connection is established. Works with secure: true
v3.0.0 2017-04-06
- Reverted license back to MIT
v2.0.3 2017-02-17
- Expose
securestate in session
v2.0.2 2017-02-17
- Fixad a bug where
server.onConnect(err)did not close the connection
v2.0.1 2017-02-04
- Fixad a bug where
server.on('connect', data)had missingdata
v2.0.0 2017-02-04
- Changed license from MIT to EUPL-v1.1
- Rewrite to use ES6, this means at least Node.js v6.0.0 is required to use smtp-server
v1.16.1 2016-10-17
- Allowed rewriting
connectmethod
v1.16.0 2016-10-17
- Added new method
connectto pass already established sockets to the server
v1.15.0 2016-09-23
- Added new connection property
remotePort - Emit 'connect' event when all handshakes (including PROXY) have been completed
v1.14.2 2016-09-02
- Fix issue with invalidly resolved IPv4 addresses on IPv6 interface
v1.14.1 2016-08-16
- Ignore connection errors outside transaction
v1.14.0 2016-08-09
- Expose connection TLS cipher in the
tlsOptionsproperty
v1.13.1 2016-07-29
- Fixed remoteHostname resolving bug
v1.13.0 2016-07-29
- Added new option
disableReverseLookupto skip reverse resolving client hostname on connection
v1.12.0 2016-07-25
- Added new property for session:
session.transmissionTypethat identifies the current transmission (SMTP, ESMTP, ESMTPA etc.)
v1.11.2 2016-07-15
- Do not strip last linebreak
v1.11.1 2016-07-12
- this.server.options bug fix #58 (xpepermint)
v1.11.0 2016-07-07
- Added support for LMTP protocol. Set
lmtpoption totruein order to use it
v1.10.0 2016-07-06
- Added options
hidePIPELINING,hide8BITMIMEandhideSMTPUTF8
v1.9.1 2016-04-26
- Check that
connection._parserexists before trying to use it in the DATA handler
v1.9.0 2016-02-20
- Added new connection method
onClose - Preserve session object, do not re-create it for every transaction
- Added new server option
allowInsecureAuth
v1.8.0-beta.0 2016-01-26
- Fixed a bug with XCLIENT ADDR validation
- Added support for XFORWARD command
- Expose XCLIENT and XFORWARD data for the session object (session.xClient, session.xForward - both are Map objects where uppercase argument name is the key, eg. session.xClient.get('ADDR') to see the IP address of XCLIENT)
v1.7.1 2015-10-27
- Fixed an issue with empty NAME for XCLIENT
v1.7.0 2015-10-27
- Added support for XCLIENT with
useXClientoption - Fixed an issue with an empty space after EHLO (67acb1534 by AtlasDev)
- Added dummy handlers for KILL, WIZ, SHELL
v1.6.0 2015-09-29
- Catch errors thrown by dns.reverse on invalid remoteAddress values
- Added onConnect handler to block unwanted connections (66784aea by jleal52)
v1.5.2 2015-09-18
- Fixed regression with node v0.12 where STARTTLS connections were kept hanging around after close
v1.5.1 2015-09-18
- Fixed an issue where STARTTLS threw an error
- Fixed an issue where using unknown auth schemes threw an error (a13f0bc8 by farmdog)
v1.5.0 2015-08-21
- Added support for PROXY protocol with
useProxyoption
v1.4.0 2015-04-30
- Added support for RFC1870 SIZE extension
v1.3.1 2015-04-21
- Added integration tests for CRAM-MD5 authentication
- Exposed SNI support with
sniOptionsoptional server option - Define used protocol for NPN as 'smtp'
v1.3.0 2015-04-21
- Added CRAM-MD5 authentication support
v1.2.0 2015-03-11
- Do not allow HTTP requests. If the client tries to send a command that looks like a HTTP request, then disconnect
- Close connection after 10 unrecognized commands
- Close connection after 10 unauthenticated commands
- Close all pending connections after
server.close()has been called. Default delay to wait is 30 sec. Can be changed withcloseTimeoutoption
v1.1.1 2015-03-11
- Fixed an issue with parsing MAIL FROM and RCPT TO commands, if there was a space before or after the first colon
v1.1.0 2015-03-09
- Added support for
hideSTARTTLSoption that hides STARTTLS while still allowing to use it (useful for integration test scenarios but not for production use) - Changed
loggeroption behavior - if the value isfalsethen no logging is used. If the value is missing, then output is logged to console - Fixed broken examples in the README