gman 5.0.2 → 5.0.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6c14780a8da17be7dbcd93d3f1623da401aa5124
4
- data.tar.gz: 82aecc0617942671dd7beec7601ddef10a1b9262
3
+ metadata.gz: d5f81c5dc5d03e961dc8830f91d8f17a04cc7eff
4
+ data.tar.gz: 1c4c914aca60114856034e3cfd1254c555552d49
5
5
  SHA512:
6
- metadata.gz: e1431c5933b0eb033945732d265640da90b59e2f420b4f97bc7a84158f1793ea489a630b371702bfe9a5342e9c06f4839daeeee3fafc521588628d83cecddd93
7
- data.tar.gz: 2e03f15a543f54d5a56b1abc6646c86496a1e72d9e4f42a5f862c18725df6f50f17a90704f76da0b8efb31eeecbb492eb2992ec714a39e480d892a22067b2cc5
6
+ metadata.gz: e463cf1a41e87be42a1bae6b82e9b5961a210ea4374750ee9e111406589199adaf0e15be60b31dd65f4cee1e49b510a1e6eacc3f3a7c75c7e4c05fb70313bf8c
7
+ data.tar.gz: be4371cf714f72cf0b0d0bafdc3de1e26c8b549849f70cce3779bb334bbecad5668f4bc65b5356a5e163d8782b270e8cae3b219ffd0cbc58e8f0a83162809c8a
data/config/domains.txt CHANGED
@@ -206,8 +206,6 @@ cochrane.ca
206
206
  coldlake.com
207
207
  colemantownship.ca
208
208
  colwood.ca
209
- communityofmillertown.ca
210
- communityofoleary.com
211
209
  comox.ca
212
210
  conceptionbaysouth.ca
213
211
  consort.ca
@@ -596,7 +594,6 @@ municipalite.saint-armand.qc.ca
596
594
  municipalite.saint-isidore.qc.ca
597
595
  municipalite.saint-philippe.qc.ca
598
596
  municipalite.saint-valerien.qc.ca
599
- municipalite.sainte-angele-de-monnoir.qc.ca
600
597
  municipalite.sainte-martine.qc.ca
601
598
  municipaliteboileau.ca
602
599
  municipalitedeboltonouest.com
@@ -608,7 +605,6 @@ municipalityofmcdougall.com
608
605
  municipalityofshelburne.ca
609
606
  muniles.ca
610
607
  munmilan.qc.ca
611
- munpontiac.com
612
608
  munstdenis.com
613
609
  munstratford.qc.ca
614
610
  mycallander.ca
@@ -883,7 +879,6 @@ snowlake.com
883
879
  sooke.ca
884
880
  sourismanitoba.com
885
881
  sourispei.com
886
- southbrook.tripod.com
887
882
  southey.ca
888
883
  southhuron.ca
889
884
  southwestmiddlesex.ca
@@ -1092,7 +1087,6 @@ townofgrandbank.com
1092
1087
  townofhague.com
1093
1088
  townofhampton.ca
1094
1089
  townofhighprairie.com
1095
- townofhmcclv.com
1096
1090
  townofhudsonbay.com
1097
1091
  townofindianhead.com
1098
1092
  townofkearney.com
@@ -1218,7 +1212,6 @@ villageofalliance.ca
1218
1212
  villageofbitternlake.ca
1219
1213
  villageofbriercrest.ca
1220
1214
  villageofcentreville.ca
1221
- villageofchauvin.ca
1222
1215
  villageofconquest.ca
1223
1216
  villageofdorintosh.sasktelwebsite.net
1224
1217
  villageofduchess.com
@@ -3255,7 +3248,6 @@ vardanalys.se
3255
3248
  vinnova.se
3256
3249
  vr.se
3257
3250
  vti.se
3258
- y.lst.se
3259
3251
  yhmyndigheten.se
3260
3252
 
3261
3253
  // Swiss Cantons (Federal States)
@@ -4128,7 +4120,6 @@ jeffco.us
4128
4120
  kitcarsoncounty.org
4129
4121
  lakewood.org
4130
4122
  littletongov.org
4131
- metrodenvercfc.org
4132
4123
  metromayors.org
4133
4124
  minturn.org
4134
4125
  mountain-village.co.us
@@ -4268,7 +4259,6 @@ waterfordct.org
4268
4259
  watertownct.org
4269
4260
  west-hartford.com
4270
4261
  westbrookct.us
4271
- weston-ct.com
4272
4262
  wethersfieldct.com
4273
4263
  willingtonct.org
4274
4264
  wiltonct.org
@@ -4450,7 +4440,6 @@ pbgc.org
4450
4440
  pcaobus.org
4451
4441
  pepfar.net
4452
4442
  predict.org
4453
- project-open-data.github.io
4454
4443
  psctool.us
4455
4444
  r3coastal.com
4456
4445
  radiosawa.com
@@ -4926,7 +4915,6 @@ odumgeorgia.com
4926
4915
  oxfordgeorgia.org
4927
4916
  peachcounty.net
4928
4917
  peachtree-city.org
4929
- pearson-ga.com
4930
4918
  pembrokega.net
4931
4919
  pinelakega.com
4932
4920
  polkcountygeorgia.us
@@ -5555,7 +5543,6 @@ newhavenin.org
5555
5543
  newtoncountyin.com
5556
5544
  nirpc.org
5557
5545
  nmanchester.org
5558
- nobleco.squarespace.com
5559
5546
  perrycountyil.org
5560
5547
  porterco.org
5561
5548
  portertownship.com
@@ -5937,7 +5924,6 @@ rppj.com
5937
5924
  ruston.org
5938
5925
  sbpg.net
5939
5926
  sjbparish.com
5940
- springhillla.com
5941
5927
  state.lib.la.us
5942
5928
  stfrancisville.net
5943
5929
  stjamesla.com
@@ -7637,10 +7623,8 @@ shpnc.org
7637
7623
  smithfield-nc.com
7638
7624
  sosnc.com
7639
7625
  southernpines.net
7640
- southernshores.org
7641
7626
  spindalenc.net
7642
7627
  spring-lake.org
7643
- sprucepineonline.com
7644
7628
  startsquad.org
7645
7629
  startwithyourheart.com
7646
7630
  summerfieldgov.com
@@ -7742,7 +7726,6 @@ dvlnd.com
7742
7726
  edgeley.com
7743
7727
  edinburgnd.com
7744
7728
  ellendalend.com
7745
- emmonscounty.tripod.com
7746
7729
  enderlinnd.com
7747
7730
  fessendennd.com
7748
7731
  finleynd.com
@@ -7843,7 +7826,6 @@ westfargo.org
7843
7826
  williamsnd.com
7844
7827
  willistonnd.com
7845
7828
  wiltonnd.org
7846
- wingnd.com
7847
7829
  wishek-nd.com
7848
7830
  wrtc.com
7849
7831
 
@@ -8688,7 +8670,6 @@ poncatribe-ne.org
8688
8670
  portlions.net
8689
8671
  potawatomi.org
8690
8672
  powhatan.org
8691
- prairieisland.org
8692
8673
  pueblodecochiti.org
8693
8674
  puyallup-tribe.com
8694
8675
  redding-rancheria.com
@@ -8792,7 +8773,6 @@ attica.org
8792
8773
  auroranewyork.us
8793
8774
  austerlitzny.com
8794
8775
  avon-ny.org
8795
- b-ville.com
8796
8776
  bainbridgeny.org
8797
8777
  baldwinsville.org
8798
8778
  batavianewyork.com
@@ -9328,7 +9308,6 @@ townofstonypoint.org
9328
9308
  townofsweden.org
9329
9309
  townofthompson.com
9330
9310
  townofthurston.com
9331
- townofticonderoga.com
9332
9311
  townoftully.org
9333
9312
  townofulster.org
9334
9313
  townofunion.com
@@ -10151,7 +10130,6 @@ lehighcounty.org
10151
10130
  lehmantownship.com
10152
10131
  libertytwp-adamscounty.com
10153
10132
  limerickpa.org
10154
- lincolnboro.tripod.com
10155
10133
  littlebritain.org
10156
10134
  littlestownboro.org
10157
10135
  liverpoolpa.us
@@ -10176,7 +10154,6 @@ manortwp.org
10176
10154
  mantwp.com
10177
10155
  marpletwp.com
10178
10156
  marysvilleboro.com
10179
- mckeesport.org
10180
10157
  mckeesrocks.com
10181
10158
  mechanicsburgborough.org
10182
10159
  mediaborough.com
@@ -10384,7 +10361,6 @@ wesleyvilleborough.com
10384
10361
  west-chester.com
10385
10362
  westbradford.org
10386
10363
  westcaln.org
10387
- westconshohockenboro.com
10388
10364
  westdeertownship.com
10389
10365
  westeastonborough.org
10390
10366
  westgroveborough.org
@@ -10542,7 +10518,6 @@ fortmillsc.org
10542
10518
  fountaininn.org
10543
10519
  gastonsc.org
10544
10520
  georgetowncountysc.org
10545
- greatfallssc.net
10546
10521
  greenvillecounty.org
10547
10522
  hamptoncountysc.org
10548
10523
  hamptonsc.net
@@ -10561,7 +10536,6 @@ libertysc.com
10561
10536
  lincolnvillesc.com
10562
10537
  littlemountainsc.info
10563
10538
  llronline.com
10564
- mayesvillesc.com
10565
10539
  midlandsareacfc.org
10566
10540
  mtcroghan.com
10567
10541
  mullinssc.us
@@ -11361,7 +11335,6 @@ vaao.org
11361
11335
  vaboard.org
11362
11336
  vadrs.org
11363
11337
  vadsa.org
11364
- vafamilyconnections.com
11365
11338
  vafire.com
11366
11339
  valottery.com
11367
11340
  vaports.com
@@ -11513,7 +11486,6 @@ stjvt.com
11513
11486
  swcrpc.org
11514
11487
  thetfordvermont.us
11515
11488
  tinmouthvt.org
11516
- town-of-orwell.org
11517
11489
  townofbrandon.com
11518
11490
  townofcraftsbury.com
11519
11491
  townofgeorgia.com
data/lib/gman/importer.rb CHANGED
@@ -55,20 +55,23 @@ class Gman
55
55
 
56
56
  def valid_domain?(domain, options={})
57
57
  return false if domain.empty?
58
- return reject(domain, "home. regex") if domain =~ /^home\./
59
- return reject(domain, "user. regex") if domain =~ /^users?\./
60
- return reject(domain, "sites. regex") if domain =~ /^sites?\./
61
- return reject(domain, "weebly") if domain =~ /weebly\.com$/
62
- return reject(domain, "wordpress") if domain =~ /wordpress\.com$/
63
- return reject(domain, "govoffice") if domain =~ /govoffice\d?\.com$/
64
- return reject(domain, "homestead") if domain =~ /homestead\.com$/
65
- return reject(domain, "wix.com") if domain =~ /wix\.com$/
66
- return reject(domain, "blogspot.com") if domain =~ /blogspot\.com$/
67
- return reject(domain, "locality") if domain =~ Gman::LOCALITY_REGEX
68
- return reject(domain, "blacklist") if BLACKLIST.include?(domain)
69
- return reject(domain, "duplicate") if !options[:skip_dupe] && current.domains.include?(domain)
70
- return reject(domain, "invalid") unless PublicSuffix.valid?(".#{domain}")
71
- return reject(domain, "academic") if Swot::is_academic?(domain)
58
+ return reject(domain, "home. regex") if domain =~ /^home\./
59
+ return reject(domain, "user. regex") if domain =~ /^users?\./
60
+ return reject(domain, "sites. regex") if domain =~ /^sites?\./
61
+ return reject(domain, "weebly") if domain =~ /weebly\.com$/
62
+ return reject(domain, "wordpress") if domain =~ /wordpress\.com$/
63
+ return reject(domain, "govoffice") if domain =~ /govoffice\d?\.com$/
64
+ return reject(domain, "homestead") if domain =~ /homestead\.com$/
65
+ return reject(domain, "wix.com") if domain =~ /wix\.com$/
66
+ return reject(domain, "blogspot.com") if domain =~ /blogspot\.com$/
67
+ return reject(domain, "tripod.com") if domain =~ /tripod\.com$/
68
+ return reject(domain, "squarespace.com") if domain =~ /squarespace\.com$/
69
+ return reject(domain, "github.io") if domain =~ /github\.io$/
70
+ return reject(domain, "locality") if domain =~ Gman::LOCALITY_REGEX
71
+ return reject(domain, "blacklist") if BLACKLIST.include?(domain)
72
+ return reject(domain, "duplicate") if !options[:skip_dupe] && current.domains.include?(domain)
73
+ return reject(domain, "invalid") unless PublicSuffix.valid?(".#{domain}")
74
+ return reject(domain, "academic") if Swot::is_academic?(domain)
72
75
 
73
76
  if !options[:skip_dupe] && subdomain = current.domains.find { |c| domain =~ /\.#{Regexp.escape(c)}$/}
74
77
  return reject(domain, "subdomain of #{subdomain}")
@@ -122,13 +125,18 @@ class Gman
122
125
  @resolver ||= Resolv::DNS.new(:nameserver => ["8.8.8.8","8.8.4.4"])
123
126
  end
124
127
 
128
+ def resolve_without_errors
129
+ yield
130
+ rescue Resolv::ResolvError
131
+ false
132
+ end
133
+
125
134
  # Verifies that the given domain has an MX record, and thus is valid
126
135
  def domain_resolves?(domain)
127
136
  domain = Addressable::URI.new(:host => domain).normalize.host
128
- resolver.getresource(domain, Resolv::DNS::Resource::IN::NS) ||
129
- resolver.getresource(domain, Resolv::DNS::Resource::IN::MX)
130
- rescue Resolv::ResolvError
131
- false
137
+ resolve_without_errors { resolver.getaddress(domain) } ||
138
+ resolve_without_errors { resolver.getresource(domain, Resolv::DNS::Resource::IN::NS) } ||
139
+ resolve_without_errors { resolver.getresource(domain, Resolv::DNS::Resource::IN::MX) }
132
140
  end
133
141
  end
134
142
  end
data/lib/gman/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  class Gman
2
- VERSION = '5.0.2'
2
+ VERSION = '5.0.3'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gman
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.2
4
+ version: 5.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Balter