2018-02-11 20:21:21 +00:00
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog ](http://keepachangelog.com/en/1.0.0/ )
and this project adheres to [Semantic Versioning ](http://semver.org/spec/v2.0.0.html ).
2022-04-13 16:47:18 +00:00
## [3.9.0] - [TBD]
### Added
- support `isolatedModules` and `preserveValueImports` compilation scenarios [#305 ](https://github.com/eleith/emailjs/pull/305 )
### Fixed
- support `typescript@3.8.3` [#307 ](https://github.com/eleith/emailjs/issues/307 )
- the types change in `v3.8.0` for `Client#send` & `Client#sendAsync` unintentionally raised the minimum `typescript` requirement. fixing this involved weakening the types for those functions, which may require modifying your code. this change will be reverted for `v4.0.0` .
2022-03-17 20:50:55 +00:00
## [3.8.0] - 2022-03-17
### Added
- support `typescript@4.6`
- type allow `Client#send` & `Client#sendAsync` to accept message headers instead of a `Message`
- no behavior change: this was previously allowed, but the types didn't acknowledge it
2021-11-20 00:58:04 +00:00
## [3.7.0] - 2021-11-19
### Added
- support `typescript@4.5`
2021-11-19 23:57:31 +00:00
2021-10-27 14:58:16 +00:00
## [3.6.0] - 2021-09-03
2021-09-03 22:24:31 +00:00
### Added
- support `tsc` compilation without `--esModuleInterop` or `--allowSyntheticDefaultImports` [#296 ](https://github.com/eleith/emailjs/pull/296 )
- `Message#readAsync` API [#297 ](https://github.com/eleith/emailjs/pull/297 )
- `Message#checkValidity` API [#298 ](https://github.com/eleith/emailjs/pull/298 )
### Deprecated
- `Message#valid` API [#298 ](https://github.com/eleith/emailjs/pull/298 )
2021-06-29 00:33:26 +00:00
## [3.5.0] - 2021-06-28
2021-06-26 19:45:56 +00:00
### Added
- support `tsc --noPropertyAccessFromIndexSignature` [#290 ](https://github.com/eleith/emailjs/pull/290 )
### Fixed
- use `engines` field in `package.json` to signal node version support
2020-12-01 23:13:43 +00:00
## [3.4.0] - 2020-12-01
2020-11-30 05:06:40 +00:00
### Added
- `SMTPClient#sendAsync` API [#267 ](https://github.com/eleith/emailjs/issues/267 )
- `isRFC2822Date` API
### Changed
- use `WeakSet` instead of `WeakMap` for greylist tracking
### Fixed
- use camelCase style for internal function names
- use correct types in jsdoc comments
2020-08-08 21:50:16 +00:00
## [3.3.0] - 2020-08-08
2020-08-02 02:22:47 +00:00
### Added
2020-08-02 02:58:48 +00:00
- greylist support [#202 ](https://github.com/eleith/emailjs/issues/202 )
2020-08-02 02:22:47 +00:00
### Fixed
2020-08-02 02:58:48 +00:00
- check socket is writable before sending [#205 ](https://github.com/eleith/emailjs/issues/205 )
2020-08-02 02:22:47 +00:00
2020-07-27 18:37:25 +00:00
## [3.2.1] - 2020-06-27
### Fixed
2020-08-02 02:58:48 +00:00
- use correct type for `MessageAttachment.stream` [#261 ](https://github.com/eleith/emailjs/issues/261 )
- add missing types in mime functions [#262 ](https://github.com/eleith/emailjs/pull/262 )
2020-07-27 18:37:25 +00:00
## [3.2.0] - 2020-06-19
### Added
2020-08-02 02:58:48 +00:00
- `addressparser` API (forked from dropped dependency) [#259 ](https://github.com/eleith/emailjs/issues/259 )
- `mimeEncode` /`mimeWordEncode` APIs (forked from dropped dependency) [#247 ](https://github.com/eleith/emailjs/issues/247 )
2020-07-27 18:37:25 +00:00
### Changed
2020-08-02 02:58:48 +00:00
- drop dependency on `addressparser` [#259 ](https://github.com/eleith/emailjs/issues/259 )
- drop dependency on `emailjs-mime-codec` [#247 ](https://github.com/eleith/emailjs/issues/247 )
2020-07-27 18:37:25 +00:00
### Fixed
2020-08-02 02:58:48 +00:00
- make `MessageAttachment` interface usable [#254 ](https://github.com/eleith/emailjs/issues/254 )
- mend regression in address type validation [#252 ](https://github.com/eleith/emailjs/pull/252 )
2020-07-27 18:37:25 +00:00
## [3.1.0] - 2020-06-19 [YANKED]
## [3.0.0] - 2020-05-28
### Added
- convert source to strict typescript, listed under the `types` field in `package.json`
2020-08-02 02:58:48 +00:00
- support "dual-package" ESM + CJS via [conditional exports ](https://nodejs.org/docs/latest-v14.x/api/esm.html#esm_conditional_exports ) & `rollup` -generated bundles
- `SMTPClient#creatMessageStack` API [#229 ](https://github.com/eleith/emailjs/issues/229 )
2020-07-27 18:37:25 +00:00
- `SMTPError` API
### Changed
2020-08-02 02:58:48 +00:00
- simplify public API [#249 ](https://github.com/eleith/emailjs/issues/249 )
- rename `Client` -> `SMTPClient` [#249 ](https://github.com/eleith/emailjs/issues/249 )
- rename `SMTPResponse` -> `SMTPResponseMonitor` [#249 ](https://github.com/eleith/emailjs/issues/249 )
2020-07-27 18:37:25 +00:00
### Removed
- `Message#attach_alternative` API
- `makeSMTPError` API
### Fixed
2020-08-02 02:58:48 +00:00
- filter duplicate message recipients [#242 ](https://github.com/eleith/emailjs/issues/242 )
- error when passing `password` without `user` [#199 ](https://github.com/eleith/emailjs/issues/199 )
- trim `host` before connecting [#136 ](https://github.com/eleith/emailjs/issues/136 )
2020-07-27 18:37:25 +00:00
## [2.2.0] - 2018-07-06
### Added
- expose rfc2822 date module
- annotate code with typescript-compatible jsdoc tags
### Changed
- drop dependency on `moment`
- drop dependency on `starttls`
### Fixed
2020-08-02 02:58:48 +00:00
- ensure timeout is set to default value [#225 ](https://github.com/eleith/emailjs/issues/225 )
2020-07-27 18:37:25 +00:00
## [2.1.0] - 2018-06-09
### Added
- expose error module
### Changed
- handle errors with `fs.closeSync` instead of `fs.close`
- refactor to ES2015+ constructs
- lint & format with eslint + prettier
- drop optional dependency on `bufferjs`
### Fixed
- remove `new Buffer` calls
2018-02-11 20:21:21 +00:00
## [2.0.1] - 2018-02-11
### Added
- a new changelog