gman 2.0.0 → 2.1.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 +7 -0
- data/README.md +2 -2
- data/gman.gemspec +4 -4
- data/lib/domains.txt +8 -9
- data/lib/gman.rb +3 -3
- data/script/build +1 -1
- data/test/test_gman.rb +1 -1
- metadata +33 -49
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: dfe66167fca5b26fa937f7342455449da446bdb0
|
4
|
+
data.tar.gz: 4f7bf9444596a08ca9e7923948049684788cd931
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: a817e3d2087eaaaf839623e4f4b0ee50e56abe5e9db69a08172054ebedf0175c22b5a6c81e3340cda5c0dffbbb11d1d705b8cfb392184ea0d150e8a5ed68401f
|
7
|
+
data.tar.gz: b40ecce16a163558fd42c57fc4da69674b7797fd9f2b06b97e5648bd3405766a4249fa826f43f15db59dc88dbee9735615fae9f8bee88f0e3c61fe590fccad35
|
data/README.md
CHANGED
@@ -38,7 +38,7 @@ Gman.valid? "foo.gov" #true
|
|
38
38
|
Gman.valid? "foo.biz" #false
|
39
39
|
```
|
40
40
|
|
41
|
-
### Get a domain name from an arbitrary
|
41
|
+
### Get a domain name from an arbitrary domain string
|
42
42
|
|
43
43
|
```ruby
|
44
44
|
Gman.get_domain "http://foo.bar.gov" # foo.bar.gov
|
@@ -53,4 +53,4 @@ Contributions welcome! Please see [the contribution guidelines](CONTRIBUTING.md)
|
|
53
53
|
|
54
54
|
## Credits
|
55
55
|
|
56
|
-
Heavily inspired by [swot](https://github.com/leereilly/swot). Thanks @
|
56
|
+
Heavily inspired by [swot](https://github.com/leereilly/swot). Thanks [@leereilly](https://github.com/leereilly)!
|
data/gman.gemspec
CHANGED
@@ -2,7 +2,7 @@ Gem::Specification.new do |s|
|
|
2
2
|
s.name = "gman"
|
3
3
|
s.summary = "Check if a given domain or email address belong to a governemnt entity"
|
4
4
|
s.description = "A ruby gem to check if the owner of a given email address is working for THE MAN."
|
5
|
-
s.version = "2.
|
5
|
+
s.version = "2.1.0"
|
6
6
|
s.authors = ["Ben Balter"]
|
7
7
|
s.email = "ben.balter@github.com"
|
8
8
|
s.homepage = "https://github.com/benbalter/gman"
|
@@ -24,9 +24,9 @@ Gem::Specification.new do |s|
|
|
24
24
|
".gitignore"
|
25
25
|
]
|
26
26
|
s.require_paths = ["lib"]
|
27
|
-
s.add_dependency( "public_suffix" )
|
28
|
-
s.add_dependency( "swot" )
|
29
|
-
s.add_dependency( "addressable" )
|
27
|
+
s.add_dependency( "public_suffix", '~> 1.4.1')
|
28
|
+
s.add_dependency( "swot", '~> 0.3.0' )
|
29
|
+
s.add_dependency( "addressable", '~> 2.3.6' )
|
30
30
|
|
31
31
|
s.add_development_dependency( "rake" )
|
32
32
|
s.add_development_dependency( "shoulda" )
|
data/lib/domains.txt
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
// non-us gov
|
2
|
+
dep.no
|
2
3
|
gc.ca
|
3
4
|
gob.bo
|
4
5
|
gob.cl
|
@@ -132,6 +133,7 @@ gov.vn
|
|
132
133
|
gov.ws
|
133
134
|
gub.uy
|
134
135
|
ottawa.ca
|
136
|
+
gov.yk.ca
|
135
137
|
|
136
138
|
// non-us mil
|
137
139
|
mil.ac
|
@@ -183,6 +185,7 @@ mil.tz
|
|
183
185
|
mil.uy
|
184
186
|
mil.vc
|
185
187
|
mil.ve
|
188
|
+
mod.uk
|
186
189
|
|
187
190
|
// non-us sub-divisions
|
188
191
|
greatersudbury.ca
|
@@ -192,6 +195,7 @@ ega.or.th
|
|
192
195
|
fed.us
|
193
196
|
gov
|
194
197
|
mil
|
198
|
+
si.edu
|
195
199
|
|
196
200
|
// US State, County, Local
|
197
201
|
bouldercounty.org
|
@@ -660,6 +664,7 @@ ci.marina.ca.us
|
|
660
664
|
ci.mendota.ca.us
|
661
665
|
ci.millbrae.ca.us
|
662
666
|
ci.modesto.ca.us
|
667
|
+
ci.monterey-park.ca.us
|
663
668
|
ci.moreno-valley.ca.us
|
664
669
|
ci.mt-shasta.ca.us
|
665
670
|
ci.mtnview.ca.us
|
@@ -967,7 +972,6 @@ mccsd.com
|
|
967
972
|
mcfarlandcity.org
|
968
973
|
menlopark.org
|
969
974
|
modestogov.com
|
970
|
-
modoccounty.us
|
971
975
|
mojaveindiantribe.com
|
972
976
|
monterey.org
|
973
977
|
montesereno.org
|
@@ -1138,7 +1142,6 @@ coloradonocall.com
|
|
1138
1142
|
coloradoriverrecovery.org
|
1139
1143
|
crgov.com
|
1140
1144
|
cripplecreekgov.com
|
1141
|
-
deertrailcolorado.org
|
1142
1145
|
deltacounty.com
|
1143
1146
|
denvergov.org
|
1144
1147
|
durangogov.org
|
@@ -1841,7 +1844,6 @@ guamlegislature.com
|
|
1841
1844
|
guamsupremecourt.com
|
1842
1845
|
guamtax.com
|
1843
1846
|
investguam.com
|
1844
|
-
justice.gov.gu
|
1845
1847
|
visitguam.org
|
1846
1848
|
|
1847
1849
|
// usagovHI
|
@@ -3194,6 +3196,7 @@ townofdresden.com
|
|
3194
3196
|
townofgreene.net
|
3195
3197
|
townofguilford.com
|
3196
3198
|
townofhartlandme.com
|
3199
|
+
townofmadawaska.com
|
3197
3200
|
townofnaples.org
|
3198
3201
|
townofnorridgewock.com
|
3199
3202
|
townofnorthberwick.org
|
@@ -7677,6 +7680,7 @@ zelieboro.org
|
|
7677
7680
|
fajardopr.org
|
7678
7681
|
gobierno.pr
|
7679
7682
|
loteriaelectronicapr.com
|
7683
|
+
mayaguez.pr
|
7680
7684
|
municipiocarolina.com
|
7681
7685
|
municipiodearecibo.com
|
7682
7686
|
municipiodebayamon.com
|
@@ -7967,7 +7971,6 @@ salemsd.com
|
|
7967
7971
|
sddot.com
|
7968
7972
|
sdhda.org
|
7969
7973
|
sdonecall.com
|
7970
|
-
siouxempirecfc.org
|
7971
7974
|
siouxfalls.org
|
7972
7975
|
state.sd.us
|
7973
7976
|
sullycounty.net
|
@@ -8864,7 +8867,6 @@ townofcoeburn.com
|
|
8864
8867
|
townofgordonsville.org
|
8865
8868
|
townofhalifax.com
|
8866
8869
|
townofkilmarnockva.com
|
8867
|
-
townoflacrosse.org
|
8868
8870
|
townofluray.com
|
8869
8871
|
townofmiddleburg.org
|
8870
8872
|
townoforangeva.org
|
@@ -8983,7 +8985,6 @@ newportvermont.org
|
|
8983
8985
|
northernnewenglandcfc.org
|
8984
8986
|
northherovt.com
|
8985
8987
|
norwich.vt.us
|
8986
|
-
onioncity.com
|
8987
8988
|
pantonvt.us
|
8988
8989
|
peacham.net
|
8989
8990
|
pittsfieldvt.org
|
@@ -9806,7 +9807,6 @@ cheyennecity.org
|
|
9806
9807
|
ci.gillette.wy.us
|
9807
9808
|
city-of-torrington.org
|
9808
9809
|
city-sheridan-wy.com
|
9809
|
-
cityofdouglaswy.com
|
9810
9810
|
cityofgreenriver.org
|
9811
9811
|
cityoflaramie.com
|
9812
9812
|
cityofworland.org
|
@@ -9968,7 +9968,6 @@ ncnhtf.org
|
|
9968
9968
|
ncoah.com
|
9969
9969
|
nconemap.net
|
9970
9970
|
ncopenbook.gov
|
9971
|
-
ncpanbranch.com
|
9972
9971
|
ncparks.gov
|
9973
9972
|
ncports.com
|
9974
9973
|
ncpublications.com
|
@@ -10029,4 +10028,4 @@ webgate.co.laramie.wy.us
|
|
10029
10028
|
wrightschool.org
|
10030
10029
|
wrightwyoming.com
|
10031
10030
|
wyomingbusiness.org
|
10032
|
-
wyomingtourism.org
|
10031
|
+
wyomingtourism.org
|
data/lib/gman.rb
CHANGED
@@ -46,7 +46,7 @@ module Gman
|
|
46
46
|
|
47
47
|
class << self
|
48
48
|
|
49
|
-
# Normalizes and checks if a given string represents a
|
49
|
+
# Normalizes and checks if a given string represents a government domain
|
50
50
|
# Possible strings to test:
|
51
51
|
# ".gov"
|
52
52
|
# "foo.gov"
|
@@ -61,7 +61,7 @@ module Gman
|
|
61
61
|
return false unless PublicSuffix.valid?(domain)
|
62
62
|
|
63
63
|
# Ensure non-edu
|
64
|
-
return false if Swot::is_academic?(domain)
|
64
|
+
return false if domain_parts(domain).sld && Swot::is_academic?(domain)
|
65
65
|
|
66
66
|
# check using public suffix's standard logic
|
67
67
|
rule = list.find domain
|
@@ -105,7 +105,7 @@ module Gman
|
|
105
105
|
|
106
106
|
# Helper function to return the public suffix domain object
|
107
107
|
#
|
108
|
-
# Supports all
|
108
|
+
# Supports all domain strings (URLs, emails)
|
109
109
|
#
|
110
110
|
# Returns the domain object or nil, but no errors, never an error
|
111
111
|
def domain_parts(text)
|
data/script/build
CHANGED
data/test/test_gman.rb
CHANGED
@@ -61,7 +61,7 @@ class TestGman < Test::Unit::TestCase
|
|
61
61
|
|
62
62
|
should "return public suffix domain" do
|
63
63
|
assert_equal PublicSuffix::Domain, Gman.domain_parts("whitehouse.gov").class
|
64
|
-
assert_equal NilClass, Gman.domain_parts("foo.
|
64
|
+
assert_equal NilClass, Gman.domain_parts("foo.invalid").class
|
65
65
|
end
|
66
66
|
|
67
67
|
should "parse domain parts" do
|
metadata
CHANGED
@@ -1,126 +1,111 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gman
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
5
|
-
prerelease:
|
4
|
+
version: 2.1.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Ben Balter
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2014-
|
11
|
+
date: 2014-04-14 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: public_suffix
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - "~>"
|
20
18
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
19
|
+
version: 1.4.1
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - "~>"
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
26
|
+
version: 1.4.1
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: swot
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - "~>"
|
36
32
|
- !ruby/object:Gem::Version
|
37
|
-
version:
|
33
|
+
version: 0.3.0
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - "~>"
|
44
39
|
- !ruby/object:Gem::Version
|
45
|
-
version:
|
40
|
+
version: 0.3.0
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: addressable
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - "~>"
|
52
46
|
- !ruby/object:Gem::Version
|
53
|
-
version:
|
47
|
+
version: 2.3.6
|
54
48
|
type: :runtime
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - "~>"
|
60
53
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
54
|
+
version: 2.3.6
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: rake
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- -
|
59
|
+
- - ">="
|
68
60
|
- !ruby/object:Gem::Version
|
69
61
|
version: '0'
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- -
|
66
|
+
- - ">="
|
76
67
|
- !ruby/object:Gem::Version
|
77
68
|
version: '0'
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: shoulda
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
|
-
- -
|
73
|
+
- - ">="
|
84
74
|
- !ruby/object:Gem::Version
|
85
75
|
version: '0'
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
|
-
- -
|
80
|
+
- - ">="
|
92
81
|
- !ruby/object:Gem::Version
|
93
82
|
version: '0'
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
84
|
name: rdoc
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
|
-
- -
|
87
|
+
- - ">="
|
100
88
|
- !ruby/object:Gem::Version
|
101
89
|
version: '0'
|
102
90
|
type: :development
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
|
-
- -
|
94
|
+
- - ">="
|
108
95
|
- !ruby/object:Gem::Version
|
109
96
|
version: '0'
|
110
97
|
- !ruby/object:Gem::Dependency
|
111
98
|
name: bundler
|
112
99
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
100
|
requirements:
|
115
|
-
- -
|
101
|
+
- - ">="
|
116
102
|
- !ruby/object:Gem::Version
|
117
103
|
version: '0'
|
118
104
|
type: :development
|
119
105
|
prerelease: false
|
120
106
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
107
|
requirements:
|
123
|
-
- -
|
108
|
+
- - ">="
|
124
109
|
- !ruby/object:Gem::Version
|
125
110
|
version: '0'
|
126
111
|
description: A ruby gem to check if the owner of a given email address is working
|
@@ -130,42 +115,41 @@ executables: []
|
|
130
115
|
extensions: []
|
131
116
|
extra_rdoc_files: []
|
132
117
|
files:
|
133
|
-
-
|
134
|
-
- README.md
|
118
|
+
- ".gitignore"
|
135
119
|
- CONTRIBUTING.md
|
120
|
+
- Gemfile
|
136
121
|
- LICENSE
|
137
|
-
-
|
122
|
+
- README.md
|
123
|
+
- Rakefile
|
124
|
+
- gman.gemspec
|
138
125
|
- lib/domains.txt
|
126
|
+
- lib/gman.rb
|
139
127
|
- script/build
|
140
128
|
- script/release
|
141
|
-
- gman.gemspec
|
142
129
|
- test/helper.rb
|
143
130
|
- test/test_gman.rb
|
144
|
-
- Rakefile
|
145
|
-
- .gitignore
|
146
131
|
homepage: https://github.com/benbalter/gman
|
147
132
|
licenses:
|
148
133
|
- MIT
|
134
|
+
metadata: {}
|
149
135
|
post_install_message:
|
150
136
|
rdoc_options: []
|
151
137
|
require_paths:
|
152
138
|
- lib
|
153
139
|
required_ruby_version: !ruby/object:Gem::Requirement
|
154
|
-
none: false
|
155
140
|
requirements:
|
156
|
-
- -
|
141
|
+
- - ">="
|
157
142
|
- !ruby/object:Gem::Version
|
158
143
|
version: '0'
|
159
144
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
160
|
-
none: false
|
161
145
|
requirements:
|
162
|
-
- -
|
146
|
+
- - ">="
|
163
147
|
- !ruby/object:Gem::Version
|
164
148
|
version: '0'
|
165
149
|
requirements: []
|
166
150
|
rubyforge_project:
|
167
|
-
rubygems_version:
|
151
|
+
rubygems_version: 2.2.0
|
168
152
|
signing_key:
|
169
|
-
specification_version:
|
153
|
+
specification_version: 4
|
170
154
|
summary: Check if a given domain or email address belong to a governemnt entity
|
171
155
|
test_files: []
|