truemail 2.0.0 → 2.2.1
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/.github/BRANCH_NAMING_CONVENTION.md +36 -0
- data/.github/ISSUE_TEMPLATE/bug_report.md +28 -0
- data/.github/ISSUE_TEMPLATE/feature_request.md +27 -0
- data/.github/{ISSUE_TEMPLATE.md → ISSUE_TEMPLATE/issue_report.md} +14 -3
- data/.github/ISSUE_TEMPLATE/question.md +22 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +3 -0
- data/.reek.yml +2 -0
- data/.rubocop.yml +69 -0
- data/CHANGELOG.md +86 -15
- data/CONTRIBUTING.md +15 -14
- data/Gemfile.lock +47 -41
- data/README.md +109 -4
- data/lib/truemail.rb +1 -1
- data/lib/truemail/configuration.rb +3 -2
- data/lib/truemail/core.rb +1 -1
- data/lib/truemail/log/serializer/base.rb +1 -0
- data/lib/truemail/log/serializer/validator_base.rb +5 -1
- data/lib/truemail/validate/mx.rb +1 -1
- data/lib/truemail/validate/smtp.rb +15 -5
- data/lib/truemail/version.rb +1 -1
- data/truemail.gemspec +8 -8
- metadata +43 -27
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '098a5137b9a780eef6d123e9393ccb00814808645e99d53408b9a80c32cf1a7b'
|
4
|
+
data.tar.gz: f64e10f884aea786c61006d9be9238b7e1073612c64b12e4b177b18e637da97c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 822485cd53478f2e38279de6c02f8ec2cc77762fad336c9c0278e415be852037c2bea2966409247893b271b0c61a5bc0769c659d1beaeef4a085ae57dce57a61
|
7
|
+
data.tar.gz: e176b835d2a11452f5d2d8ab952fbda08adef54078907c02d3bd3d534adab816a29adbc279202c74bf963c678d926141c89771a72207a2933c78214e2fea7119
|
data/.codeclimate.yml
CHANGED
@@ -0,0 +1,36 @@
|
|
1
|
+
# Branch naming convention
|
2
|
+
|
3
|
+
## Branch naming
|
4
|
+
|
5
|
+
> Please note for new pull requests create new branches from current `develop` branch only.
|
6
|
+
|
7
|
+
Branch name should include type of your contribution and context. Please follow next pattern for naming your branches:
|
8
|
+
|
9
|
+
```bash
|
10
|
+
feature/add-some-feature
|
11
|
+
technical/some-technical-improvements
|
12
|
+
bugfix/fix-some-bug-name
|
13
|
+
```
|
14
|
+
|
15
|
+
## Before PR actions
|
16
|
+
|
17
|
+
### Squash commits
|
18
|
+
|
19
|
+
Please squash all branch commits into the one before openning your PR from your fork. It's simple to do with the git:
|
20
|
+
|
21
|
+
```bash
|
22
|
+
git rebase -i [hash your first commit of your branch]~1
|
23
|
+
git rebase -i 6467fe36232401fa740af067cfd8ac9ec932fed2~1 # example
|
24
|
+
```
|
25
|
+
|
26
|
+
### Add commit description
|
27
|
+
|
28
|
+
Please complete your commit description folowing next pattern:
|
29
|
+
|
30
|
+
```
|
31
|
+
Technical/Add info files # should be the same name as your branch name
|
32
|
+
|
33
|
+
* Added license, changelog, contributing, code of conduct docs
|
34
|
+
* Added GitHub templates
|
35
|
+
* Updated project license link
|
36
|
+
```
|
@@ -0,0 +1,28 @@
|
|
1
|
+
---
|
2
|
+
name: Bug report
|
3
|
+
about: Create a report to help us improve
|
4
|
+
title: "[BUG] Your bug report title here"
|
5
|
+
labels: bug
|
6
|
+
assignees: bestwebua
|
7
|
+
|
8
|
+
---
|
9
|
+
|
10
|
+
<!-- Thanks for helping to make Truemail better! Before submit your bug, please make sure to check the following boxes by putting an x in the [ ] (don't: [x ], [ x], do: [x]) -->
|
11
|
+
|
12
|
+
### New bug checklist
|
13
|
+
|
14
|
+
- [ ] I have updated `truemail` to the latest version
|
15
|
+
- [ ] I have read the [Contribution Guidelines](https://github.com/truemail-rb/truemail/blob/master/CONTRIBUTING.md)
|
16
|
+
- [ ] I have read the [documentation](https://truemail-rb.org/truemail-gem)
|
17
|
+
- [ ] I have searched for [existing GitHub issues](https://github.com/truemail-rb/truemail/issues)
|
18
|
+
|
19
|
+
<!-- Please use next pattern for your bug report title: [BUG] Your bug report title here -->
|
20
|
+
|
21
|
+
### Bug description
|
22
|
+
<!-- Please include what's happening, expected behavior, and any relevant code samples -->
|
23
|
+
|
24
|
+
##### Complete output when running truemail, including the stack trace and command used
|
25
|
+
|
26
|
+
<details>
|
27
|
+
<pre>[INSERT OUTPUT HERE]</pre>
|
28
|
+
</details>
|
@@ -0,0 +1,27 @@
|
|
1
|
+
---
|
2
|
+
name: Feature request
|
3
|
+
about: Suggest an idea for Truemail
|
4
|
+
title: "[FEATURE] Your feature request title here"
|
5
|
+
labels: enhancement
|
6
|
+
assignees: bestwebua
|
7
|
+
|
8
|
+
---
|
9
|
+
|
10
|
+
<!-- Thanks for helping to make Truemail better! Before submit your new feature request, please make sure to check the following boxes by putting an x in the [ ] (don't: [x ], [ x], do: [x]) -->
|
11
|
+
|
12
|
+
### New feature request checklist
|
13
|
+
|
14
|
+
- [ ] I have updated `truemail` to the latest version
|
15
|
+
- [ ] I have read the [Contribution Guidelines](https://github.com/truemail-rb/truemail/blob/master/CONTRIBUTING.md)
|
16
|
+
- [ ] I have read the [documentation](https://truemail-rb.org/truemail-gem)
|
17
|
+
- [ ] I have searched for [existing GitHub issues](https://github.com/truemail-rb/truemail/issues)
|
18
|
+
|
19
|
+
<!-- Please use next pattern for your feature request title: [FEATURE] Your feature request title here -->
|
20
|
+
|
21
|
+
### Feature description
|
22
|
+
|
23
|
+
<!-- Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
24
|
+
|
25
|
+
Describe the solution you'd like. A clear and concise description of what you want to happen.
|
26
|
+
|
27
|
+
Describe alternatives you've considered. A clear and concise description of any alternative solutions or features you've considered. -->
|
@@ -1,13 +1,24 @@
|
|
1
|
+
---
|
2
|
+
name: Issue report
|
3
|
+
about: Create a report to help us improve
|
4
|
+
title: "[ISSUE] Your issue report title here"
|
5
|
+
labels: ''
|
6
|
+
assignees: bestwebua
|
7
|
+
|
8
|
+
---
|
9
|
+
|
1
10
|
<!-- Thanks for helping to make Truemail better! Before submit your issue, please make sure to check the following boxes by putting an x in the [ ] (don't: [x ], [ x], do: [x]) -->
|
2
11
|
|
3
|
-
### New
|
12
|
+
### New issue checklist
|
4
13
|
|
5
|
-
- [ ] I have updated truemail to the latest version
|
14
|
+
- [ ] I have updated `truemail` to the latest version
|
6
15
|
- [ ] I have read the [Contribution Guidelines](https://github.com/truemail-rb/truemail/blob/master/CONTRIBUTING.md)
|
7
16
|
- [ ] I have read the [documentation](https://truemail-rb.org/truemail-gem)
|
8
17
|
- [ ] I have searched for [existing GitHub issues](https://github.com/truemail-rb/truemail/issues)
|
9
18
|
|
10
|
-
|
19
|
+
<!-- Please use next pattern for your issue report title: [ISSUE] Your issue report title here -->
|
20
|
+
|
21
|
+
### Issue description
|
11
22
|
<!-- Please include what's happening, expected behavior, and any relevant code samples -->
|
12
23
|
|
13
24
|
##### Complete output when running truemail, including the stack trace and command used
|
@@ -0,0 +1,22 @@
|
|
1
|
+
---
|
2
|
+
name: Question
|
3
|
+
about: Ask your question to Truemail team
|
4
|
+
title: "[QUESTION] Your question title here"
|
5
|
+
labels: question
|
6
|
+
assignees: bestwebua
|
7
|
+
|
8
|
+
---
|
9
|
+
|
10
|
+
<!-- Thanks for helping to make Truemail better! Before submit your question, please make sure to check the following boxes by putting an x in the [ ] (don't: [x ], [ x], do: [x]) -->
|
11
|
+
|
12
|
+
### New question checklist
|
13
|
+
|
14
|
+
- [ ] I have read the [Contribution Guidelines](https://github.com/truemail-rb/truemail/blob/master/CONTRIBUTING.md)
|
15
|
+
- [ ] I have read the [documentation](https://truemail-rb.org/truemail-gem)
|
16
|
+
- [ ] I have searched for [existing GitHub issues](https://github.com/truemail-rb/truemail/issues)
|
17
|
+
|
18
|
+
<!-- Please use next pattern for your question title: [QUESTION] Your question title here -->
|
19
|
+
|
20
|
+
### Question
|
21
|
+
|
22
|
+
<!-- Your question context here -->
|
@@ -1,6 +1,9 @@
|
|
1
1
|
# PR Details
|
2
2
|
|
3
3
|
<!-- Provide a general summary of your changes in the Title above -->
|
4
|
+
<!-- PR name should the same name as your branch name, example: -->
|
5
|
+
<!-- Branch name is: feature/add-some-feature -->
|
6
|
+
<!-- PR name should be: Feature/Add some feature -->
|
4
7
|
|
5
8
|
## Description
|
6
9
|
|
data/.reek.yml
CHANGED
@@ -27,6 +27,7 @@ detectors:
|
|
27
27
|
exclude:
|
28
28
|
- Truemail::Configuration#whitelist_validation
|
29
29
|
- Truemail::Configuration#not_rfc_mx_lookup_flow
|
30
|
+
- Truemail::Configuration#smtp_fail_fast
|
30
31
|
- Truemail::Configuration#smtp_safe_check
|
31
32
|
- Truemail::Wrapper#attempts
|
32
33
|
|
@@ -41,6 +42,7 @@ detectors:
|
|
41
42
|
- Truemail::Configuration#domain_matcher
|
42
43
|
- Truemail::Configuration#logger_options
|
43
44
|
- Truemail::Log::Serializer::Base#errors
|
45
|
+
- Truemail::Log::Serializer::ValidatorBase#replace_invalid_chars
|
44
46
|
|
45
47
|
ControlParameter:
|
46
48
|
exclude:
|
data/.rubocop.yml
CHANGED
@@ -115,6 +115,30 @@ Style/RedundantSelfAssignment:
|
|
115
115
|
Style/SoleNestedConditional:
|
116
116
|
Enabled: true
|
117
117
|
|
118
|
+
Style/ClassEqualityComparison:
|
119
|
+
Enabled: true
|
120
|
+
|
121
|
+
Style/ArgumentsForwarding:
|
122
|
+
Enabled: true
|
123
|
+
|
124
|
+
Style/CollectionCompact:
|
125
|
+
Enabled: true
|
126
|
+
|
127
|
+
Style/DocumentDynamicEvalDefinition:
|
128
|
+
Enabled: true
|
129
|
+
|
130
|
+
Style/NegatedIfElseCondition:
|
131
|
+
Enabled: true
|
132
|
+
|
133
|
+
Style/NilLambda:
|
134
|
+
Enabled: true
|
135
|
+
|
136
|
+
Style/SwapValues:
|
137
|
+
Enabled: true
|
138
|
+
|
139
|
+
Style/RedundantArgument:
|
140
|
+
Enabled: true
|
141
|
+
|
118
142
|
Layout/LineLength:
|
119
143
|
Max: 140
|
120
144
|
|
@@ -212,6 +236,36 @@ Lint/UselessMethodDefinition:
|
|
212
236
|
Lint/UselessTimes:
|
213
237
|
Enabled: true
|
214
238
|
|
239
|
+
Lint/HashCompareByIdentity:
|
240
|
+
Enabled: true
|
241
|
+
|
242
|
+
Lint/RedundantSafeNavigation:
|
243
|
+
Enabled: true
|
244
|
+
|
245
|
+
Lint/DuplicateBranch:
|
246
|
+
Enabled: true
|
247
|
+
|
248
|
+
Lint/DuplicateRegexpCharacterClassElement:
|
249
|
+
Enabled: true
|
250
|
+
|
251
|
+
Lint/EmptyBlock:
|
252
|
+
Enabled: true
|
253
|
+
|
254
|
+
Lint/EmptyClass:
|
255
|
+
Enabled: true
|
256
|
+
|
257
|
+
Lint/NoReturnInBeginEndBlocks:
|
258
|
+
Enabled: false
|
259
|
+
|
260
|
+
Lint/ToEnumArguments:
|
261
|
+
Enabled: true
|
262
|
+
|
263
|
+
Lint/UnmodifiedReduceAccumulator:
|
264
|
+
Enabled: true
|
265
|
+
|
266
|
+
Lint/UnexpectedBlockArity:
|
267
|
+
Enabled: true
|
268
|
+
|
215
269
|
Performance/AncestorsInclude:
|
216
270
|
Enabled: true
|
217
271
|
|
@@ -239,6 +293,18 @@ Performance/StringInclude:
|
|
239
293
|
Performance/Sum:
|
240
294
|
Enabled: true
|
241
295
|
|
296
|
+
Performance/BlockGivenWithExplicitBlock:
|
297
|
+
Enabled: true
|
298
|
+
|
299
|
+
Performance/CollectionLiteralInLoop:
|
300
|
+
Enabled: true
|
301
|
+
|
302
|
+
Performance/ConstantRegexp:
|
303
|
+
Enabled: true
|
304
|
+
|
305
|
+
Performance/MethodObjectAsBlock:
|
306
|
+
Enabled: true
|
307
|
+
|
242
308
|
RSpec/ExampleLength:
|
243
309
|
Enabled: false
|
244
310
|
|
@@ -265,3 +331,6 @@ RSpec/MultipleDescribes:
|
|
265
331
|
|
266
332
|
RSpec/MultipleMemoizedHelpers:
|
267
333
|
Enabled: false
|
334
|
+
|
335
|
+
RSpec/StubbedMock:
|
336
|
+
Enabled: false
|
data/CHANGELOG.md
CHANGED
@@ -2,11 +2,81 @@
|
|
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.2.1] - 2020.12.06
|
6
|
+
|
7
|
+
### Fixed
|
8
|
+
|
9
|
+
- Filter out ASCII-8BIT chars for serialized SMTP response errors. Fixed `Encoding::UndefinedConversionError` in `Truemail::Log::Serializer::ValidatorJson#serialize`. Thanks to [@eni9889](https://github.com/eni9889) for report
|
10
|
+
- Added missed `smtp_fail_fast` attribute to serialized validator and auditor results
|
11
|
+
|
12
|
+
### Added
|
13
|
+
|
14
|
+
- Added `Truemail::Log::Serializer::ValidatorBase#replace_invalid_chars`
|
15
|
+
|
16
|
+
### Changed
|
17
|
+
|
18
|
+
- Updated `Truemail::Log::Serializer::Base`
|
19
|
+
- Updated `Truemail::Log::Serializer::ValidatorBase`
|
20
|
+
- Updated gem development dependencies
|
21
|
+
|
22
|
+
## [2.2.0] - 2020.12.01
|
23
|
+
|
24
|
+
Ability to use fail fast behaviour for SMTP validation layer. When `smtp_fail_fast = true` it means that `truemail` ends smtp validation session after first attempt on the first mx server in any fail cases (network connection/timeout error, smtp validation error). This feature helps to reduce total time of SMTP validation session up to 1 second.
|
25
|
+
|
26
|
+
### Added
|
27
|
+
|
28
|
+
- Added `Truemail::Configuration#smtp_fail_fast`
|
29
|
+
- Added `Truemail::Validate::Smtp#smtp_fail_fast?`
|
30
|
+
- Added `Truemail::Validate::Smtp#filtered_mail_servers_by_fail_fast_scenario`
|
31
|
+
|
32
|
+
### Changed
|
33
|
+
|
34
|
+
- Updated `Truemail::Validate::Smtp#attempts`
|
35
|
+
- Updated `Truemail::Validate::Smtp#establish_smtp_connection`
|
36
|
+
- Updated gem documentation
|
37
|
+
|
38
|
+
It's a configurable and not required option:
|
39
|
+
|
40
|
+
```ruby
|
41
|
+
Truemail.configure do |config|
|
42
|
+
config.smtp_fail_fast = true # by default it's equal to false
|
43
|
+
end
|
44
|
+
```
|
45
|
+
|
46
|
+
Thanks to [@wikiti](https://github.com/wikiti) for timeout reports.
|
47
|
+
|
48
|
+
## [2.1.0] - 2020.11.21
|
49
|
+
|
50
|
+
Collecting only unique ip-addresses for target mail servers. This update reduces email validation time for case when remote server have closed connection via avoiding connection attempt to server with the same ip address.
|
51
|
+
|
52
|
+
### Changed
|
53
|
+
|
54
|
+
- Updated `Truemail::Validate::Mx#fetch_target_hosts`
|
55
|
+
|
56
|
+
## [2.0.2] - 2020.11.14
|
57
|
+
|
58
|
+
### Fixed
|
59
|
+
|
60
|
+
Timeouts time units in `Setting global configuration` of Truemail documentation's section. Thanks to [@wikiti](https://github.com/wikiti) for report.
|
61
|
+
|
62
|
+
### Changed
|
63
|
+
|
64
|
+
- Refactored `Truemail::RegexConstant::REGEX_EMAIL_PATTERN`
|
65
|
+
- Updated gem development dependencies
|
66
|
+
- Updated gem documentation
|
67
|
+
|
68
|
+
## [2.0.1] - 2020.10.20
|
69
|
+
|
70
|
+
### Changed
|
71
|
+
|
72
|
+
- Updated gem development dependencies
|
73
|
+
- Updated gem documentation
|
74
|
+
|
5
75
|
## [2.0.0] - 2020.10.19
|
6
76
|
|
7
77
|
### Fixed
|
8
78
|
|
9
|
-
SMTP connection errors: invalid `HELO` hostname (`localhost`), duplicate `HELO` (`verifier domain`).
|
79
|
+
SMTP connection errors: invalid `HELO` hostname (`localhost`), duplicate `HELO` (`verifier domain`). Thanks to [@nenoganchev](https://github.com/nenoganchev) for report.
|
10
80
|
|
11
81
|
### Changed
|
12
82
|
|
@@ -14,7 +84,7 @@ SMTP connection errors: invalid `HELO` hostname (`localhost`), duplicate `HELO`
|
|
14
84
|
- Updated `Truemail::Validate::Smtp::Request#session_data`
|
15
85
|
- Updated `Truemail::Validate::Smtp::Response`
|
16
86
|
|
17
|
-
Now `helo` is a `Boolean` instead of `Net::SMTP::Response` instance. It was changed because `helo` is sending during SMTP-session initializing (`Net::SMTP.new.start`), and `helo` is always `true` if session up is okay. Also `hello` response won't logged as error if it happens. Example of `Truemail::Validate::Smtp::Response` instance from
|
87
|
+
Now `helo` is a `Boolean` instead of `Net::SMTP::Response` instance. It was changed because `helo` is sending during SMTP-session initializing (`Net::SMTP.new.start`), and `helo` is always `true` if session up is okay. Also `hello` response won't logged as error if it happens. Example of `Truemail::Validate::Smtp::Response` instance from 2.x version.
|
18
88
|
|
19
89
|
```ruby
|
20
90
|
#<struct Truemail::Validate::Smtp::Response:0x00007fa74704cd10
|
@@ -379,6 +449,7 @@ Truemail.validate('email@white-domain.com', with: :regex)
|
|
379
449
|
smtp_debug=nil>,
|
380
450
|
@validation_type=:regex>
|
381
451
|
```
|
452
|
+
|
382
453
|
**Email hasn't whitelisted domain**
|
383
454
|
|
384
455
|
```ruby
|
@@ -406,7 +477,7 @@ Truemail.validate('email@domain.com', with: :regex)
|
|
406
477
|
|
407
478
|
- Configurable default validation type, [issue details](https://github.com/truemail-rb/truemail/issues/48)
|
408
479
|
|
409
|
-
You can predefine default validation type for
|
480
|
+
You can predefine default validation type for `Truemail.validate('email@email.com')` call without with-parameter. Available validation types: `:regex`, `:mx`, `:smtp`. By default validation type still remains `:smtp`
|
410
481
|
|
411
482
|
```ruby
|
412
483
|
Truemail.configure do |config|
|
@@ -461,7 +532,7 @@ Truemail.validate('email@black-domain.com')
|
|
461
532
|
|
462
533
|
### Added
|
463
534
|
|
464
|
-
- Feature domain whitelist blacklist. Other validations will not processed even if it was defined in
|
535
|
+
- Feature domain whitelist blacklist. Other validations will not processed even if it was defined in `validation_type_for`.
|
465
536
|
|
466
537
|
```ruby
|
467
538
|
Truemail.configure do |config|
|
@@ -484,7 +555,7 @@ Truemail.configuration.blacklisted_domains = ['somedomain1.com', 'somedomain2.co
|
|
484
555
|
|
485
556
|
### Removed
|
486
557
|
|
487
|
-
-
|
558
|
+
- `:skip` validation type for `validation_type_for`
|
488
559
|
|
489
560
|
### Fixed
|
490
561
|
|
@@ -499,7 +570,7 @@ Truemail.configuration.blacklisted_domains = ['somedomain1.com', 'somedomain2.co
|
|
499
570
|
|
500
571
|
### Added
|
501
572
|
|
502
|
-
- skip validation by domain for validation_type_for configuration option:
|
573
|
+
- skip validation by domain for `validation_type_for` configuration option:
|
503
574
|
|
504
575
|
```ruby
|
505
576
|
Truemail.configure do |config|
|
@@ -581,11 +652,11 @@ Truemail.configuration.validation_type_for = { 'somedomain.com' => :skip }
|
|
581
652
|
|
582
653
|
### Added
|
583
654
|
|
584
|
-
- Retries for
|
655
|
+
- Retries for `Truemail::Validate::Smtp` for cases when one mx server
|
585
656
|
|
586
657
|
### Changed
|
587
658
|
|
588
|
-
-
|
659
|
+
- `Truemail::Configuration` class, please use `.connection_attempts` instead `.retry_count`
|
589
660
|
- `Truemail::VERSION`
|
590
661
|
- gem documentation
|
591
662
|
|
@@ -593,12 +664,12 @@ Truemail.configuration.validation_type_for = { 'somedomain.com' => :skip }
|
|
593
664
|
|
594
665
|
### Added
|
595
666
|
|
596
|
-
- Checking A record presence if
|
597
|
-
- Handling of
|
598
|
-
- Checking A record if
|
667
|
+
- Checking A record presence if `MX` and `CNAME` records not exist, [issue details](https://github.com/truemail-rb/truemail/issues/10)
|
668
|
+
- Handling of `CNAME` records, [issue details](https://github.com/truemail-rb/truemail/issues/11)
|
669
|
+
- Checking A record if `MX` and `CNAME` records not found, [issue details](https://github.com/truemail-rb/truemail/issues/12)
|
599
670
|
- Supporting of multihomed MX records, conversion host names to ips, [issue details](https://github.com/truemail-rb/truemail/issues/17)
|
600
671
|
- Timeout configuration for DNS resolver, [issue details](https://github.com/truemail-rb/truemail/issues/13)
|
601
|
-
-
|
672
|
+
- `.valid?` helper
|
602
673
|
|
603
674
|
### Changed
|
604
675
|
|
@@ -609,14 +680,14 @@ Truemail.configuration.validation_type_for = { 'somedomain.com' => :skip }
|
|
609
680
|
|
610
681
|
### Added
|
611
682
|
|
612
|
-
- Independent domain name extractor to
|
683
|
+
- Independent domain name extractor to `Truemail::Validate::Mx#run`
|
613
684
|
|
614
685
|
### Fixed
|
615
686
|
|
616
|
-
- Default
|
687
|
+
- Default `REGEX_EMAIL_PATTERN`, [issue details](https://github.com/truemail-rb/truemail/issues/7)
|
617
688
|
* local part of address can't start with a dot or special symbol
|
618
689
|
* local part of address can include ```+``` symbol
|
619
|
-
- Default
|
690
|
+
- Default `REGEX_DOMAIN_PATTERN`, [issue details](https://github.com/truemail-rb/truemail/issues/8)
|
620
691
|
* TLD size increased up to 63 characters
|
621
692
|
- Case sensitive domain names, [issue details](https://github.com/truemail-rb/truemail/issues/9)
|
622
693
|
|