pre 0.0.1 → 0.0.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.
- data/README.md +17 -18
- data/lib/pre/version.rb +1 -1
- data/pre.gemspec +2 -2
- metadata +15 -21
data/README.md
CHANGED
@@ -29,33 +29,33 @@ Pre by default has built in validators for RFC2822 and DNS MX record verificatio
|
|
29
29
|
|
30
30
|
Pre can take blocks for custom validators
|
31
31
|
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
32
|
+
require 'pre'
|
33
|
+
no_gmail = lambda do |address|
|
34
|
+
address !~ /gmail.com$/
|
35
|
+
end
|
36
|
+
validator = Pre::Validator.new :validators => [:format, no_gmail]
|
37
|
+
validator.valid? "foo@gmail.com" # => false
|
38
|
+
|
39
39
|
Pre can take any object that implements the valid? method
|
40
40
|
|
41
41
|
require 'pre'
|
42
42
|
class ComplexValidator
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
43
|
+
def valid? address
|
44
|
+
return true unless address =~ /gmail.com$/
|
45
|
+
# do not allow user+label@gmail.com
|
46
|
+
address !~ /\+.+@/
|
47
|
+
end
|
48
48
|
end
|
49
49
|
validator = Pre::Validator.new :validators => [:domain, ComplexValidator.new]
|
50
50
|
validator.valid? "john+spam@gmail.com" # => false
|
51
51
|
|
52
52
|
Pre can also take alternate configuration for a single address
|
53
53
|
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
54
|
+
require 'pre'
|
55
|
+
validator = Pre::Validator.new :validators => :format
|
56
|
+
validator.valid? "john@example.co.uk", :validators => lambda { |address|
|
57
|
+
address =~ /example.co.nz$/
|
58
|
+
} # => false
|
59
59
|
|
60
60
|
### Caching
|
61
61
|
|
@@ -87,4 +87,3 @@ Ack
|
|
87
87
|
---
|
88
88
|
|
89
89
|
The RFC treetop grammars are pulled from the fantastic [mail](https://github.com/mikel/mail) gem.
|
90
|
-
|
data/lib/pre/version.rb
CHANGED
data/pre.gemspec
CHANGED
@@ -7,9 +7,9 @@ Gem::Specification.new do |s|
|
|
7
7
|
s.version = Pre::VERSION
|
8
8
|
s.authors = ["Thomas Devol"]
|
9
9
|
s.email = ["thomas.devol@gmail.com"]
|
10
|
-
s.homepage = ""
|
10
|
+
s.homepage = "http://www.github.com/vajrapani666/pre"
|
11
11
|
s.summary = %q{Pretty reliable email validator}
|
12
|
-
s.description = %q{Checks email using RFC2822 compliant parser, Requests MX records for server validation}
|
12
|
+
s.description = %q{Checks email using RFC2822 compliant parser, Requests MX records for server validation. Supports caching}
|
13
13
|
|
14
14
|
s.rubyforge_project = "pre"
|
15
15
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pre
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-09-19 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement: &
|
16
|
+
requirement: &70120878376960 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70120878376960
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: mocha
|
27
|
-
requirement: &
|
27
|
+
requirement: &70120878376540 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70120878376540
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: pry-nav
|
38
|
-
requirement: &
|
38
|
+
requirement: &70120878376080 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70120878376080
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: treetop
|
49
|
-
requirement: &
|
49
|
+
requirement: &70120878375640 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70120878375640
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: active_support
|
60
|
-
requirement: &
|
60
|
+
requirement: &70120878375220 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70120878375220
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: dalli
|
71
|
-
requirement: &
|
71
|
+
requirement: &70120878374720 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,9 +76,9 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70120878374720
|
80
80
|
description: Checks email using RFC2822 compliant parser, Requests MX records for
|
81
|
-
server validation
|
81
|
+
server validation. Supports caching
|
82
82
|
email:
|
83
83
|
- thomas.devol@gmail.com
|
84
84
|
executables: []
|
@@ -107,7 +107,7 @@ files:
|
|
107
107
|
- spec/lib/pre/validator_spec.rb
|
108
108
|
- spec/lib/pre/validators/domain_spec.rb
|
109
109
|
- spec/spec_helper.rb
|
110
|
-
homepage:
|
110
|
+
homepage: http://www.github.com/vajrapani666/pre
|
111
111
|
licenses: []
|
112
112
|
post_install_message:
|
113
113
|
rdoc_options: []
|
@@ -119,18 +119,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
119
119
|
- - ! '>='
|
120
120
|
- !ruby/object:Gem::Version
|
121
121
|
version: '0'
|
122
|
-
segments:
|
123
|
-
- 0
|
124
|
-
hash: -3663766737597231915
|
125
122
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
126
123
|
none: false
|
127
124
|
requirements:
|
128
125
|
- - ! '>='
|
129
126
|
- !ruby/object:Gem::Version
|
130
127
|
version: '0'
|
131
|
-
segments:
|
132
|
-
- 0
|
133
|
-
hash: -3663766737597231915
|
134
128
|
requirements: []
|
135
129
|
rubyforge_project: pre
|
136
130
|
rubygems_version: 1.8.17
|