truemail 3.1.1 → 3.2.0
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/lib/truemail/configuration.rb +13 -4
- data/lib/truemail/logger.rb +4 -5
- data/lib/truemail/version.rb +1 -1
- data/truemail.gemspec +6 -6
- metadata +20 -25
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eaf56f1be4d147276a83807c713461d7bc2d4bedb009a0323fa3a38b7fd82829
|
4
|
+
data.tar.gz: cb914e607e6a0182d7550a0fa0d8de7783c79763809019d4e706a6207daabc39
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c2fdf6d58ca54b4c2a25eea14e6769277b16cfc24b32709d0195ef0fa29ac13d71c19717f0f8d4f5626e7c9348815307f7fa7d0238f0feeb5076fd6314fd00e6
|
7
|
+
data.tar.gz: 0a3b9b4ec3fa36fd3a73353d651d5e9af664d5ebd030ab72a3942a24b9e7d1590dddaf569a3b3b83c36a3c83926fef1fb0c3c1fbdab19f7e7de7d1e5827d5ba4
|
@@ -2,12 +2,19 @@
|
|
2
2
|
|
3
3
|
module Truemail
|
4
4
|
class Configuration
|
5
|
+
require 'logger'
|
6
|
+
|
5
7
|
DEFAULT_CONNECTION_TIMEOUT = 2
|
6
8
|
DEFAULT_RESPONSE_TIMEOUT = 2
|
7
9
|
DEFAULT_CONNECTION_ATTEMPTS = 2
|
8
10
|
DEFAULT_VALIDATION_TYPE = :smtp
|
9
11
|
DEFAULT_SMTP_PORT = 25
|
10
|
-
DEFAULT_LOGGER_OPTIONS = {
|
12
|
+
DEFAULT_LOGGER_OPTIONS = {
|
13
|
+
logger_class: ::Logger,
|
14
|
+
tracking_event: :error,
|
15
|
+
stdout: false,
|
16
|
+
log_absolute_path: nil
|
17
|
+
}.freeze
|
11
18
|
SETTERS = %i[
|
12
19
|
email_pattern
|
13
20
|
smtp_error_body_pattern
|
@@ -75,15 +82,17 @@ module Truemail
|
|
75
82
|
end
|
76
83
|
end
|
77
84
|
|
78
|
-
def logger=(options)
|
79
|
-
|
85
|
+
def logger=(options) # rubocop:disable Metrics/AbcSize
|
86
|
+
raise_unless(options, __method__, options.is_a?(::Hash))
|
87
|
+
logger_class, tracking_event, stdout, log_absolute_path = logger_options(options)
|
88
|
+
raise_unless(logger_class, __method__, logger_class.is_a?(::Class))
|
80
89
|
valid_event = Truemail::Log::Event::TRACKING_EVENTS.key?(tracking_event)
|
81
90
|
stdout_only = stdout && log_absolute_path.nil?
|
82
91
|
file_only = log_absolute_path.is_a?(::String)
|
83
92
|
both_types = stdout && file_only
|
84
93
|
argument_info = valid_event ? log_absolute_path : tracking_event
|
85
94
|
raise_unless(argument_info, __method__, valid_event && (stdout_only || file_only || both_types))
|
86
|
-
@logger = Truemail::Logger.new(tracking_event, stdout, log_absolute_path)
|
95
|
+
@logger = Truemail::Logger.new(logger_class, tracking_event, stdout, log_absolute_path)
|
87
96
|
end
|
88
97
|
|
89
98
|
def complete?
|
data/lib/truemail/logger.rb
CHANGED
@@ -2,11 +2,10 @@
|
|
2
2
|
|
3
3
|
module Truemail
|
4
4
|
class Logger
|
5
|
-
|
5
|
+
attr_reader :logger_class, :event, :stdout, :file
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
def initialize(event, error_stdout, log_absolute_path)
|
7
|
+
def initialize(logger_class, event, error_stdout, log_absolute_path)
|
8
|
+
@logger_class = logger_class
|
10
9
|
@event = event
|
11
10
|
@stdout = error_stdout
|
12
11
|
@file = log_absolute_path
|
@@ -30,7 +29,7 @@ module Truemail
|
|
30
29
|
def create_logs(log_level, serialized_object)
|
31
30
|
%i[stdout file].each do |output_type|
|
32
31
|
next unless public_send(output_type)
|
33
|
-
|
32
|
+
logger_class.new(output_type.eql?(:stdout) ? $stdout : init_log_file).add(log_level) { serialized_object }
|
34
33
|
end
|
35
34
|
end
|
36
35
|
end
|
data/lib/truemail/version.rb
CHANGED
data/truemail.gemspec
CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.authors = ['Vladislav Trotsenko']
|
9
9
|
spec.email = %w[admin@bestweb.com.ua]
|
10
10
|
|
11
|
-
spec.summary = %(
|
11
|
+
spec.summary = %(Configurable framework agnostic plain Ruby email validator. Verify email via Regex, DNS, SMTP and even more)
|
12
12
|
spec.description = %(Configurable framework agnostic plain Ruby email validator. Verify email via Regex, DNS, SMTP and even more.)
|
13
13
|
|
14
14
|
spec.homepage = 'https://github.com/truemail-rb/truemail'
|
@@ -32,12 +32,12 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.add_runtime_dependency 'net-smtp', '~> 0.4.0.1' if current_ruby_version >= ::Gem::Version.new('3.1.0')
|
33
33
|
spec.add_runtime_dependency 'simpleidn', '~> 0.2.1'
|
34
34
|
|
35
|
-
spec.add_development_dependency 'dns_mock', '~> 1.6', '>= 1.6.
|
35
|
+
spec.add_development_dependency 'dns_mock', '~> 1.6', '>= 1.6.2'
|
36
36
|
spec.add_development_dependency 'ffaker', ffaker_version
|
37
37
|
spec.add_development_dependency 'json_matchers', '~> 0.11.1'
|
38
38
|
spec.add_development_dependency 'rake', '~> 13.1'
|
39
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
40
|
-
spec.add_development_dependency 'smtp_mock', '~> 1.
|
41
|
-
spec.add_development_dependency 'truemail-rspec', '~> 1.
|
42
|
-
spec.add_development_dependency 'webmock', '~> 3.
|
39
|
+
spec.add_development_dependency 'rspec', '~> 3.13'
|
40
|
+
spec.add_development_dependency 'smtp_mock', '~> 1.4'
|
41
|
+
spec.add_development_dependency 'truemail-rspec', '~> 1.3', '>= 1.3.1'
|
42
|
+
spec.add_development_dependency 'webmock', '~> 3.20'
|
43
43
|
end
|
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: 3.
|
4
|
+
version: 3.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Vladislav Trotsenko
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-02-24 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: '1.6'
|
34
34
|
- - ">="
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: 1.6.
|
36
|
+
version: 1.6.2
|
37
37
|
type: :development
|
38
38
|
prerelease: false
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: '1.6'
|
44
44
|
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: 1.6.
|
46
|
+
version: 1.6.2
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: ffaker
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -92,68 +92,62 @@ dependencies:
|
|
92
92
|
requirements:
|
93
93
|
- - "~>"
|
94
94
|
- !ruby/object:Gem::Version
|
95
|
-
version: '3.
|
95
|
+
version: '3.13'
|
96
96
|
type: :development
|
97
97
|
prerelease: false
|
98
98
|
version_requirements: !ruby/object:Gem::Requirement
|
99
99
|
requirements:
|
100
100
|
- - "~>"
|
101
101
|
- !ruby/object:Gem::Version
|
102
|
-
version: '3.
|
102
|
+
version: '3.13'
|
103
103
|
- !ruby/object:Gem::Dependency
|
104
104
|
name: smtp_mock
|
105
105
|
requirement: !ruby/object:Gem::Requirement
|
106
106
|
requirements:
|
107
107
|
- - "~>"
|
108
108
|
- !ruby/object:Gem::Version
|
109
|
-
version: '1.
|
110
|
-
- - ">="
|
111
|
-
- !ruby/object:Gem::Version
|
112
|
-
version: 1.3.6
|
109
|
+
version: '1.4'
|
113
110
|
type: :development
|
114
111
|
prerelease: false
|
115
112
|
version_requirements: !ruby/object:Gem::Requirement
|
116
113
|
requirements:
|
117
114
|
- - "~>"
|
118
115
|
- !ruby/object:Gem::Version
|
119
|
-
version: '1.
|
120
|
-
- - ">="
|
121
|
-
- !ruby/object:Gem::Version
|
122
|
-
version: 1.3.6
|
116
|
+
version: '1.4'
|
123
117
|
- !ruby/object:Gem::Dependency
|
124
118
|
name: truemail-rspec
|
125
119
|
requirement: !ruby/object:Gem::Requirement
|
126
120
|
requirements:
|
127
121
|
- - "~>"
|
128
122
|
- !ruby/object:Gem::Version
|
129
|
-
version: '1.
|
123
|
+
version: '1.3'
|
124
|
+
- - ">="
|
125
|
+
- !ruby/object:Gem::Version
|
126
|
+
version: 1.3.1
|
130
127
|
type: :development
|
131
128
|
prerelease: false
|
132
129
|
version_requirements: !ruby/object:Gem::Requirement
|
133
130
|
requirements:
|
134
131
|
- - "~>"
|
135
132
|
- !ruby/object:Gem::Version
|
136
|
-
version: '1.
|
133
|
+
version: '1.3'
|
134
|
+
- - ">="
|
135
|
+
- !ruby/object:Gem::Version
|
136
|
+
version: 1.3.1
|
137
137
|
- !ruby/object:Gem::Dependency
|
138
138
|
name: webmock
|
139
139
|
requirement: !ruby/object:Gem::Requirement
|
140
140
|
requirements:
|
141
141
|
- - "~>"
|
142
142
|
- !ruby/object:Gem::Version
|
143
|
-
version: '3.
|
144
|
-
- - ">="
|
145
|
-
- !ruby/object:Gem::Version
|
146
|
-
version: 3.19.1
|
143
|
+
version: '3.20'
|
147
144
|
type: :development
|
148
145
|
prerelease: false
|
149
146
|
version_requirements: !ruby/object:Gem::Requirement
|
150
147
|
requirements:
|
151
148
|
- - "~>"
|
152
149
|
- !ruby/object:Gem::Version
|
153
|
-
version: '3.
|
154
|
-
- - ">="
|
155
|
-
- !ruby/object:Gem::Version
|
156
|
-
version: 3.19.1
|
150
|
+
version: '3.20'
|
157
151
|
description: Configurable framework agnostic plain Ruby email validator. Verify email
|
158
152
|
via Regex, DNS, SMTP and even more.
|
159
153
|
email:
|
@@ -225,5 +219,6 @@ requirements: []
|
|
225
219
|
rubygems_version: 3.2.15
|
226
220
|
signing_key:
|
227
221
|
specification_version: 4
|
228
|
-
summary:
|
222
|
+
summary: Configurable framework agnostic plain Ruby email validator. Verify email
|
223
|
+
via Regex, DNS, SMTP and even more
|
229
224
|
test_files: []
|