All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
0.8.24 (2021-07-03)
- Add
CheckEmailInput
setterset_
prefix to differentiate with accessing fields (#933) (276f656) - Add deprecated warning when running HTTP server (#943) (e4b1570)
0.8.23 (2021-06-20)
0.8.22 (2021-03-31)
This is an empty release just to re-run the CI process for building binaries.
0.8.21 (2021-03-31)
This is an empty release just to re-run the CI process for building binaries.
0.8.20 (2021-03-30)
- This release only bumps versions of dependencies, and does not introduce any bugfix or improvements.
0.8.19 (2021-01-10)
0.8.18 (2021-01-07)
0.8.17 (2021-01-05)
0.8.16 (2020-12-07)
0.8.15 (2020-11-11)
- Don't check inputted email if catch-all (#714) (5129dd1)
- Fix 'reached the type-length limit while instantiating' (#665) (fa040fd)
0.8.14 (2020-09-24)
0.8.13 (2020-08-04)
0.8.12 (2020-08-04)
- Add "recipient address accepted" check (#489) (5d1e72a)
- http request body to use
to_emails
(#502) (36aed56)
0.8.11 (2020-07-11)
- Add "Invalid email address" check (#471) (3b03617)
- Add possibility to use proxy in Yahoo API request (#472) (aafcedf)
0.8.10 (2020-07-04)
0.8.9 (2020-07-04)
0.8.8 (2020-06-28)
- Add debug logs for Yahoo (e534670)
0.8.7 (2020-06-28)
0.8.6 (2020-06-28)
- Add additional error check for undeliverable (#374) (e52a8f0)
- Use HTTP requests to verify Yahoo emails (#412) (5fad57d)
0.8.5 (2020-05-21)
0.8.4 (2020-05-19)
0.8.3 (2020-05-12)
0.8.2 (2020-05-12)
- Add "Unknown user" smtp error check (#347) (47eb578)
- Add more error strings matching (#323) (f5392d4)
0.8.1 (2020-05-09)
0.8.0 (2020-05-08)
- This new version includes an overhaul of the codebase, mainly to prepare the groundwork for the upcoming work on bulk validation. These changes include:
- The main function
email_exists
has been renamed tocheck_email
:
- email_exists(&input).await;
+ check_email(&input).await;
-
The input
EmailInput
has been renamed toCheckEmailInput
. Its::new()
method, instead of taking a singleString
, now takesVec<String>
. -
The output
SingleEmail
has been renamed toCheckEmailOutput
. The main functioncheck_emails
now returns aVec<CheckEmailOutput>
.
pub async fn check_email(inputs: &CheckEmailInput) -> Vec<CheckEmailOutput>
-
The
syntax
field inCheckEmailOutput
is no longer aResult<SyntaxDetails, SyntaxError>
, but onlySyntaxDetails
. Error cases are guaranteed not to happen for syntax validation. -
The
misc
,mx
, andsmtp
fields' signatures stay the same:Result<{Misc,Mx,Smtp}Details, {Misc,Mx,Smtp}Error>
. However, theResult
is anErr
only when an internal error arrives. In case of errors due to user input (e.g. incorrect email inputted), theDefault
trait has been implemented on{Misc,Mx,Smtp}Details
and will be returned. As such, theSkipped
variant of error enums has been removed.
{
"input": "[email protected]",
"mx": {
- "error": { "cannot resolve" }
+ "accepts_mail": false, // This is Default
+ "records": [] // This is Default
}
- The
misc
,mx
,smtp
,syntax
modules have been made private.
- The field
syntax.valid_format
has been renamed tosyntax.is_valid_syntax
.
0.7.1 (2020-04-14)
0.7.0 (2020-03-26)
email_exists
only takes one input now, anEmailInput
which is built using the builder pattern.
- use check_if_email_exists::email_exists;
+ use check_if_email_exists::{email_exists, EmailInput};
- email_exists("[email protected]", "[email protected]");
+ email_exists(
+ EmailInput::new("[email protected]".to_string()).from_email("[email protected]".to_string())
+ )
EmailInput
additionally takes a hello_name()
method, which is used to set the name in the EHLO smtp command.
--from
in CLI has been replaced with --from-email
.
0.6.7 (2020-03-20)
0.6.6 (2020-03-01)
0.6.1 (2020-02-18)
0.6.0 (2019-12-01)
-
- The
is_disposable
subfield has been moved from themx
field to a separatemisc
field
- The
- Add a HTTP server behind the
--http
flag (#85) (d8b733e) - Add Dockerfile &
x86_64-unknown-linux-musl
target (#86) (cba1241)
0.5.0 (2019-11-16)
-
- The main function
email_exists
now returns a Future:
- The main function
pub async fn email_exists(to_email: &str, from_email: &str) -> SingleEmail {}
- The
SmtpError::SmtpError
has been renamed toSmtpError::LettreError
to show the underlying error more correctly (i.e., coming fromlettre
crate). - The
BlockedByISP
error has been removed. Instead, you'll see e.g."connection refused"
, or whatever is returned by the SMTP server:
{
// ...,
"smtp": {
"error": {
"type": "LettreError",
"message": "connection refused"
}
},
}
0.4.0 (2019-09-30)
- the
smtp
's object keys have changed. Instead of
{
"deliverable": ...,
"full_inbox": ...,
"has_catch_all": ...
}
it now returns
{
"has_full_inbox": ...,
"is_deliverable": ...,
"is_disabled": ...,
"is_catch_all": ...
}
where is_disabled
checks if the address has been disabled/blocked by the email provider
0.3.2 (2019-09-26)
0.3.1 (2019-09-26)
0.3.0 (2019-09-26)
- New error JSON format (#56) (fec4315)
- Output JSON information with CLI (#53) (1d026d5)
- Return Result instead of Result, with much more details (#23) (39b13f5)
0.2.3 (2019-05-09)
- Update version to correct version in cli (992777c)
0.2.2 (2019-05-09)
- Fix travis and appveyor to build binaries (f743e67)