truemail 2.4.8 → 2.5.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/.rubocop.yml +33 -0
- data/CHANGELOG.md +39 -1
- data/Gemfile.lock +23 -26
- data/README.md +7 -7
- data/lib/truemail/core.rb +1 -1
- data/lib/truemail/dns/punycode_representer.rb +1 -1
- data/lib/truemail/validate/domain_list_match.rb +2 -1
- data/lib/truemail/validate/mx.rb +6 -5
- data/lib/truemail/validate/smtp.rb +1 -1
- data/lib/truemail/version.rb +1 -1
- data/truemail.gemspec +9 -9
- metadata +24 -18
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d8654d41d2c02eb0fc2e8519425c89e9fb761bcdbc2aee01f9b2043c167ab9a3
|
|
4
|
+
data.tar.gz: 02ae00188163c899b4f18ea9b176025f851b76063ab96844d71f45fbcd538984
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: '070814d64890b1257e731a63c560396589327e93c0e9c69afff84ba392a527684b7397b659a04533ff9fca4388fe0aec598dc38b42be0269bec35f8193352a02'
|
|
7
|
+
data.tar.gz: 90159401dbcee96037cb14173e8feda4cd9c998162d10b18ef701b4102d1252532968d2a75d66eb8b097bd8db4d91ae4fefd2b40d48cce9c82f99470c9cad241
|
data/.codeclimate.yml
CHANGED
data/.rubocop.yml
CHANGED
|
@@ -166,6 +166,18 @@ Style/MultilineInPatternThen:
|
|
|
166
166
|
Style/QuotedSymbols:
|
|
167
167
|
Enabled: true
|
|
168
168
|
|
|
169
|
+
Style/RedundantSelfAssignmentBranch:
|
|
170
|
+
Enabled: true
|
|
171
|
+
|
|
172
|
+
Style/NumberedParameters:
|
|
173
|
+
Enabled: true
|
|
174
|
+
|
|
175
|
+
Style/NumberedParametersLimit:
|
|
176
|
+
Enabled: true
|
|
177
|
+
|
|
178
|
+
Style/SelectByRegexp:
|
|
179
|
+
Enabled: true
|
|
180
|
+
|
|
169
181
|
Layout/LineLength:
|
|
170
182
|
Max: 140
|
|
171
183
|
|
|
@@ -326,9 +338,24 @@ Lint/TripleQuotes:
|
|
|
326
338
|
Lint/EmptyInPattern:
|
|
327
339
|
Enabled: true
|
|
328
340
|
|
|
341
|
+
Lint/AmbiguousRange:
|
|
342
|
+
Enabled: true
|
|
343
|
+
|
|
344
|
+
Lint/AmbiguousOperatorPrecedence:
|
|
345
|
+
Enabled: true
|
|
346
|
+
|
|
347
|
+
Lint/IncompatibleIoSelectWithFiberScheduler:
|
|
348
|
+
Enabled: true
|
|
349
|
+
|
|
350
|
+
Lint/RequireRelativeSelfPath:
|
|
351
|
+
Enabled: true
|
|
352
|
+
|
|
329
353
|
Gemspec/DateAssignment:
|
|
330
354
|
Enabled: true
|
|
331
355
|
|
|
356
|
+
Security/IoMethods:
|
|
357
|
+
Enabled: true
|
|
358
|
+
|
|
332
359
|
Performance/AncestorsInclude:
|
|
333
360
|
Enabled: true
|
|
334
361
|
|
|
@@ -412,3 +439,9 @@ RSpec/IdenticalEqualityAssertion:
|
|
|
412
439
|
|
|
413
440
|
RSpec/Rails/AvoidSetupHook:
|
|
414
441
|
Enabled: true
|
|
442
|
+
|
|
443
|
+
RSpec/ExcessiveDocstringSpacing:
|
|
444
|
+
Enabled: true
|
|
445
|
+
|
|
446
|
+
RSpec/SubjectDeclaration:
|
|
447
|
+
Enabled: true
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,44 @@
|
|
|
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.5.2] - 2021.10.06
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- `Truemail::RegexConstant::REGEX_EMAIL_PATTERN` behaviour with double `@` in email. Thanks [@your-favorite-dev](https://github.com/your-favorite-dev) for bug report.
|
|
10
|
+
|
|
11
|
+
### Updated
|
|
12
|
+
|
|
13
|
+
- Updated tests
|
|
14
|
+
- Updated gem development dependencies
|
|
15
|
+
- Updated gem version
|
|
16
|
+
|
|
17
|
+
## [2.5.1] - 2021.10.01
|
|
18
|
+
|
|
19
|
+
### Updated
|
|
20
|
+
|
|
21
|
+
- Updated gem development dependencies
|
|
22
|
+
- Updated gem version
|
|
23
|
+
|
|
24
|
+
## [2.5.0] - 2021.09.01
|
|
25
|
+
|
|
26
|
+
### Updated
|
|
27
|
+
|
|
28
|
+
Optimized DNS (MX) validation flow. Removed needless DNS request for case when custom email pattern was defined and email for validation includes invalid domain name.
|
|
29
|
+
|
|
30
|
+
- Updated `Truemail::Validate::Mx#run`, tests
|
|
31
|
+
- Updated gem development dependencies
|
|
32
|
+
- Updated gem documentation, version
|
|
33
|
+
|
|
34
|
+
## [2.4.9] - 2021.08.20
|
|
35
|
+
|
|
36
|
+
### Updated
|
|
37
|
+
|
|
38
|
+
- Updated `Truemail::Validate::DomainListMatch#email_domain`, tests
|
|
39
|
+
- Updated `Truemail::Validate::Mx#domain`, tests
|
|
40
|
+
- Updated gem development dependencies
|
|
41
|
+
- Updated gem version
|
|
42
|
+
|
|
5
43
|
## [2.4.8] - 2021.08.12
|
|
6
44
|
|
|
7
45
|
### Updated
|
|
@@ -18,7 +56,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
18
56
|
### Updated
|
|
19
57
|
|
|
20
58
|
- Updated gem codebase, refactored `Truemail::ContextHelper`
|
|
21
|
-
- Updated tests
|
|
59
|
+
- Updated tests with `Truemail::DnsHelper#dns_mock_gateway`
|
|
22
60
|
- Updated gem development dependencies
|
|
23
61
|
- Updated gem version
|
|
24
62
|
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
truemail (2.
|
|
4
|
+
truemail (2.5.2)
|
|
5
5
|
simpleidn (~> 0.2.1)
|
|
6
6
|
|
|
7
7
|
GEM
|
|
@@ -10,7 +10,7 @@ GEM
|
|
|
10
10
|
addressable (2.8.0)
|
|
11
11
|
public_suffix (>= 2.0.2, < 5.0)
|
|
12
12
|
ast (2.4.2)
|
|
13
|
-
bundler-audit (0.
|
|
13
|
+
bundler-audit (0.9.0.1)
|
|
14
14
|
bundler (>= 1.2.0, < 3)
|
|
15
15
|
thor (~> 1.0)
|
|
16
16
|
byebug (11.1.3)
|
|
@@ -20,13 +20,13 @@ GEM
|
|
|
20
20
|
crack (0.4.5)
|
|
21
21
|
rexml
|
|
22
22
|
diff-lcs (1.4.4)
|
|
23
|
-
dns_mock (1.4.
|
|
23
|
+
dns_mock (1.4.2)
|
|
24
24
|
simpleidn (~> 0.2.1)
|
|
25
25
|
docile (1.4.0)
|
|
26
26
|
fasterer (0.9.0)
|
|
27
27
|
colorize (~> 0.7)
|
|
28
28
|
ruby_parser (>= 3.14.1)
|
|
29
|
-
ffaker (2.
|
|
29
|
+
ffaker (2.20.0)
|
|
30
30
|
hashdiff (1.0.1)
|
|
31
31
|
iniparse (1.5.0)
|
|
32
32
|
json (2.5.1)
|
|
@@ -39,7 +39,7 @@ GEM
|
|
|
39
39
|
childprocess (>= 0.6.3, < 5)
|
|
40
40
|
iniparse (~> 1.4)
|
|
41
41
|
rexml (~> 3.2)
|
|
42
|
-
parallel (1.
|
|
42
|
+
parallel (1.21.0)
|
|
43
43
|
parser (3.0.2.0)
|
|
44
44
|
ast (~> 2.4.1)
|
|
45
45
|
pry (0.13.1)
|
|
@@ -48,14 +48,12 @@ GEM
|
|
|
48
48
|
pry-byebug (3.9.0)
|
|
49
49
|
byebug (~> 11.0)
|
|
50
50
|
pry (~> 0.13.0)
|
|
51
|
-
psych (4.0.1)
|
|
52
51
|
public_suffix (4.0.6)
|
|
53
52
|
rainbow (3.0.0)
|
|
54
53
|
rake (13.0.6)
|
|
55
|
-
reek (6.0.
|
|
54
|
+
reek (6.0.6)
|
|
56
55
|
kwalify (~> 0.7.0)
|
|
57
56
|
parser (~> 3.0.0)
|
|
58
|
-
psych (>= 3.1, < 5.0)
|
|
59
57
|
rainbow (>= 2.0, < 4.0)
|
|
60
58
|
regexp_parser (2.1.1)
|
|
61
59
|
rexml (3.2.5)
|
|
@@ -72,23 +70,22 @@ GEM
|
|
|
72
70
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
73
71
|
rspec-support (~> 3.10.0)
|
|
74
72
|
rspec-support (3.10.2)
|
|
75
|
-
rubocop (1.
|
|
73
|
+
rubocop (1.22.1)
|
|
76
74
|
parallel (~> 1.10)
|
|
77
75
|
parser (>= 3.0.0.0)
|
|
78
76
|
rainbow (>= 2.2.2, < 4.0)
|
|
79
77
|
regexp_parser (>= 1.8, < 3.0)
|
|
80
78
|
rexml
|
|
81
|
-
rubocop-ast (>= 1.
|
|
79
|
+
rubocop-ast (>= 1.12.0, < 2.0)
|
|
82
80
|
ruby-progressbar (~> 1.7)
|
|
83
81
|
unicode-display_width (>= 1.4.0, < 3.0)
|
|
84
|
-
rubocop-ast (1.
|
|
82
|
+
rubocop-ast (1.12.0)
|
|
85
83
|
parser (>= 3.0.1.1)
|
|
86
|
-
rubocop-performance (1.11.
|
|
84
|
+
rubocop-performance (1.11.5)
|
|
87
85
|
rubocop (>= 1.7.0, < 2.0)
|
|
88
86
|
rubocop-ast (>= 0.4.0)
|
|
89
|
-
rubocop-rspec (2.
|
|
90
|
-
rubocop (~> 1.
|
|
91
|
-
rubocop-ast (>= 1.1.0)
|
|
87
|
+
rubocop-rspec (2.5.0)
|
|
88
|
+
rubocop (~> 1.19)
|
|
92
89
|
ruby-progressbar (1.11.0)
|
|
93
90
|
ruby_parser (3.17.0)
|
|
94
91
|
sexp_processor (~> 4.15, >= 4.15.1)
|
|
@@ -107,8 +104,8 @@ GEM
|
|
|
107
104
|
truemail (>= 2.4)
|
|
108
105
|
unf (0.1.4)
|
|
109
106
|
unf_ext
|
|
110
|
-
unf_ext (0.0.
|
|
111
|
-
unicode-display_width (2.
|
|
107
|
+
unf_ext (0.0.8)
|
|
108
|
+
unicode-display_width (2.1.0)
|
|
112
109
|
webmock (3.14.0)
|
|
113
110
|
addressable (>= 2.8.0)
|
|
114
111
|
crack (>= 0.3.2)
|
|
@@ -118,24 +115,24 @@ PLATFORMS
|
|
|
118
115
|
x86_64-darwin-20
|
|
119
116
|
|
|
120
117
|
DEPENDENCIES
|
|
121
|
-
bundler (~> 2.2, >= 2.2.
|
|
122
|
-
bundler-audit (~> 0.
|
|
123
|
-
dns_mock (~> 1.4)
|
|
118
|
+
bundler (~> 2.2, >= 2.2.28)
|
|
119
|
+
bundler-audit (~> 0.9.0.1)
|
|
120
|
+
dns_mock (~> 1.4, >= 1.4.2)
|
|
124
121
|
fasterer (~> 0.9.0)
|
|
125
|
-
ffaker (~> 2.
|
|
122
|
+
ffaker (~> 2.20)
|
|
126
123
|
json_matchers (~> 0.11.1)
|
|
127
124
|
overcommit (~> 0.58.0)
|
|
128
125
|
pry-byebug (~> 3.9)
|
|
129
126
|
rake (~> 13.0, >= 13.0.6)
|
|
130
|
-
reek (~> 6.0, >= 6.0.
|
|
127
|
+
reek (~> 6.0, >= 6.0.6)
|
|
131
128
|
rspec (~> 3.10)
|
|
132
|
-
rubocop (~> 1.
|
|
133
|
-
rubocop-performance (~> 1.11, >= 1.11.
|
|
134
|
-
rubocop-rspec (~> 2.
|
|
129
|
+
rubocop (~> 1.22, >= 1.22.1)
|
|
130
|
+
rubocop-performance (~> 1.11, >= 1.11.5)
|
|
131
|
+
rubocop-rspec (~> 2.5)
|
|
135
132
|
simplecov (~> 0.17.1)
|
|
136
133
|
truemail!
|
|
137
134
|
truemail-rspec (~> 0.7.0)
|
|
138
135
|
webmock (~> 3.14)
|
|
139
136
|
|
|
140
137
|
BUNDLED WITH
|
|
141
|
-
2.2.
|
|
138
|
+
2.2.28
|
data/README.md
CHANGED
|
@@ -368,7 +368,7 @@ Truemail.validate('email@white-domain.com')
|
|
|
368
368
|
@result=#<struct Truemail::Validator::Result
|
|
369
369
|
success=true,
|
|
370
370
|
email="email@white-domain.com",
|
|
371
|
-
domain=
|
|
371
|
+
domain="white-domain.com",
|
|
372
372
|
mail_servers=[],
|
|
373
373
|
errors={},
|
|
374
374
|
smtp_debug=nil>,
|
|
@@ -416,7 +416,7 @@ Truemail.validate('email@white-domain.com', with: :regex)
|
|
|
416
416
|
@result=#<struct Truemail::Validator::Result
|
|
417
417
|
success=true,
|
|
418
418
|
email="email@white-domain.com",
|
|
419
|
-
domain=
|
|
419
|
+
domain="white-domain.com",
|
|
420
420
|
mail_servers=[],
|
|
421
421
|
errors={},
|
|
422
422
|
smtp_debug=nil>,
|
|
@@ -451,7 +451,7 @@ Truemail.validate('email@domain.com', with: :regex)
|
|
|
451
451
|
@result=#<struct Truemail::Validator::Result
|
|
452
452
|
success=false,
|
|
453
453
|
email="email@domain.com",
|
|
454
|
-
domain=
|
|
454
|
+
domain="domain.com",
|
|
455
455
|
mail_servers=[],
|
|
456
456
|
errors={},
|
|
457
457
|
smtp_debug=nil>,
|
|
@@ -488,7 +488,7 @@ Truemail.validate('email@black-domain.com')
|
|
|
488
488
|
@result=#<struct Truemail::Validator::Result
|
|
489
489
|
success=false,
|
|
490
490
|
email="email@black-domain.com",
|
|
491
|
-
domain=
|
|
491
|
+
domain="black-domain.com",
|
|
492
492
|
mail_servers=[],
|
|
493
493
|
errors={},
|
|
494
494
|
smtp_debug=nil>,
|
|
@@ -525,7 +525,7 @@ Truemail.validate('email@somedomain.com')
|
|
|
525
525
|
@result=#<struct Truemail::Validator::Result
|
|
526
526
|
success=true,
|
|
527
527
|
email="email@somedomain.com",
|
|
528
|
-
domain=
|
|
528
|
+
domain="somedomain.com",
|
|
529
529
|
mail_servers=[],
|
|
530
530
|
errors={},
|
|
531
531
|
smtp_debug=nil>,
|
|
@@ -579,7 +579,7 @@ Truemail.validate('email@example.com', with: :regex)
|
|
|
579
579
|
#<struct Truemail::Validator::Result
|
|
580
580
|
success=true,
|
|
581
581
|
email="email@example.com",
|
|
582
|
-
domain=
|
|
582
|
+
domain="example.com",
|
|
583
583
|
mail_servers=[],
|
|
584
584
|
errors={},
|
|
585
585
|
smtp_debug=nil>,
|
|
@@ -624,7 +624,7 @@ Truemail.validate('email@example.com', with: :regex)
|
|
|
624
624
|
#<struct Truemail::Validator::Result
|
|
625
625
|
success=true,
|
|
626
626
|
email="email@example.com",
|
|
627
|
-
domain=
|
|
627
|
+
domain="example.com",
|
|
628
628
|
mail_servers=[],
|
|
629
629
|
errors={},
|
|
630
630
|
smtp_debug=nil>,
|
data/lib/truemail/core.rb
CHANGED
|
@@ -20,7 +20,7 @@ module Truemail
|
|
|
20
20
|
|
|
21
21
|
module RegexConstant
|
|
22
22
|
REGEX_DOMAIN = /[\p{L}0-9]+([\-.]{1}[\p{L}0-9]+)*\.\p{L}{2,63}/i.freeze
|
|
23
|
-
REGEX_EMAIL_PATTERN =
|
|
23
|
+
REGEX_EMAIL_PATTERN = %r{(?=\A.{6,255}\z)(\A([\p{L}0-9]+[\w\p{L}.+!~,'&%#*^`{}|\-/?=$]*)@(#{REGEX_DOMAIN})\z)}.freeze
|
|
24
24
|
REGEX_DOMAIN_PATTERN = /(?=\A.{4,255}\z)(\A#{REGEX_DOMAIN}\z)/.freeze
|
|
25
25
|
REGEX_DOMAIN_FROM_EMAIL = /\A.+@(.+)\z/.freeze
|
|
26
26
|
REGEX_SMTP_ERROR_BODY_PATTERN = /(?=.*550)(?=.*(user|account|customer|mailbox)).*/i.freeze
|
|
@@ -15,7 +15,8 @@ module Truemail
|
|
|
15
15
|
private
|
|
16
16
|
|
|
17
17
|
def email_domain
|
|
18
|
-
@email_domain ||=
|
|
18
|
+
@email_domain ||=
|
|
19
|
+
result.domain = result.email[Truemail::RegexConstant::REGEX_DOMAIN_FROM_EMAIL, 1]
|
|
19
20
|
end
|
|
20
21
|
|
|
21
22
|
def whitelisted_domain?
|
data/lib/truemail/validate/mx.rb
CHANGED
|
@@ -8,13 +8,17 @@ module Truemail
|
|
|
8
8
|
|
|
9
9
|
def run
|
|
10
10
|
return false unless Truemail::Validate::Regex.check(result)
|
|
11
|
-
return true if success(mx_lookup && domain_not_include_null_mx)
|
|
11
|
+
return true if success(email_domain_valid? && mx_lookup && domain_not_include_null_mx)
|
|
12
12
|
mail_servers.clear && add_error(Truemail::Validate::Mx::ERROR)
|
|
13
13
|
false
|
|
14
14
|
end
|
|
15
15
|
|
|
16
16
|
private
|
|
17
17
|
|
|
18
|
+
def email_domain_valid?
|
|
19
|
+
Truemail::RegexConstant::REGEX_DOMAIN_PATTERN.match?(result.domain)
|
|
20
|
+
end
|
|
21
|
+
|
|
18
22
|
def host_extractor_methods
|
|
19
23
|
return %i[hosts_from_mx_records?] if configuration.not_rfc_mx_lookup_flow
|
|
20
24
|
%i[hosts_from_mx_records? hosts_from_cname_records? host_from_a_record?]
|
|
@@ -52,10 +56,7 @@ module Truemail
|
|
|
52
56
|
end
|
|
53
57
|
|
|
54
58
|
def domain
|
|
55
|
-
@domain ||=
|
|
56
|
-
result.domain = result.email[Truemail::RegexConstant::REGEX_DOMAIN_FROM_EMAIL, 1]
|
|
57
|
-
result.punycode_email[Truemail::RegexConstant::REGEX_DOMAIN_FROM_EMAIL, 1]
|
|
58
|
-
end
|
|
59
|
+
@domain ||= result.punycode_email[Truemail::RegexConstant::REGEX_DOMAIN_FROM_EMAIL, 1]
|
|
59
60
|
end
|
|
60
61
|
|
|
61
62
|
def hosts_from_mx_records?
|
|
@@ -35,7 +35,7 @@ module Truemail
|
|
|
35
35
|
def attempts
|
|
36
36
|
@attempts ||= begin
|
|
37
37
|
return {} if fail_fast? || !mail_servers.one?
|
|
38
|
-
{ attempts: configuration.connection_attempts }
|
|
38
|
+
{ attempts: configuration.connection_attempts } # attempts should used for case with one mail server only
|
|
39
39
|
end
|
|
40
40
|
end
|
|
41
41
|
|
data/lib/truemail/version.rb
CHANGED
data/truemail.gemspec
CHANGED
|
@@ -28,25 +28,25 @@ Gem::Specification.new do |spec|
|
|
|
28
28
|
|
|
29
29
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
|
30
30
|
spec.bindir = 'exe'
|
|
31
|
-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
31
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| ::File.basename(f) }
|
|
32
32
|
spec.require_paths = ['lib']
|
|
33
33
|
|
|
34
34
|
spec.add_runtime_dependency 'simpleidn', '~> 0.2.1'
|
|
35
35
|
|
|
36
|
-
spec.add_development_dependency 'bundler', '~> 2.2', '>= 2.2.
|
|
37
|
-
spec.add_development_dependency 'bundler-audit', '~> 0.
|
|
38
|
-
spec.add_development_dependency 'dns_mock', '~> 1.4'
|
|
36
|
+
spec.add_development_dependency 'bundler', '~> 2.2', '>= 2.2.28'
|
|
37
|
+
spec.add_development_dependency 'bundler-audit', '~> 0.9.0.1'
|
|
38
|
+
spec.add_development_dependency 'dns_mock', '~> 1.4', '>= 1.4.2'
|
|
39
39
|
spec.add_development_dependency 'fasterer', '~> 0.9.0'
|
|
40
|
-
spec.add_development_dependency 'ffaker', '~> 2.
|
|
40
|
+
spec.add_development_dependency 'ffaker', '~> 2.20'
|
|
41
41
|
spec.add_development_dependency 'json_matchers', '~> 0.11.1'
|
|
42
42
|
spec.add_development_dependency 'overcommit', '~> 0.58.0'
|
|
43
43
|
spec.add_development_dependency 'pry-byebug', '~> 3.9'
|
|
44
44
|
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
|
|
45
|
-
spec.add_development_dependency 'reek', '~> 6.0', '>= 6.0.
|
|
45
|
+
spec.add_development_dependency 'reek', '~> 6.0', '>= 6.0.6'
|
|
46
46
|
spec.add_development_dependency 'rspec', '~> 3.10'
|
|
47
|
-
spec.add_development_dependency 'rubocop', '~> 1.
|
|
48
|
-
spec.add_development_dependency 'rubocop-performance', '~> 1.11', '>= 1.11.
|
|
49
|
-
spec.add_development_dependency 'rubocop-rspec', '~> 2.
|
|
47
|
+
spec.add_development_dependency 'rubocop', '~> 1.22', '>= 1.22.1'
|
|
48
|
+
spec.add_development_dependency 'rubocop-performance', '~> 1.11', '>= 1.11.5'
|
|
49
|
+
spec.add_development_dependency 'rubocop-rspec', '~> 2.5'
|
|
50
50
|
spec.add_development_dependency 'simplecov', '~> 0.17.1'
|
|
51
51
|
spec.add_development_dependency 'truemail-rspec', '~> 0.7.0'
|
|
52
52
|
spec.add_development_dependency 'webmock', '~> 3.14'
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: truemail
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.5.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Vladislav Trotsenko
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2021-
|
|
11
|
+
date: 2021-10-06 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: simpleidn
|
|
@@ -33,7 +33,7 @@ dependencies:
|
|
|
33
33
|
version: '2.2'
|
|
34
34
|
- - ">="
|
|
35
35
|
- !ruby/object:Gem::Version
|
|
36
|
-
version: 2.2.
|
|
36
|
+
version: 2.2.28
|
|
37
37
|
type: :development
|
|
38
38
|
prerelease: false
|
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -43,21 +43,21 @@ dependencies:
|
|
|
43
43
|
version: '2.2'
|
|
44
44
|
- - ">="
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: 2.2.
|
|
46
|
+
version: 2.2.28
|
|
47
47
|
- !ruby/object:Gem::Dependency
|
|
48
48
|
name: bundler-audit
|
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
|
50
50
|
requirements:
|
|
51
51
|
- - "~>"
|
|
52
52
|
- !ruby/object:Gem::Version
|
|
53
|
-
version: 0.
|
|
53
|
+
version: 0.9.0.1
|
|
54
54
|
type: :development
|
|
55
55
|
prerelease: false
|
|
56
56
|
version_requirements: !ruby/object:Gem::Requirement
|
|
57
57
|
requirements:
|
|
58
58
|
- - "~>"
|
|
59
59
|
- !ruby/object:Gem::Version
|
|
60
|
-
version: 0.
|
|
60
|
+
version: 0.9.0.1
|
|
61
61
|
- !ruby/object:Gem::Dependency
|
|
62
62
|
name: dns_mock
|
|
63
63
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -65,6 +65,9 @@ dependencies:
|
|
|
65
65
|
- - "~>"
|
|
66
66
|
- !ruby/object:Gem::Version
|
|
67
67
|
version: '1.4'
|
|
68
|
+
- - ">="
|
|
69
|
+
- !ruby/object:Gem::Version
|
|
70
|
+
version: 1.4.2
|
|
68
71
|
type: :development
|
|
69
72
|
prerelease: false
|
|
70
73
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -72,6 +75,9 @@ dependencies:
|
|
|
72
75
|
- - "~>"
|
|
73
76
|
- !ruby/object:Gem::Version
|
|
74
77
|
version: '1.4'
|
|
78
|
+
- - ">="
|
|
79
|
+
- !ruby/object:Gem::Version
|
|
80
|
+
version: 1.4.2
|
|
75
81
|
- !ruby/object:Gem::Dependency
|
|
76
82
|
name: fasterer
|
|
77
83
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -92,14 +98,14 @@ dependencies:
|
|
|
92
98
|
requirements:
|
|
93
99
|
- - "~>"
|
|
94
100
|
- !ruby/object:Gem::Version
|
|
95
|
-
version: '2.
|
|
101
|
+
version: '2.20'
|
|
96
102
|
type: :development
|
|
97
103
|
prerelease: false
|
|
98
104
|
version_requirements: !ruby/object:Gem::Requirement
|
|
99
105
|
requirements:
|
|
100
106
|
- - "~>"
|
|
101
107
|
- !ruby/object:Gem::Version
|
|
102
|
-
version: '2.
|
|
108
|
+
version: '2.20'
|
|
103
109
|
- !ruby/object:Gem::Dependency
|
|
104
110
|
name: json_matchers
|
|
105
111
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -171,7 +177,7 @@ dependencies:
|
|
|
171
177
|
version: '6.0'
|
|
172
178
|
- - ">="
|
|
173
179
|
- !ruby/object:Gem::Version
|
|
174
|
-
version: 6.0.
|
|
180
|
+
version: 6.0.6
|
|
175
181
|
type: :development
|
|
176
182
|
prerelease: false
|
|
177
183
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -181,7 +187,7 @@ dependencies:
|
|
|
181
187
|
version: '6.0'
|
|
182
188
|
- - ">="
|
|
183
189
|
- !ruby/object:Gem::Version
|
|
184
|
-
version: 6.0.
|
|
190
|
+
version: 6.0.6
|
|
185
191
|
- !ruby/object:Gem::Dependency
|
|
186
192
|
name: rspec
|
|
187
193
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -202,20 +208,20 @@ dependencies:
|
|
|
202
208
|
requirements:
|
|
203
209
|
- - "~>"
|
|
204
210
|
- !ruby/object:Gem::Version
|
|
205
|
-
version: '1.
|
|
211
|
+
version: '1.22'
|
|
206
212
|
- - ">="
|
|
207
213
|
- !ruby/object:Gem::Version
|
|
208
|
-
version: 1.
|
|
214
|
+
version: 1.22.1
|
|
209
215
|
type: :development
|
|
210
216
|
prerelease: false
|
|
211
217
|
version_requirements: !ruby/object:Gem::Requirement
|
|
212
218
|
requirements:
|
|
213
219
|
- - "~>"
|
|
214
220
|
- !ruby/object:Gem::Version
|
|
215
|
-
version: '1.
|
|
221
|
+
version: '1.22'
|
|
216
222
|
- - ">="
|
|
217
223
|
- !ruby/object:Gem::Version
|
|
218
|
-
version: 1.
|
|
224
|
+
version: 1.22.1
|
|
219
225
|
- !ruby/object:Gem::Dependency
|
|
220
226
|
name: rubocop-performance
|
|
221
227
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -225,7 +231,7 @@ dependencies:
|
|
|
225
231
|
version: '1.11'
|
|
226
232
|
- - ">="
|
|
227
233
|
- !ruby/object:Gem::Version
|
|
228
|
-
version: 1.11.
|
|
234
|
+
version: 1.11.5
|
|
229
235
|
type: :development
|
|
230
236
|
prerelease: false
|
|
231
237
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -235,21 +241,21 @@ dependencies:
|
|
|
235
241
|
version: '1.11'
|
|
236
242
|
- - ">="
|
|
237
243
|
- !ruby/object:Gem::Version
|
|
238
|
-
version: 1.11.
|
|
244
|
+
version: 1.11.5
|
|
239
245
|
- !ruby/object:Gem::Dependency
|
|
240
246
|
name: rubocop-rspec
|
|
241
247
|
requirement: !ruby/object:Gem::Requirement
|
|
242
248
|
requirements:
|
|
243
249
|
- - "~>"
|
|
244
250
|
- !ruby/object:Gem::Version
|
|
245
|
-
version: '2.
|
|
251
|
+
version: '2.5'
|
|
246
252
|
type: :development
|
|
247
253
|
prerelease: false
|
|
248
254
|
version_requirements: !ruby/object:Gem::Requirement
|
|
249
255
|
requirements:
|
|
250
256
|
- - "~>"
|
|
251
257
|
- !ruby/object:Gem::Version
|
|
252
|
-
version: '2.
|
|
258
|
+
version: '2.5'
|
|
253
259
|
- !ruby/object:Gem::Dependency
|
|
254
260
|
name: simplecov
|
|
255
261
|
requirement: !ruby/object:Gem::Requirement
|