NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #2141 most downloaded on npm
Easy as cake e-mail sending from your Node.js applications
Last release today
03 Oct 2026
Ships fairly regularly
a new release about every 3 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
158 versions withdrawn
withdrawn after publishing
15 years old
323 releases · first in 2011
Nothing published for this version
Nothing published for this version
Nothing published for this version
One column per quarter.
Republishing 2.1.0-rc.1 as stable. To recap, here's the notable changes between v2.0 and v2.1:
Republishing 2.1.0-rc.1 as stable. To recap, here's the notable changes between v2.0 and v2.1:
Sneaked in some new features even though it is already rc
Sneaked in some new features even though it is already rc
isIdle() that checks if a pool has still some free connection slots available- Bumped dependency versions
Added support for node-email-templates templating in addition to the built-in renderer
Implemented simple templating feature
Allow using prepared header values that are not folded or encoded by Nodemailer
Use the same header custom structure for message root, attachments and alternatives
- Released rc.2 as stable
- Locked dependencies
Nothing published for this version
Updated documentation to reflect changes with SMTP handling
Use bunyan compatible logger instead of the emit('log') style
Stream errors are not silently swallowed
Allow connection url based SMTP configurations
Allow connection url based SMTP configurations
Added defaults argument for createTransport to predefine commonn values (eg. from address)
Added defaults argument for createTransport to predefine commonn values (eg. from address)
Returns a Promise for sendMail if callback is not defined
Returns a Promise for sendMail if callback is not defined
Added priority option (high, normal, low) for setting Importance header
Added priority option (high, normal, low) for setting Importance header
Replaced hyperquest with needle. Fixes issues with compressed data and redirects
Replaced hyperquest with needle. Fixes issues with compressed data and redirects
Maintenance release. Bumped dependencies to get support for unicode filenames for QQ webmail and to support emoji in filenames
Maintenance release. Bumped dependencies to get support for unicode filenames for QQ webmail and to support emoji in filenames
Use mailcomposer instead of built in solution to generate message sources. Bumped libmime gives better quoted-printable handling.
Use mailcomposer instead of built in solution to generate message sources. Bumped libmime gives better quoted-printable handling.
Added new message option watchHtml to specify Apple Watch specific HTML part of the message. See this post for details
Added new message option watchHtml to specify Apple Watch specific HTML part of the message. See this post for details
Maintenance release, bumped buildmail version to get fixed format=flowed handling
Maintenance release, bumped buildmail version to get fixed format=flowed handling
Maintenance release, bumped dependencies
Maintenance release, bumped dependencies
Maintenance release, upgraded dependencies. Replaced simplesmtp based tests with smtp-server based ones.
Maintenance release, upgraded dependencies. Replaced simplesmtp based tests with smtp-server based ones.
Nothing published for this version
Maintenance release, upgrades buildmail and libmime. Allows using functions as transform plugins and fixes issue with unicode filenames in Gmail.
Maintenance release, upgrades buildmail and libmime. Allows using functions as transform plugins and fixes issue with unicode filenames in Gmail.
Proper handling of data uris as attachments. Attachment path property can also be defined as a data uri, not just regular url or file path.
Proper handling of data uris as attachments. Attachment path property can also be defined as a data uri, not just regular url or file path.
Bumped libmime and mailbuild versions to properly handle filenames with spaces (short ascii only filenames with spaces were left unquoted).
Bumped libmime and mailbuild versions to properly handle filenames with spaces (short ascii only filenames with spaces were left unquoted).
Allow using encoded strings as attachments. Added new property encoding which defines the encoding used for a content string. If encoding is set, the
Allow using encoded strings as attachments. Added new property encoding which defines the encoding used for a content string. If encoding is set, the content value is converted to a Buffer value using the defined encoding before usage. Useful for including binary attachemnts in JSON formatted email objects.
Return deprecatin error for v0.x style configuration
Return deprecatin error for v0.x style configuration
Bumped nodemailer-direct-transport dependency. Updated version includes a bugfix for Stream nodes handling. Important only if use direct-transport wit
Bumped nodemailer-direct-transport dependency. Updated version includes a bugfix for Stream nodes handling. Important only if use direct-transport with Streams (not file paths or urls) as attachment content.
Added new method resolveContent() to get the html/text/attachment content as a String or Buffer.
Added new method resolveContent() to get the html/text/attachment content as a String or Buffer.
Bugfix release. HTML node was instered twice if the message consisted of a HTML content (but no text content) + at least one attachment with CID + at
Bugfix release. HTML node was instered twice if the message consisted of a HTML content (but no text content) + at least one attachment with CID + at least one attachment without CID. In this case the HTML node was inserted both to the root level multipart/mixed section and to the multipart/related sub section
Fixed a bug where Nodemailer crashed if the message content type was multipart/related
Fixed a bug where Nodemailer crashed if the message content type was multipart/related
Upgraded nodemailer-smtp-transport to 0.1.11\. The docs state that for SSL you should use 'secure' option but the underlying smtp-connection module us
Upgraded nodemailer-smtp-transport to 0.1.11. The docs state that for SSL you should use 'secure' option but the underlying smtp-connection module used 'secureConnection' for this purpose. Fixed smpt-connection to match the docs.
Implemented missing #close method that is passed to the underlying transport object. Required by the smtp pool.
Implemented missing #close method that is passed to the underlying transport object. Required by the smtp pool.
Total rewrite. See migration guide here:
Total rewrite. See migration guide here: http://www.andrisreinman.com/nodemailer-v1-0/#migrationguide
Nothing published for this version
- Upgraded aws-sdk to 2.0.5
Replace current SES with new SES using AWS-SDK (Elanorr) [c79d797a]
Use tildes instead of carets for dependency listing [5296ce41]
added npmignore, bumped dependencies [21bddcd9]
Upgraded simplesmtp dependency [dd367f59]
Added error option to Stub transport [c423acad]
Do not throw on multiple errors from sendmail command [c6e2cd12]
Allow defining custom transport methods [ec5b48ce]
Updated README, added global options info for setting uo transports [554bb0e5]
true [9023a6e1..4c66b819]Expose status for direct messages [f0312df6]
Use the name property from the transport object to use for the domain part of message-id values
Expose transport method and transport module version if available [a495106e]
Updated mailcomposer version. Replaces ent with he [6a45b790e]
added shorthand function mail() for direct transport type [88129bd7]
Update for 'direct' handling [77b84e2f]
Added support for 'direct' transport [826f226d..0dbbcbbc]
Replace \r\n by \n in Sendmail transport (rolftimmermans) [fed2089e..616ec90c] A lot of sendmail implementations choke on \r\n newlines and require \n
Upgraded mailcomposer dependency to 0.2.4 [e5ff9c40]
Updated mailcomposer dependnecy version to 0.2.3
Your coding agent can read these notes before it upgrades. Set up the MCP server →