truemail 3.1.2 → 3.2.0
Sign up to get free protection for your applications and to get access to all the features.
- 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 +1 -1
- metadata +4 -3
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'
|
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-02-
|
11
|
+
date: 2024-02-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: simpleidn
|
@@ -219,5 +219,6 @@ requirements: []
|
|
219
219
|
rubygems_version: 3.2.15
|
220
220
|
signing_key:
|
221
221
|
specification_version: 4
|
222
|
-
summary:
|
222
|
+
summary: Configurable framework agnostic plain Ruby email validator. Verify email
|
223
|
+
via Regex, DNS, SMTP and even more
|
223
224
|
test_files: []
|