truemail 2.2.2 → 2.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.codeclimate.yml +1 -1
- data/.reek.yml +8 -0
- data/.rubocop.yml +42 -0
- data/CHANGELOG.md +68 -0
- data/Gemfile.lock +55 -42
- data/LICENSE.txt +1 -1
- data/README.md +49 -20
- data/bin/console +3 -10
- data/{.circleci/config.yml → circle.yml} +26 -3
- data/lib/truemail.rb +1 -1
- data/lib/truemail/audit/base.rb +0 -1
- data/lib/truemail/audit/dns.rb +1 -1
- data/lib/truemail/audit/ip.rb +1 -1
- data/lib/truemail/audit/ptr.rb +4 -3
- data/lib/truemail/auditor.rb +1 -1
- data/lib/truemail/configuration.rb +38 -30
- data/lib/truemail/core.rb +11 -15
- data/lib/truemail/dns/punycode_representer.rb +16 -0
- data/lib/truemail/dns/resolver.rb +17 -0
- data/lib/truemail/dns/worker.rb +52 -0
- data/lib/truemail/log/serializer/auditor_json.rb +1 -1
- data/lib/truemail/log/serializer/base.rb +2 -1
- data/lib/truemail/log/serializer/validator_base.rb +1 -1
- data/lib/truemail/log/serializer/validator_text.rb +2 -2
- data/lib/truemail/logger.rb +1 -1
- data/lib/truemail/validate/mx.rb +7 -9
- data/lib/truemail/validate/smtp/request.rb +11 -7
- data/lib/truemail/validate/smtp/response.rb +1 -1
- data/lib/truemail/validator.rb +2 -2
- data/lib/truemail/version.rb +1 -1
- data/lib/truemail/wrapper.rb +3 -3
- data/truemail.gemspec +11 -9
- metadata +69 -26
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9278c398836ba8731183142427f3fa0728e21d7661a08393c75a64ca33ceb88b
|
4
|
+
data.tar.gz: 194d45d32a45e82bcb5443be004a0c13c9e1faafc576d3dc859d475171c1265c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 15b3683a39653524897a7a291b9363dffe1c5b225db275c1739272139c0ede302da3b02bea4ce88b6612907ba25bf4b003c8bceca945ea0df06ba7a79f681f85
|
7
|
+
data.tar.gz: 52758d413fa43e9e0aab0f3d1cad1a53f552cfaa5768813719bd868e0d46322357064a8a433446977fc52a2323936e38c3f646f2901e8cf87c253695c968c08a
|
data/.codeclimate.yml
CHANGED
data/.reek.yml
CHANGED
@@ -13,6 +13,7 @@ detectors:
|
|
13
13
|
- Truemail::Validate::Smtp#run
|
14
14
|
- Truemail::Validate::Mx#hosts_from_cname_records
|
15
15
|
- Truemail::Configuration#logger=
|
16
|
+
- Truemail::Validate::Smtp::Request#initialize
|
16
17
|
|
17
18
|
TooManyInstanceVariables:
|
18
19
|
exclude:
|
@@ -43,6 +44,8 @@ detectors:
|
|
43
44
|
- Truemail::Configuration#logger_options
|
44
45
|
- Truemail::Log::Serializer::Base#errors
|
45
46
|
- Truemail::Log::Serializer::ValidatorBase#replace_invalid_chars
|
47
|
+
- Truemail::Dns::Worker#nameserver_port
|
48
|
+
- Truemail::Configuration#check_dns_settings
|
46
49
|
|
47
50
|
ControlParameter:
|
48
51
|
exclude:
|
@@ -72,5 +75,10 @@ detectors:
|
|
72
75
|
exclude:
|
73
76
|
- Truemail::Configuration#logger=
|
74
77
|
|
78
|
+
TooManyConstants:
|
79
|
+
exclude:
|
80
|
+
- Truemail::Configuration
|
81
|
+
- Truemail::RegexConstant
|
82
|
+
|
75
83
|
exclude_paths:
|
76
84
|
- spec/support/helpers
|
data/.rubocop.yml
CHANGED
@@ -142,6 +142,18 @@ Style/RedundantArgument:
|
|
142
142
|
Style/HashExcept:
|
143
143
|
Enabled: true
|
144
144
|
|
145
|
+
Style/EndlessMethod:
|
146
|
+
Enabled: true
|
147
|
+
|
148
|
+
Style/IfWithBooleanLiteralBranches:
|
149
|
+
Enabled: true
|
150
|
+
|
151
|
+
Style/HashConversion:
|
152
|
+
Enabled: true
|
153
|
+
|
154
|
+
Style/StringChars:
|
155
|
+
Enabled: true
|
156
|
+
|
145
157
|
Layout/LineLength:
|
146
158
|
Max: 140
|
147
159
|
|
@@ -275,6 +287,30 @@ Lint/UnexpectedBlockArity:
|
|
275
287
|
Lint/AmbiguousAssignment:
|
276
288
|
Enabled: true
|
277
289
|
|
290
|
+
Lint/DeprecatedConstants:
|
291
|
+
Enabled: true
|
292
|
+
|
293
|
+
Lint/LambdaWithoutLiteralBlock:
|
294
|
+
Enabled: true
|
295
|
+
|
296
|
+
Lint/RedundantDirGlobSort:
|
297
|
+
Enabled: true
|
298
|
+
|
299
|
+
Lint/NumberedParameterAssignment:
|
300
|
+
Enabled: true
|
301
|
+
|
302
|
+
Lint/OrAssignmentToConstant:
|
303
|
+
Enabled: true
|
304
|
+
|
305
|
+
Lint/SymbolConversion:
|
306
|
+
Enabled: true
|
307
|
+
|
308
|
+
Lint/TripleQuotes:
|
309
|
+
Enabled: true
|
310
|
+
|
311
|
+
Gemspec/DateAssignment:
|
312
|
+
Enabled: true
|
313
|
+
|
278
314
|
Performance/AncestorsInclude:
|
279
315
|
Enabled: true
|
280
316
|
|
@@ -314,6 +350,12 @@ Performance/ConstantRegexp:
|
|
314
350
|
Performance/MethodObjectAsBlock:
|
315
351
|
Enabled: true
|
316
352
|
|
353
|
+
Performance/RedundantEqualityComparisonBlock:
|
354
|
+
Enabled: true
|
355
|
+
|
356
|
+
Performance/RedundantSplitRegexpArgument:
|
357
|
+
Enabled: true
|
358
|
+
|
317
359
|
RSpec/ExampleLength:
|
318
360
|
Enabled: false
|
319
361
|
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,74 @@
|
|
2
2
|
|
3
3
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
4
4
|
|
5
|
+
## [2.3.3] - 2021.04.14
|
6
|
+
|
7
|
+
### Changed
|
8
|
+
|
9
|
+
- Updated gem development dependencies
|
10
|
+
- Updated rubocop/codeclimate config
|
11
|
+
- Updated CircleCI config
|
12
|
+
|
13
|
+
## [2.3.2] - 2021.03.08
|
14
|
+
|
15
|
+
### Changed
|
16
|
+
|
17
|
+
- Updated gem development dependencies
|
18
|
+
- Updated rubocop/codeclimate config
|
19
|
+
|
20
|
+
## [2.3.1] - 2021.02.26
|
21
|
+
|
22
|
+
### Changed
|
23
|
+
|
24
|
+
- Updated gem development dependencies
|
25
|
+
- Updated rubocop/codeclimate config
|
26
|
+
- Updated tests
|
27
|
+
|
28
|
+
## [2.3.0] - 2021.02.05
|
29
|
+
|
30
|
+
### Added
|
31
|
+
|
32
|
+
- Ability to use custom DNS gateway. Thanks [@le0pard](https://github.com/le0pard) for the great idea and [@verdi8](https://github.com/verdi8) for feature [request](https://github.com/truemail-rb/truemail/issues/126).
|
33
|
+
|
34
|
+
```ruby
|
35
|
+
Truemail.configure do |config|
|
36
|
+
# Optional parameter. This option will provide to use custom DNS gateway when Truemail
|
37
|
+
# interacts with DNS. If you won't specify nameserver's ports Truemail will use default
|
38
|
+
# DNS TCP/UDP port 53. By default Truemail uses DNS gateway from system settings
|
39
|
+
# and this option is equal to empty array.
|
40
|
+
config.dns = ['10.0.0.1', '10.0.0.2:5300']
|
41
|
+
end
|
42
|
+
```
|
43
|
+
|
44
|
+
- Added `Truemail::Dns::Resolver`
|
45
|
+
- Added `Truemail::Dns::Worker`
|
46
|
+
|
47
|
+
### Changed
|
48
|
+
|
49
|
+
- Updated `Truemail::Configuration`, tests
|
50
|
+
- Updated `Truemail::Validate::Mx`, tests
|
51
|
+
- Updated `Truemail::Audit::Base`
|
52
|
+
- Updated `Truemail::Audit::Dns`, tests
|
53
|
+
- Updated `Truemail::Audit::Ptr`, tests
|
54
|
+
- Updated `Truemail::Log::Serializer::Base`, dependent tests
|
55
|
+
- Updated namespaces for stdlib classes
|
56
|
+
- Updated gem development dependencies
|
57
|
+
- Updated linters/codeclimate configs
|
58
|
+
- Updated gem runtime/development dependencies
|
59
|
+
- Updated gem documentation, changelog, version
|
60
|
+
|
61
|
+
## [2.2.3] - 2021.01.12
|
62
|
+
|
63
|
+
### Fixed
|
64
|
+
|
65
|
+
Removed needless `Timeout.timeout` block in `Truemail::Validate::Smtp::Request#check_port`, replaced `TCPSocket` to `Socket` with native timeout detection. Thanks to [@wikiti](https://github.com/wikiti) for idea, testing on production and clean PR [#127](https://github.com/truemail-rb/truemail/pull/127).
|
66
|
+
|
67
|
+
### Changed
|
68
|
+
|
69
|
+
- Updated `Truemail::Validate::Smtp::Request`
|
70
|
+
- Updated gem development dependencies
|
71
|
+
- Updated rubocop, reek configs
|
72
|
+
|
5
73
|
## [2.2.2] - 2020.12.30
|
6
74
|
|
7
75
|
### Changed
|
data/Gemfile.lock
CHANGED
@@ -1,42 +1,48 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
truemail (2.
|
5
|
-
simpleidn (~> 0.
|
4
|
+
truemail (2.3.3)
|
5
|
+
simpleidn (~> 0.2.1)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
|
-
|
11
|
-
|
10
|
+
addressable (2.7.0)
|
11
|
+
public_suffix (>= 2.0.2, < 5.0)
|
12
|
+
ast (2.4.2)
|
13
|
+
bundler-audit (0.8.0)
|
12
14
|
bundler (>= 1.2.0, < 3)
|
13
|
-
thor (
|
15
|
+
thor (~> 1.0)
|
14
16
|
byebug (11.1.3)
|
15
17
|
childprocess (4.0.0)
|
16
18
|
coderay (1.1.3)
|
17
19
|
colorize (0.8.1)
|
18
|
-
concurrent-ruby (1.1.
|
20
|
+
concurrent-ruby (1.1.8)
|
21
|
+
crack (0.4.5)
|
22
|
+
rexml
|
19
23
|
diff-lcs (1.4.4)
|
20
|
-
|
21
|
-
|
24
|
+
dns_mock (1.2.1)
|
25
|
+
docile (1.3.5)
|
26
|
+
faker (2.17.0)
|
22
27
|
i18n (>= 1.6, < 2)
|
23
|
-
fasterer (0.
|
28
|
+
fasterer (0.9.0)
|
24
29
|
colorize (~> 0.7)
|
25
30
|
ruby_parser (>= 3.14.1)
|
26
|
-
|
31
|
+
hashdiff (1.0.1)
|
32
|
+
i18n (1.8.10)
|
27
33
|
concurrent-ruby (~> 1.0)
|
28
34
|
iniparse (1.5.0)
|
29
35
|
json (2.5.1)
|
30
36
|
json_matchers (0.11.1)
|
31
37
|
json_schema
|
32
|
-
json_schema (0.
|
38
|
+
json_schema (0.21.0)
|
33
39
|
kwalify (0.7.2)
|
34
40
|
method_source (1.0.0)
|
35
41
|
overcommit (0.57.0)
|
36
42
|
childprocess (>= 0.6.3, < 5)
|
37
43
|
iniparse (~> 1.4)
|
38
44
|
parallel (1.20.1)
|
39
|
-
parser (
|
45
|
+
parser (3.0.1.0)
|
40
46
|
ast (~> 2.4.1)
|
41
47
|
pry (0.13.1)
|
42
48
|
coderay (~> 1.1)
|
@@ -44,16 +50,17 @@ GEM
|
|
44
50
|
pry-byebug (3.9.0)
|
45
51
|
byebug (~> 11.0)
|
46
52
|
pry (~> 0.13.0)
|
47
|
-
psych (3.3.
|
53
|
+
psych (3.3.1)
|
54
|
+
public_suffix (4.0.6)
|
48
55
|
rainbow (3.0.0)
|
49
56
|
rake (13.0.3)
|
50
|
-
reek (6.0.
|
57
|
+
reek (6.0.3)
|
51
58
|
kwalify (~> 0.7.0)
|
52
|
-
parser (
|
59
|
+
parser (~> 3.0.0)
|
53
60
|
psych (~> 3.1)
|
54
61
|
rainbow (>= 2.0, < 4.0)
|
55
|
-
regexp_parser (2.
|
56
|
-
rexml (3.2.
|
62
|
+
regexp_parser (2.1.1)
|
63
|
+
rexml (3.2.5)
|
57
64
|
rspec (3.10.0)
|
58
65
|
rspec-core (~> 3.10.0)
|
59
66
|
rspec-expectations (~> 3.10.0)
|
@@ -63,68 +70,74 @@ GEM
|
|
63
70
|
rspec-expectations (3.10.1)
|
64
71
|
diff-lcs (>= 1.2.0, < 2.0)
|
65
72
|
rspec-support (~> 3.10.0)
|
66
|
-
rspec-mocks (3.10.
|
73
|
+
rspec-mocks (3.10.2)
|
67
74
|
diff-lcs (>= 1.2.0, < 2.0)
|
68
75
|
rspec-support (~> 3.10.0)
|
69
|
-
rspec-support (3.10.
|
70
|
-
rubocop (1.
|
76
|
+
rspec-support (3.10.2)
|
77
|
+
rubocop (1.12.1)
|
71
78
|
parallel (~> 1.10)
|
72
|
-
parser (>=
|
79
|
+
parser (>= 3.0.0.0)
|
73
80
|
rainbow (>= 2.2.2, < 4.0)
|
74
81
|
regexp_parser (>= 1.8, < 3.0)
|
75
82
|
rexml
|
76
83
|
rubocop-ast (>= 1.2.0, < 2.0)
|
77
84
|
ruby-progressbar (~> 1.7)
|
78
|
-
unicode-display_width (>= 1.4.0, <
|
79
|
-
rubocop-ast (1.
|
85
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
86
|
+
rubocop-ast (1.4.1)
|
80
87
|
parser (>= 2.7.1.5)
|
81
|
-
rubocop-performance (1.
|
88
|
+
rubocop-performance (1.10.2)
|
82
89
|
rubocop (>= 0.90.0, < 2.0)
|
83
90
|
rubocop-ast (>= 0.4.0)
|
84
|
-
rubocop-rspec (2.
|
91
|
+
rubocop-rspec (2.2.0)
|
85
92
|
rubocop (~> 1.0)
|
86
93
|
rubocop-ast (>= 1.1.0)
|
87
|
-
ruby-progressbar (1.
|
88
|
-
ruby_parser (3.15.
|
94
|
+
ruby-progressbar (1.11.0)
|
95
|
+
ruby_parser (3.15.1)
|
89
96
|
sexp_processor (~> 4.9)
|
90
|
-
sexp_processor (4.15.
|
97
|
+
sexp_processor (4.15.2)
|
91
98
|
simplecov (0.17.1)
|
92
99
|
docile (~> 1.1)
|
93
100
|
json (>= 1.8, < 3)
|
94
101
|
simplecov-html (~> 0.10.0)
|
95
102
|
simplecov-html (0.10.2)
|
96
|
-
simpleidn (0.
|
103
|
+
simpleidn (0.2.1)
|
97
104
|
unf (~> 0.1.4)
|
98
|
-
thor (1.0
|
99
|
-
truemail-rspec (0.
|
100
|
-
faker (~> 2.
|
105
|
+
thor (1.1.0)
|
106
|
+
truemail-rspec (0.4.0)
|
107
|
+
faker (~> 2.16)
|
101
108
|
rspec (~> 3.10)
|
102
|
-
truemail (
|
109
|
+
truemail (>= 2.3)
|
103
110
|
unf (0.1.4)
|
104
111
|
unf_ext
|
105
112
|
unf_ext (0.0.7.7)
|
106
|
-
unicode-display_width (
|
113
|
+
unicode-display_width (2.0.0)
|
114
|
+
webmock (3.12.2)
|
115
|
+
addressable (>= 2.3.6)
|
116
|
+
crack (>= 0.3.2)
|
117
|
+
hashdiff (>= 0.4.0, < 2.0.0)
|
107
118
|
|
108
119
|
PLATFORMS
|
109
120
|
ruby
|
110
121
|
|
111
122
|
DEPENDENCIES
|
112
123
|
bundler (~> 1.16)
|
113
|
-
bundler-audit (~> 0.
|
114
|
-
|
115
|
-
|
124
|
+
bundler-audit (~> 0.8.0)
|
125
|
+
dns_mock (~> 1.2, >= 1.2.1)
|
126
|
+
faker (~> 2.17)
|
127
|
+
fasterer (~> 0.9.0)
|
116
128
|
json_matchers (~> 0.11.1)
|
117
129
|
overcommit (~> 0.57.0)
|
118
130
|
pry-byebug (~> 3.9)
|
119
131
|
rake (~> 13.0, >= 13.0.3)
|
120
|
-
reek (~> 6.0, >= 6.0.
|
132
|
+
reek (~> 6.0, >= 6.0.3)
|
121
133
|
rspec (~> 3.10)
|
122
|
-
rubocop (~> 1.
|
123
|
-
rubocop-performance (~> 1.
|
124
|
-
rubocop-rspec (~> 2.
|
134
|
+
rubocop (~> 1.12, >= 1.12.1)
|
135
|
+
rubocop-performance (~> 1.10, >= 1.10.2)
|
136
|
+
rubocop-rspec (~> 2.2)
|
125
137
|
simplecov (~> 0.17.1)
|
126
138
|
truemail!
|
127
|
-
truemail-rspec (~> 0.
|
139
|
+
truemail-rspec (~> 0.4)
|
140
|
+
webmock (~> 3.12, >= 3.12.2)
|
128
141
|
|
129
142
|
BUNDLED WITH
|
130
143
|
1.16.6
|
data/LICENSE.txt
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
The MIT License (MIT)
|
2
2
|
|
3
|
-
Copyright (c) 2019-
|
3
|
+
Copyright (c) 2019-2021 Vladislav Trotsenko
|
4
4
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
data/README.md
CHANGED
@@ -132,6 +132,7 @@ You can use global gem configuration or custom independent configuration. Availa
|
|
132
132
|
- whitelisted domains
|
133
133
|
- whitelist validation
|
134
134
|
- blacklisted domains
|
135
|
+
- custom DNS gateway(s)
|
135
136
|
- RFC MX lookup flow
|
136
137
|
- SMTP fail fast
|
137
138
|
- SMTP safe check
|
@@ -201,6 +202,12 @@ Truemail.configure do |config|
|
|
201
202
|
# It is equal to empty array by default.
|
202
203
|
config.blacklisted_domains = ['somedomain1.com', 'somedomain2.com']
|
203
204
|
|
205
|
+
# Optional parameter. This option will provide to use custom DNS gateway when Truemail
|
206
|
+
# interacts with DNS. If you won't specify nameserver's ports Truemail will use default
|
207
|
+
# DNS TCP/UDP port 53. By default Truemail uses DNS gateway from system settings
|
208
|
+
# and this option is equal to empty array.
|
209
|
+
config.dns = ['10.0.0.1', '10.0.0.2:54']
|
210
|
+
|
204
211
|
# Optional parameter. This option will provide to use not RFC MX lookup flow.
|
205
212
|
# It means that MX and Null MX records will be cheked on the DNS validation layer only.
|
206
213
|
# By default this option is disabled.
|
@@ -242,6 +249,7 @@ Truemail.configuration
|
|
242
249
|
@whitelisted_domains=[],
|
243
250
|
@whitelist_validation=true,
|
244
251
|
@blacklisted_domains=[],
|
252
|
+
@dns=[],
|
245
253
|
@verifier_domain="somedomain.com",
|
246
254
|
@verifier_email="verifier@example.com",
|
247
255
|
@not_rfc_mx_lookup_flow=true,
|
@@ -272,6 +280,7 @@ Truemail.configuration
|
|
272
280
|
@whitelisted_domains=[],
|
273
281
|
@whitelist_validation=true,
|
274
282
|
@blacklisted_domains=[],
|
283
|
+
@dns=[],
|
275
284
|
@verifier_domain="somedomain.com",
|
276
285
|
@verifier_email="verifier@example.com",
|
277
286
|
@not_rfc_mx_lookup_flow=true,
|
@@ -352,6 +361,7 @@ Truemail.validate('email@white-domain.com')
|
|
352
361
|
smtp_debug=nil>,
|
353
362
|
configuration=#<Truemail::Configuration:0x00005629f801bd28
|
354
363
|
@blacklisted_domains=["black-domain.com", "somedomain.com"],
|
364
|
+
@dns=[],
|
355
365
|
@connection_attempts=2,
|
356
366
|
@connection_timeout=2,
|
357
367
|
@default_validation_type=:smtp,
|
@@ -399,6 +409,7 @@ Truemail.validate('email@white-domain.com', with: :regex)
|
|
399
409
|
configuration=
|
400
410
|
#<Truemail::Configuration:0x0000563f0d2605c8
|
401
411
|
@blacklisted_domains=[],
|
412
|
+
@dns=[],
|
402
413
|
@connection_attempts=2,
|
403
414
|
@connection_timeout=2,
|
404
415
|
@default_validation_type=:smtp,
|
@@ -432,6 +443,7 @@ Truemail.validate('email@domain.com', with: :regex)
|
|
432
443
|
configuration=
|
433
444
|
#<Truemail::Configuration:0x0000563f0cd82ab0
|
434
445
|
@blacklisted_domains=[],
|
446
|
+
@dns=[],
|
435
447
|
@connection_attempts=2,
|
436
448
|
@connection_timeout=2,
|
437
449
|
@default_validation_type=:smtp,
|
@@ -467,6 +479,7 @@ Truemail.validate('email@black-domain.com')
|
|
467
479
|
configuration=
|
468
480
|
#<Truemail::Configuration:0x0000563f0d36f4f0
|
469
481
|
@blacklisted_domains=[],
|
482
|
+
@dns=[],
|
470
483
|
@connection_attempts=2,
|
471
484
|
@connection_timeout=2,
|
472
485
|
@default_validation_type=:smtp,
|
@@ -502,6 +515,7 @@ Truemail.validate('email@somedomain.com')
|
|
502
515
|
configuration=
|
503
516
|
#<Truemail::Configuration:0x0000563f0d3f8fc0
|
504
517
|
@blacklisted_domains=[],
|
518
|
+
@dns=[],
|
505
519
|
@connection_attempts=2,
|
506
520
|
@connection_timeout=2,
|
507
521
|
@default_validation_type=:smtp,
|
@@ -553,6 +567,7 @@ Truemail.validate('email@example.com', with: :regex)
|
|
553
567
|
configuration=
|
554
568
|
#<Truemail::Configuration:0x000055aa56a54d48
|
555
569
|
@blacklisted_domains=[],
|
570
|
+
@dns=[],
|
556
571
|
@connection_attempts=2,
|
557
572
|
@connection_timeout=2,
|
558
573
|
@default_validation_type=:smtp,
|
@@ -596,6 +611,7 @@ Truemail.validate('email@example.com', with: :regex)
|
|
596
611
|
configuration=
|
597
612
|
#<Truemail::Configuration:0x0000560e58d80830
|
598
613
|
@blacklisted_domains=[],
|
614
|
+
@dns=[],
|
599
615
|
@connection_attempts=2,
|
600
616
|
@connection_timeout=2,
|
601
617
|
@default_validation_type=:smtp,
|
@@ -650,6 +666,7 @@ Truemail.validate('email@example.com', with: :mx)
|
|
650
666
|
configuration=
|
651
667
|
#<Truemail::Configuration:0x0000559b6e44af70
|
652
668
|
@blacklisted_domains=[],
|
669
|
+
@dns=[],
|
653
670
|
@connection_attempts=2,
|
654
671
|
@connection_timeout=2,
|
655
672
|
@default_validation_type=:smtp,
|
@@ -695,6 +712,7 @@ Truemail.validate('email@example.com', with: :mx)
|
|
695
712
|
configuration=
|
696
713
|
#<Truemail::Configuration:0x0000559b6e44af70
|
697
714
|
@blacklisted_domains=[],
|
715
|
+
@dns=[],
|
698
716
|
@connection_attempts=2,
|
699
717
|
@connection_timeout=2,
|
700
718
|
@default_validation_type=:smtp,
|
@@ -769,6 +787,7 @@ Truemail.validate('email@example.com')
|
|
769
787
|
configuration=
|
770
788
|
#<Truemail::Configuration:0x00007fdc4504f5c8
|
771
789
|
@blacklisted_domains=[],
|
790
|
+
@dns=[],
|
772
791
|
@connection_attempts=2,
|
773
792
|
@connection_timeout=2,
|
774
793
|
@default_validation_type=:smtp,
|
@@ -812,6 +831,7 @@ Truemail.validate('email@example.com')
|
|
812
831
|
configuration=
|
813
832
|
#<Truemail::Configuration:0x00005615e87b9298
|
814
833
|
@blacklisted_domains=[],
|
834
|
+
@dns=[],
|
815
835
|
@connection_attempts=2,
|
816
836
|
@connection_timeout=2,
|
817
837
|
@default_validation_type=:smtp,
|
@@ -862,6 +882,7 @@ Truemail.validate('email@example.com')
|
|
862
882
|
configuration=
|
863
883
|
#<Truemail::Configuration:0x00005615e87b9298
|
864
884
|
@blacklisted_domains=[],
|
885
|
+
@dns=[],
|
865
886
|
@connection_attempts=2,
|
866
887
|
@connection_timeout=2,
|
867
888
|
@default_validation_type=:smtp,
|
@@ -924,6 +945,7 @@ Truemail.validate('email@example.com')
|
|
924
945
|
configuration=
|
925
946
|
#<Truemail::Configuration:0x00005615e87b9298
|
926
947
|
@blacklisted_domains=[],
|
948
|
+
@dns=[],
|
927
949
|
@connection_attempts=2,
|
928
950
|
@connection_timeout=2,
|
929
951
|
@default_validation_type=:smtp,
|
@@ -971,6 +993,7 @@ Truemail.validate('email@example.com')
|
|
971
993
|
configuration=
|
972
994
|
#<Truemail::Configuration:0x00005615e87b9298
|
973
995
|
@blacklisted_domains=[],
|
996
|
+
@dns=[],
|
974
997
|
@connection_attempts=2,
|
975
998
|
@connection_timeout=2,
|
976
999
|
@default_validation_type=:smtp,
|
@@ -1019,6 +1042,7 @@ Truemail.host_audit
|
|
1019
1042
|
configuration=
|
1020
1043
|
#<Truemail::Configuration:0x00005615e86327a8
|
1021
1044
|
@blacklisted_domains=[],
|
1045
|
+
@dns=[],
|
1022
1046
|
@connection_attempts=2,
|
1023
1047
|
@connection_timeout=2,
|
1024
1048
|
@default_validation_type=:smtp,
|
@@ -1046,6 +1070,7 @@ Truemail.host_audit
|
|
1046
1070
|
configuration=
|
1047
1071
|
#<Truemail::Configuration:0x00005615e86327a8
|
1048
1072
|
@blacklisted_domains=[],
|
1073
|
+
@dns=[],
|
1049
1074
|
@connection_attempts=2,
|
1050
1075
|
@connection_timeout=2,
|
1051
1076
|
@default_validation_type=:smtp,
|
@@ -1097,15 +1122,16 @@ Truemail::Log::Serializer::AuditorJson.call(Truemail.host_audit)
|
|
1097
1122
|
"dns": "A-record of verifier domain not refers to current host ip address", "ptr": "PTR-record does not reference to current verifier domain"
|
1098
1123
|
},
|
1099
1124
|
"configuration": {
|
1100
|
-
"validation_type_by_domain": null,
|
1101
|
-
"whitelist_validation": false,
|
1102
|
-
"whitelisted_domains": null,
|
1103
1125
|
"blacklisted_domains": null,
|
1126
|
+
"dns": null,
|
1127
|
+
"email_pattern": "default gem value",
|
1104
1128
|
"not_rfc_mx_lookup_flow": false,
|
1129
|
+
"smtp_error_body_pattern": "default gem value",
|
1105
1130
|
"smtp_fail_fast": false,
|
1106
1131
|
"smtp_safe_check": false,
|
1107
|
-
"
|
1108
|
-
"
|
1132
|
+
"validation_type_by_domain": null,
|
1133
|
+
"whitelist_validation": false,
|
1134
|
+
"whitelisted_domains": null
|
1109
1135
|
}
|
1110
1136
|
}
|
1111
1137
|
```
|
@@ -1136,15 +1162,16 @@ Truemail::Log::Serializer::ValidatorJson.call(Truemail.validate('nonexistent_ema
|
|
1136
1162
|
}
|
1137
1163
|
],
|
1138
1164
|
"configuration": {
|
1139
|
-
"validation_type_by_domain": null,
|
1140
|
-
"whitelist_validation": false,
|
1141
|
-
"whitelisted_domains": null,
|
1142
1165
|
"blacklisted_domains": null,
|
1166
|
+
"dns": null,
|
1167
|
+
"email_pattern": "default gem value",
|
1143
1168
|
"not_rfc_mx_lookup_flow": false,
|
1169
|
+
"smtp_error_body_pattern": "default gem value",
|
1144
1170
|
"smtp_fail_fast": false,
|
1145
1171
|
"smtp_safe_check": false,
|
1146
|
-
"
|
1147
|
-
"
|
1172
|
+
"validation_type_by_domain": null,
|
1173
|
+
"whitelist_validation": false,
|
1174
|
+
"whitelisted_domains": null
|
1148
1175
|
}
|
1149
1176
|
}
|
1150
1177
|
```
|
@@ -1177,15 +1204,16 @@ Truemail.host_audit.as_json
|
|
1177
1204
|
"dns": "A-record of verifier domain not refers to current host ip address", "ptr": "PTR-record does not reference to current verifier domain"
|
1178
1205
|
},
|
1179
1206
|
"configuration": {
|
1180
|
-
"validation_type_by_domain": null,
|
1181
|
-
"whitelist_validation": false,
|
1182
|
-
"whitelisted_domains": null,
|
1183
1207
|
"blacklisted_domains": null,
|
1208
|
+
"dns": null,
|
1209
|
+
"email_pattern": "default gem value",
|
1184
1210
|
"not_rfc_mx_lookup_flow": false,
|
1211
|
+
"smtp_error_body_pattern": "default gem value",
|
1185
1212
|
"smtp_fail_fast": false,
|
1186
1213
|
"smtp_safe_check": false,
|
1187
|
-
"
|
1188
|
-
"
|
1214
|
+
"validation_type_by_domain": null,
|
1215
|
+
"whitelist_validation": false,
|
1216
|
+
"whitelisted_domains": null
|
1189
1217
|
}
|
1190
1218
|
}
|
1191
1219
|
|
@@ -1213,15 +1241,16 @@ Truemail.validate('nonexistent_email@bestweb.com.ua').as_json
|
|
1213
1241
|
}
|
1214
1242
|
],
|
1215
1243
|
"configuration": {
|
1216
|
-
"validation_type_by_domain": null,
|
1217
|
-
"whitelist_validation": false,
|
1218
|
-
"whitelisted_domains": null,
|
1219
1244
|
"blacklisted_domains": null,
|
1245
|
+
"dns": null,
|
1246
|
+
"email_pattern": "default gem value",
|
1220
1247
|
"not_rfc_mx_lookup_flow": false,
|
1248
|
+
"smtp_error_body_pattern": "default gem value",
|
1221
1249
|
"smtp_fail_fast": false,
|
1222
1250
|
"smtp_safe_check": false,
|
1223
|
-
"
|
1224
|
-
"
|
1251
|
+
"validation_type_by_domain": null,
|
1252
|
+
"whitelist_validation": false,
|
1253
|
+
"whitelisted_domains": null
|
1225
1254
|
}
|
1226
1255
|
}
|
1227
1256
|
```
|