truemail 2.2.1 → 2.3.2
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 +48 -0
- data/CHANGELOG.md +67 -0
- data/Gemfile.lock +56 -43
- data/LICENSE.txt +1 -1
- data/README.md +49 -20
- data/bin/console +3 -10
- 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 +59 -40
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1810c473b2fc5918103193380085cdd3ac47a0fb2d053a1a84686bcff28b55eb
|
4
|
+
data.tar.gz: f2d5a0ac0270bf1e1af6dfd972297db547d8c0c692cc78c13eb93ac2da4fb3b5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 966501578ad1e870b14abe32254ed2f8faecec5093aa095052c61a24ac7b2acab4d2abdf6c804735c404057fe66fbcc333ca83d9b069e0bae5d28aa34849eb7c
|
7
|
+
data.tar.gz: 8c9afb6e1b5f150ce310d29250d5bf8cdfe9300f3bbd794665b11867aa088dcbc0323f099c68a8a9ddefe3955e47c2cca98abe05e80d30163768324e8ef340da
|
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
@@ -139,6 +139,18 @@ Style/SwapValues:
|
|
139
139
|
Style/RedundantArgument:
|
140
140
|
Enabled: true
|
141
141
|
|
142
|
+
Style/HashExcept:
|
143
|
+
Enabled: true
|
144
|
+
|
145
|
+
Style/EndlessMethod:
|
146
|
+
Enabled: true
|
147
|
+
|
148
|
+
Style/IfWithBooleanLiteralBranches:
|
149
|
+
Enabled: true
|
150
|
+
|
151
|
+
Style/HashConversion:
|
152
|
+
Enabled: true
|
153
|
+
|
142
154
|
Layout/LineLength:
|
143
155
|
Max: 140
|
144
156
|
|
@@ -170,6 +182,9 @@ Layout/EmptyLinesAroundAttributeAccessor:
|
|
170
182
|
Layout/BeginEndAlignment:
|
171
183
|
Enabled: true
|
172
184
|
|
185
|
+
Layout/SpaceBeforeBrackets:
|
186
|
+
Enabled: true
|
187
|
+
|
173
188
|
Lint/NonDeterministicRequireOrder:
|
174
189
|
Enabled: false
|
175
190
|
|
@@ -266,6 +281,33 @@ Lint/UnmodifiedReduceAccumulator:
|
|
266
281
|
Lint/UnexpectedBlockArity:
|
267
282
|
Enabled: true
|
268
283
|
|
284
|
+
Lint/AmbiguousAssignment:
|
285
|
+
Enabled: true
|
286
|
+
|
287
|
+
Lint/DeprecatedConstants:
|
288
|
+
Enabled: true
|
289
|
+
|
290
|
+
Lint/LambdaWithoutLiteralBlock:
|
291
|
+
Enabled: true
|
292
|
+
|
293
|
+
Lint/RedundantDirGlobSort:
|
294
|
+
Enabled: true
|
295
|
+
|
296
|
+
Lint/NumberedParameterAssignment:
|
297
|
+
Enabled: true
|
298
|
+
|
299
|
+
Lint/OrAssignmentToConstant:
|
300
|
+
Enabled: true
|
301
|
+
|
302
|
+
Lint/SymbolConversion:
|
303
|
+
Enabled: true
|
304
|
+
|
305
|
+
Lint/TripleQuotes:
|
306
|
+
Enabled: true
|
307
|
+
|
308
|
+
Gemspec/DateAssignment:
|
309
|
+
Enabled: true
|
310
|
+
|
269
311
|
Performance/AncestorsInclude:
|
270
312
|
Enabled: true
|
271
313
|
|
@@ -305,6 +347,12 @@ Performance/ConstantRegexp:
|
|
305
347
|
Performance/MethodObjectAsBlock:
|
306
348
|
Enabled: true
|
307
349
|
|
350
|
+
Performance/RedundantEqualityComparisonBlock:
|
351
|
+
Enabled: true
|
352
|
+
|
353
|
+
Performance/RedundantSplitRegexpArgument:
|
354
|
+
Enabled: true
|
355
|
+
|
308
356
|
RSpec/ExampleLength:
|
309
357
|
Enabled: false
|
310
358
|
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,73 @@
|
|
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.2] - 2020.03.08
|
6
|
+
|
7
|
+
### Changed
|
8
|
+
|
9
|
+
- Updated gem development dependencies
|
10
|
+
- Updated rubocop/codeclimate config
|
11
|
+
|
12
|
+
## [2.3.1] - 2020.02.26
|
13
|
+
|
14
|
+
### Changed
|
15
|
+
|
16
|
+
- Updated gem development dependencies
|
17
|
+
- Updated rubocop/codeclimate config
|
18
|
+
- Updated tests
|
19
|
+
|
20
|
+
## [2.3.0] - 2020.02.05
|
21
|
+
|
22
|
+
### Added
|
23
|
+
|
24
|
+
- 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).
|
25
|
+
|
26
|
+
```ruby
|
27
|
+
Truemail.configure do |config|
|
28
|
+
# Optional parameter. This option will provide to use custom DNS gateway when Truemail
|
29
|
+
# interacts with DNS. If you won't specify nameserver's ports Truemail will use default
|
30
|
+
# DNS TCP/UDP port 53. By default Truemail uses DNS gateway from system settings
|
31
|
+
# and this option is equal to empty array.
|
32
|
+
config.dns = ['10.0.0.1', '10.0.0.2:5300']
|
33
|
+
end
|
34
|
+
```
|
35
|
+
|
36
|
+
- Added `Truemail::Dns::Resolver`
|
37
|
+
- Added `Truemail::Dns::Worker`
|
38
|
+
|
39
|
+
### Changed
|
40
|
+
|
41
|
+
- Updated `Truemail::Configuration`, tests
|
42
|
+
- Updated `Truemail::Validate::Mx`, tests
|
43
|
+
- Updated `Truemail::Audit::Base`
|
44
|
+
- Updated `Truemail::Audit::Dns`, tests
|
45
|
+
- Updated `Truemail::Audit::Ptr`, tests
|
46
|
+
- Updated `Truemail::Log::Serializer::Base`, dependent tests
|
47
|
+
- Updated namespaces for stdlib classes
|
48
|
+
- Updated gem development dependencies
|
49
|
+
- Updated linters/codeclimate configs
|
50
|
+
- Updated gem runtime/development dependencies
|
51
|
+
- Updated gem documentation, changelog, version
|
52
|
+
|
53
|
+
## [2.2.3] - 2020.01.12
|
54
|
+
|
55
|
+
### Fixed
|
56
|
+
|
57
|
+
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).
|
58
|
+
|
59
|
+
### Changed
|
60
|
+
|
61
|
+
- Updated `Truemail::Validate::Smtp::Request`
|
62
|
+
- Updated gem development dependencies
|
63
|
+
- Updated rubocop, reek configs
|
64
|
+
|
65
|
+
## [2.2.2] - 2020.12.30
|
66
|
+
|
67
|
+
### Changed
|
68
|
+
|
69
|
+
- Updated gem development dependencies
|
70
|
+
- Updated rubocop config
|
71
|
+
|
5
72
|
## [2.2.1] - 2020.12.06
|
6
73
|
|
7
74
|
### Fixed
|
data/Gemfile.lock
CHANGED
@@ -1,13 +1,15 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
truemail (2.2
|
5
|
-
simpleidn (~> 0.
|
4
|
+
truemail (2.3.2)
|
5
|
+
simpleidn (~> 0.2.1)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
|
-
|
10
|
+
addressable (2.7.0)
|
11
|
+
public_suffix (>= 2.0.2, < 5.0)
|
12
|
+
ast (2.4.2)
|
11
13
|
bundler-audit (0.7.0.1)
|
12
14
|
bundler (>= 1.2.0, < 3)
|
13
15
|
thor (>= 0.18, < 2)
|
@@ -15,28 +17,32 @@ GEM
|
|
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.0)
|
25
|
+
docile (1.3.5)
|
26
|
+
faker (2.16.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.9)
|
27
33
|
concurrent-ruby (~> 1.0)
|
28
34
|
iniparse (1.5.0)
|
29
|
-
json (2.
|
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.0.0)
|
40
46
|
ast (~> 2.4.1)
|
41
47
|
pry (0.13.1)
|
42
48
|
coderay (~> 1.1)
|
@@ -44,66 +50,71 @@ GEM
|
|
44
50
|
pry-byebug (3.9.0)
|
45
51
|
byebug (~> 11.0)
|
46
52
|
pry (~> 0.13.0)
|
47
|
-
psych (3.
|
53
|
+
psych (3.3.1)
|
54
|
+
public_suffix (4.0.6)
|
48
55
|
rainbow (3.0.0)
|
49
|
-
rake (13.0.
|
50
|
-
reek (6.0.
|
56
|
+
rake (13.0.3)
|
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.
|
62
|
+
regexp_parser (2.1.1)
|
56
63
|
rexml (3.2.4)
|
57
64
|
rspec (3.10.0)
|
58
65
|
rspec-core (~> 3.10.0)
|
59
66
|
rspec-expectations (~> 3.10.0)
|
60
67
|
rspec-mocks (~> 3.10.0)
|
61
|
-
rspec-core (3.10.
|
68
|
+
rspec-core (3.10.1)
|
62
69
|
rspec-support (~> 3.10.0)
|
63
|
-
rspec-expectations (3.10.
|
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.11.0)
|
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.1)
|
82
89
|
rubocop (>= 0.90.0, < 2.0)
|
83
90
|
rubocop-ast (>= 0.4.0)
|
84
|
-
rubocop-rspec (2.0
|
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.1)
|
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
|
@@ -111,20 +122,22 @@ PLATFORMS
|
|
111
122
|
DEPENDENCIES
|
112
123
|
bundler (~> 1.16)
|
113
124
|
bundler-audit (~> 0.7.0.1)
|
114
|
-
|
115
|
-
|
125
|
+
dns_mock (~> 1.2)
|
126
|
+
faker (~> 2.16)
|
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
|
-
rake (~> 13.0, >= 13.0.
|
120
|
-
reek (~> 6.0, >= 6.0.
|
131
|
+
rake (~> 13.0, >= 13.0.3)
|
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.11)
|
135
|
+
rubocop-performance (~> 1.10, >= 1.10.1)
|
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.1)
|
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
|
```
|