whois 3.5.0 → 3.5.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 64c28ee28056f0cdb1cae50d160a896e18748855
4
- data.tar.gz: 1b6d911348d90c1f1f3e2092c5b523f1088bf977
3
+ metadata.gz: c415d7d641e725bada5a99bfd790f466542e27f2
4
+ data.tar.gz: cf9b2dae30082827d33f18f0407ce8faef675e59
5
5
  SHA512:
6
- metadata.gz: 82446a8fe7c4fcd76fe0b16aead14f0ed9e92b82ad29235bf423f5b1a664c1e100b9be00a2b8e089a8ed93cfef48361499ac1a8425c5dc6f3eff4a4151910bb5
7
- data.tar.gz: 166cea0d0841168161e226655a95993013678d8da6adbe6ae700b14ebbe4d3b119f279a193bec3fee3cd4f4b0a054145d215119b6505856e530caeaa525d2027
6
+ metadata.gz: cbb715d0cd4d30adfc06198dcb5716b0bcbbe9bed08d81f90aaa4e494fe0bc34e38a46ea63f6f337e9101d7c8a766e488bebb3591ba79617d865a30d5dfdb72c
7
+ data.tar.gz: 615576dc52bf3577b837cacd089efa7cb9ea7bde86ef699ed327aa92b9b232d6acee61ae0491711f2244dece12985b2c00355f78b278ea60253ff560c35b2086
@@ -1,7 +1,22 @@
1
1
  # Changelog
2
2
 
3
3
 
4
- ## Release 3.5.0
4
+ #### Release 3.5.1
5
+
6
+ - NEW: Added whois.corporatedomains.com parser (GH-311). [Thanks @huyphan]
7
+
8
+ - CHANGED: Added ActiveSupport as dependency (GH-317) [Thanks @byroot].
9
+
10
+ - FIXED: NameError: wrong constant name when querying IPs (GH-310).
11
+
12
+ - FIXED: Updated expiration date parsing for Verisign responses.
13
+
14
+ - FIXED: whois.iis.se parser crashes when the response contains a single nameserver.
15
+
16
+ - FIXED: whois.ua parser crashes when the status is clientTransferProhibited.
17
+
18
+
19
+ #### Release 3.5.0
5
20
 
6
21
  - SERVER: Updated list of latest ASN allocations of 16-bit & 32-bit ASN's from IANA (GH-293). [Thanks @itsbalamurali]
7
22
 
@@ -18,7 +33,7 @@
18
33
  - FIXED: whois.registry.net.za parser crashes with some registrant contact formats.
19
34
 
20
35
 
21
- ## Release 3.4.5
36
+ #### Release 3.4.5
22
37
 
23
38
  - SERVER: Added new IDN TLDs: .XN--3BST00M, .XN--3DS443G, .XN--55QX5D, .XN--6FRZ82G, .XN--6QQ986B3XL, .XN--FIQ228C5HS, .XN--FIQ64B, .XN--IO0A7I, .XN--CG4BKI, .XN--MGBAB2BD, .XN--55QW42G, .XN--ZFR164B
24
39
 
@@ -43,7 +58,7 @@
43
58
  - CHANGED: Afilias is using a slightly different whois response for some TLDs, including .INFO and .XXX (GH-304)
44
59
 
45
60
 
46
- ## Release 3.4.4
61
+ #### Release 3.4.4
47
62
 
48
63
  - CHANGED: Updated IBC parser and fixtures (.IO, .AC, .SH and .TM).
49
64
 
@@ -52,7 +67,7 @@
52
67
  - CHANGED: Updated whois.pir.org parser to the new response format (GH-300). [Thanks @muffinista]
53
68
 
54
69
 
55
- ## Release 3.4.3
70
+ #### Release 3.4.3
56
71
 
57
72
  - SERVER: Updated .COM, .NET, .CC, .WS TLD definitions.
58
73
 
@@ -75,14 +90,14 @@
75
90
  - CHANGED: Updated whois.nic.gl parser to the new response format.
76
91
 
77
92
 
78
- ## Release 3.4.2
93
+ #### Release 3.4.2
79
94
 
80
95
  - CHANGED: Updated whois.registry.net.za parser to the new response format.
81
96
 
82
97
  - CHANGED: Updated whois.ascio.com parser to the new response format (GH-285). [Thanks @takama]
83
98
 
84
99
 
85
- ## Release 3.4.1
100
+ #### Release 3.4.1
86
101
 
87
102
  - SERVER: Updated .XN--NGBC5AZD IDN TLD definition.
88
103
 
@@ -105,7 +120,7 @@
105
120
  - CHANGED: Updated whois.gandi.net parser to the new response format.
106
121
 
107
122
 
108
- ## Release 3.4.0
123
+ #### Release 3.4.0
109
124
 
110
125
  - SERVER: Added .XN--MGBX4CD0AB (.ایران, Iran) IDN TLD definition.
111
126
 
@@ -142,7 +157,7 @@
142
157
  - CHANGED: Updated whois.register.com parser to the new response format (GH-273). [Thanks @gromnsk]
143
158
 
144
159
 
145
- ## Release 3.3.1
160
+ #### Release 3.3.1
146
161
 
147
162
  - SERVER: Updated .KR, .ES (GH-267) TLD definitions.
148
163
 
@@ -153,7 +168,7 @@
153
168
  - CHANGED: Updated whois.enom.com parser to the new response format (GH-269). [Thanks @takama]
154
169
 
155
170
 
156
- ## Release 3.3.0
171
+ #### Release 3.3.0
157
172
 
158
173
  - SERVER: Added .CF TLD definition.
159
174
 
@@ -176,7 +191,7 @@
176
191
  - FIXED: whois.jprs.jp should support `Registered` status (GH-253). [Thanks @Pietr]
177
192
 
178
193
 
179
- ## Release 3.2.1
194
+ #### Release 3.2.1
180
195
 
181
196
  - NEW: Added full whois.nic.tr parser.
182
197
 
@@ -197,7 +212,7 @@
197
212
  - CHANGED: Deprecate Whois::Record::Contact::TYPE_ADMIN in favor of Whois::Record::Contact::TYPE_ADMINISTRATIVE
198
213
 
199
214
 
200
- ## Release 3.2.0
215
+ #### Release 3.2.0
201
216
 
202
217
  - SERVER: Added .JP.NET (GH-240), XN--J1AMH TLD definitions.
203
218
 
@@ -220,7 +235,7 @@
220
235
  - FIXED: Arin adapter is incorrectly passing an Arin flag to referral queries.
221
236
 
222
237
 
223
- ## Release 3.1.3
238
+ #### Release 3.1.3
224
239
 
225
240
  - SERVER: Updated .GD (GH-227), .TC (GH-228) TLD definitions.
226
241
 
@@ -237,7 +252,7 @@
237
252
  - FIXED: whois.ua is mixing two kinds of responses (GH-235).
238
253
 
239
254
 
240
- ## Release 3.1.2
255
+ #### Release 3.1.2
241
256
 
242
257
  - NEW: Added full whois.comlaude.com parser (GH-222). [Thanks @delwyn]
243
258
 
@@ -256,12 +271,12 @@
256
271
  - FIXED: whois.nic.fr parser crashes when the contact has no changed attribute (GH-226).
257
272
 
258
273
 
259
- ## Release 3.1.1
274
+ #### Release 3.1.1
260
275
 
261
276
  - FIXED: Fixed CLI crash (GH-219). [Thanks @linrock]
262
277
 
263
278
 
264
- ## Release 3.1.0
279
+ #### Release 3.1.0
265
280
 
266
281
  - SERVER: Added .POST (GH-192) TLD definition.
267
282
 
@@ -292,7 +307,7 @@
292
307
  - FIXED: Record#technical_contact raised a NoMethodError (GH-217). [Thanks @yspro]
293
308
 
294
309
 
295
- ## Release 3.0.0
310
+ #### Release 3.0.0
296
311
 
297
312
  - SERVER: Added .AX TLD definition.
298
313
 
@@ -434,7 +449,7 @@
434
449
  - Whois::PropertyNotAvailable -> Whois::AttributeNotImplemented
435
450
 
436
451
 
437
- ## Release 2.7.0
452
+ #### Release 2.7.0
438
453
 
439
454
  - SERVER: Added .IQ TLD server (GH-171).
440
455
 
@@ -473,7 +488,7 @@
473
488
  - CHANGED: whois.dns.pl now supports expires_on (GH-185). [Thanks @y3ti]
474
489
 
475
490
 
476
- ## Release 2.6.4
491
+ #### Release 2.6.4
477
492
 
478
493
  - SERVER: Added .CW TLD server.
479
494
 
@@ -508,7 +523,7 @@
508
523
  - CHANGED: Removed support for .gemtest and removed /spec folder from the packaged gem.
509
524
 
510
525
 
511
- ## Release 2.6.3
526
+ #### Release 2.6.3
512
527
 
513
528
  - NEW: whois.registrypro.pro is now a full parser.
514
529
 
@@ -521,7 +536,7 @@
521
536
  - CHANGED: Updated whois.registrypro.pro parser to the new response format.
522
537
 
523
538
 
524
- ## Release 2.6.2
539
+ #### Release 2.6.2
525
540
 
526
541
  - SERVER: Added .SX TLD server (GH-170).
527
542
 
@@ -532,7 +547,7 @@
532
547
  - NEW: whois.ua parser is now a full parser (GH-169). [Thanks @Uko]
533
548
 
534
549
 
535
- ## Release 2.6.1
550
+ #### Release 2.6.1
536
551
 
537
552
  - Reverted partial commit about .SX definitions included in v2.6.0 by mistake.
538
553
 
data/README.md CHANGED
@@ -16,12 +16,12 @@ This library was extracted from [RoboWhois](https://www.robowhois.com/) and [Rob
16
16
 
17
17
  ## Features
18
18
 
19
- - Ability to query registry data for [IPv4, IPv6, TLDs, and domain names](http://www.ruby-whois.org/manual/usage/#usage-objects)
20
- - Ability to [parse WHOIS responses](http://www.ruby-whois.org/manual/parser/)
21
- - Flexible and extensible interface (e.g. You can define [custom servers](http://www.ruby-whois.org/manual/server/) on the fly)
19
+ - Ability to lookup WHOIS record for [IPv4, IPv6, TLDs, and ICANN new gTLDs](http://ruby-whois.org/manual/usage/#usage-objects)
20
+ - Ability to [parse WHOIS responses](http://ruby-whois.org/manual/parser/)
21
+ - Flexible and extensible interface (e.g. You can define [custom servers](http://ruby-whois.org/manual/server/) on the fly)
22
22
  - Object oriented design, featuring 10 different design patterns
23
23
  - Pure Ruby library, without any external dependency other than Ruby itself
24
- - Successfully tested against several [Ruby implementations](http://www.ruby-whois.org/manual/interpreters/)
24
+ - Successfully tested against several [Ruby implementations](http://ruby-whois.org/manual/interpreters/)
25
25
 
26
26
 
27
27
  ## Requirements
@@ -33,14 +33,14 @@ For older versions of Ruby, see the [CHANGELOG](CHANGELOG.md).
33
33
 
34
34
  ## Installation
35
35
 
36
- The best way to install <tt>Whois</tt> is via [RubyGems](https://rubygems.org/) - [Learn more](http://www.ruby-whois.org/manual/installing/).
36
+ The best way to install <tt>Whois</tt> is via [RubyGems](https://rubygems.org/). [Learn more](http://ruby-whois.org/manual/installing/).
37
37
 
38
38
  $ gem install whois
39
39
 
40
40
 
41
41
  ## Getting Started
42
42
 
43
- Note. This section covers only the essentials for getting started with the Whois library. The [documentation](http://www.ruby-whois.org/documentation/) provides a more accurate explanation including tutorials, more examples and technical details about the client/server/record/parser architecture.
43
+ Note. This section covers only the essentials for getting started with the Whois library. The [documentation](http://ruby-whois.org/documentation/) provides a more accurate explanation including tutorials, more examples and technical details about the client/server/record/parser architecture.
44
44
 
45
45
  ### Querying a WHOIS
46
46
 
@@ -166,7 +166,7 @@ Report issues or feature requests to [GitHub Issues](https://github.com/weppos/w
166
166
 
167
167
  ## More Information
168
168
 
169
- - [Homepage](http://www.ruby-whois.org/)
169
+ - [Homepage](http://ruby-whois.org/)
170
170
  - [RubyGems](https://rubygems.org/gems/whois)
171
171
  - [Issues](https://github.com/weppos/whois)
172
172
  - [Stack Overflow](http://stackoverflow.com/questions/tagged/whois-ruby)
@@ -1,6 +1,5 @@
1
1
  {
2
2
  "0.0.0.0/8": {
3
- "host": null,
4
3
  "adapter": "none"
5
4
  },
6
5
  "1.0.0.0/8": {
@@ -628,7 +627,7 @@
628
627
  "host": "whois.nic.or.kr"
629
628
  },
630
629
  "211.192.0.0/10": {
631
- "host": "whois..net"
630
+ "host": "whois.nic.or.kr"
632
631
  },
633
632
  "210.0.0.0/7": {
634
633
  "host": "whois.apnic.net"
@@ -7,7 +7,13 @@
7
7
  #++
8
8
 
9
9
 
10
- require 'whois/core_ext'
10
+ require 'active_support/core_ext/array/extract_options'
11
+ require 'active_support/core_ext/array/wrap'
12
+ require 'active_support/core_ext/class/attribute'
13
+ require 'active_support/core_ext/kernel/singleton_class'
14
+ require 'active_support/core_ext/object/blank'
15
+ require 'active_support/core_ext/time/calculations'
16
+
11
17
  require 'whois/version'
12
18
  require 'whois/errors'
13
19
  require 'whois/client'
@@ -17,11 +23,6 @@ require 'whois/record'
17
23
 
18
24
  module Whois
19
25
 
20
- NAME = "Whois"
21
- GEM = "whois"
22
- AUTHORS = ["Simone Carletti <weppos@weppos.net>"]
23
-
24
-
25
26
  class << self
26
27
 
27
28
  # Queries the WHOIS server for <tt>object</tt> and returns
@@ -113,7 +113,8 @@ module Whois
113
113
  def self.host_to_parser(host)
114
114
  host.to_s.downcase.
115
115
  gsub(/[.-]/, '_').
116
- gsub(/(?:^|_)(.)/) { $1.upcase }
116
+ gsub(/(?:^|_)(.)/) { $1.upcase }.
117
+ gsub(/\A(\d+)\z/) { "Host#{$1}" }
117
118
  end
118
119
 
119
120
  # Requires the file at <tt>whois/record/parser/#{name}</tt>.
@@ -87,7 +87,7 @@ module Whois
87
87
  #
88
88
  property_supported :nameservers do
89
89
  node("nserver") do |values|
90
- values.map do |line|
90
+ Array.wrap(values).map do |line|
91
91
  name, ipv4 = line.split(/\s+/)
92
92
  Record::Nameserver.new(name: name, ipv4: ipv4)
93
93
  end
@@ -62,7 +62,7 @@ module Whois
62
62
  end
63
63
 
64
64
  property_supported :expires_on do
65
- node("Expiration Date") { |value| Time.parse(value) }
65
+ node("Registry Expiry Date") { |value| Time.parse(value) }
66
66
  end
67
67
 
68
68
 
@@ -0,0 +1,30 @@
1
+ #--
2
+ # Ruby Whois
3
+ #
4
+ # An intelligent pure Ruby WHOIS client and parser.
5
+ #
6
+ # Copyright (c) 2009-2014 Simone Carletti <weppos@weppos.net>
7
+ #++
8
+
9
+
10
+ require 'whois/record/parser/base_icann_compliant'
11
+
12
+
13
+ module Whois
14
+ class Record
15
+ class Parser
16
+
17
+ # Parser for the whois.markmonitor.com server.
18
+ #
19
+ # @see Whois::Record::Parser::Example
20
+ # The Example parser for the list of all available methods.
21
+ #
22
+ class WhoisCorporatedomainsCom < BaseIcannCompliant
23
+ self.scanner = Scanners::BaseIcannCompliant, {
24
+ pattern_available: /^No match for/
25
+ }
26
+ end
27
+
28
+ end
29
+ end
30
+ end
@@ -33,29 +33,29 @@ module Whois
33
33
  end
34
34
 
35
35
 
36
- # property_supported :created_on do
37
- # if content_for_scanner =~ /Created on: (.+)\n/
38
- # Time.parse($1)
39
- # end
40
- # end
41
- #
42
- # property_supported :updated_on do
43
- # if content_for_scanner =~ /Last Updated on: (.+)\n/
44
- # Time.parse($1)
45
- # end
46
- # end
47
- #
48
- # property_supported :expires_on do
49
- # if content_for_scanner =~ /Expires on: (.+)\n/
50
- # Time.parse($1)
51
- # end
52
- # end
36
+ property_supported :created_on do
37
+ if content_for_scanner =~ /Creation Date: (.+)\n/
38
+ Time.parse($1)
39
+ end
40
+ end
41
+
42
+ property_supported :updated_on do
43
+ if content_for_scanner =~ /Updated* Date: (.+)\n/
44
+ Time.parse($1)
45
+ end
46
+ end
47
+
48
+ property_supported :expires_on do
49
+ if content_for_scanner =~ /Expiration Date: (.+)\n/
50
+ Time.parse($1)
51
+ end
52
+ end
53
53
 
54
54
 
55
55
  property_supported :registrar do
56
56
  Record::Registrar.new(
57
57
  name: content_for_scanner[/Registrar: (.+)\n/, 1],
58
- url: "http://www.godaddy.com/"
58
+ url: content_for_scanner[/Registrar URL: (.+)\n/, 1],
59
59
  )
60
60
  end
61
61
 
@@ -7,8 +7,7 @@
7
7
  #++
8
8
 
9
9
 
10
- require 'whois/record/parser/base'
11
- require 'whois/record/scanners/base_shared3'
10
+ require 'whois/record/parser/base_icann_compliant'
12
11
 
13
12
 
14
13
  module Whois
@@ -17,7 +17,7 @@ module Whois
17
17
  # Parser for the whois.ua server.
18
18
  class WhoisUa < Base
19
19
 
20
- class Epp
20
+ class Uaepp
21
21
  attr_reader :parent, :content
22
22
 
23
23
  def initialize(parent, content)
@@ -28,7 +28,7 @@ module Whois
28
28
  def status
29
29
  if content =~ /status:\s+(.+?)\n/
30
30
  case (s = $1.downcase)
31
- when "ok", "clienthold", "autorenewgraceperiod"
31
+ when "ok", "clienthold", "autorenewgraceperiod", "clienttransferprohibited"
32
32
  :registered
33
33
  when "redemptionperiod", "pendingdelete"
34
34
  :redemption
@@ -230,7 +230,7 @@ module Whois
230
230
  if source == "UANIC"
231
231
  Uanic.new(self, content_for_scanner)
232
232
  else
233
- Epp.new(self, content_for_scanner)
233
+ Uaepp.new(self, content_for_scanner)
234
234
  end
235
235
  end
236
236
  end
@@ -21,6 +21,11 @@ module Whois
21
21
  #
22
22
  class WhoisVerisignGrsCom < BaseVerisign
23
23
 
24
+ property_supported :expires_on do
25
+ node("Expiration Date") { |value| Time.parse(value) }
26
+ end
27
+
28
+
24
29
  property_supported :registrar do
25
30
  node("Registrar") do |value|
26
31
  Whois::Record::Registrar.new(
@@ -8,7 +8,7 @@
8
8
 
9
9
 
10
10
  require 'whois/record/scanners/base'
11
-
11
+ require 'yaml'
12
12
 
13
13
  module Whois
14
14
  class Record
@@ -13,7 +13,7 @@ module Whois
13
13
  module Version
14
14
  MAJOR = 3
15
15
  MINOR = 5
16
- PATCH = 0
16
+ PATCH = 1
17
17
  BUILD = nil
18
18
 
19
19
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join(".")
@@ -1,40 +1,44 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ # stub: whois 3.5.0 ruby lib
2
3
 
3
4
  Gem::Specification.new do |s|
4
5
  s.name = "whois"
5
- s.version = "3.4.5"
6
+ s.version = "3.5.0"
6
7
 
7
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
+ s.require_paths = ["lib"]
8
10
  s.authors = ["Simone Carletti"]
9
- s.date = "2014-03-10"
11
+ s.date = "2014-03-31"
10
12
  s.description = "Whois is an intelligent WHOIS client and parser written in pure Ruby. It can query registry data for IPv4, IPv6 and top level domains, parse and convert responses into easy-to-use Ruby objects."
11
13
  s.email = ["weppos@weppos.net"]
12
14
  s.executables = ["ruby-whois"]
13
- s.files = ["LICENSE.txt", ".yardopts", "CHANGELOG.md", "README.md", "whois.gemspec", "bin/ruby-whois", "data/asn16.json", "data/asn32.json", "data/ipv4.json", "data/ipv6.json", "data/tld.json", "lib/whois", "lib/whois/client.rb", "lib/whois/core_ext", "lib/whois/core_ext/array", "lib/whois/core_ext/array/extract_options.rb", "lib/whois/core_ext/array/wrap.rb", "lib/whois/core_ext/class", "lib/whois/core_ext/class/attribute.rb", "lib/whois/core_ext/kernel", "lib/whois/core_ext/kernel/singleton_class.rb", "lib/whois/core_ext/module", "lib/whois/core_ext/module/remove_method.rb", "lib/whois/core_ext/object", "lib/whois/core_ext/object/blank.rb", "lib/whois/core_ext.rb", "lib/whois/errors.rb", "lib/whois/record", "lib/whois/record/contact.rb", "lib/whois/record/nameserver.rb", "lib/whois/record/parser", "lib/whois/record/parser/base.rb", "lib/whois/record/parser/base_afilias.rb", "lib/whois/record/parser/base_afilias2.rb", "lib/whois/record/parser/base_cocca.rb", "lib/whois/record/parser/base_cocca2.rb", "lib/whois/record/parser/base_icann_compliant.rb", "lib/whois/record/parser/base_icb.rb", "lib/whois/record/parser/base_iisse.rb", "lib/whois/record/parser/base_shared1.rb", "lib/whois/record/parser/base_shared2.rb", "lib/whois/record/parser/base_shared3.rb", "lib/whois/record/parser/base_verisign.rb", "lib/whois/record/parser/base_whoisd.rb", "lib/whois/record/parser/blank.rb", "lib/whois/record/parser/ccwhois.verisign-grs.com.rb", "lib/whois/record/parser/example.rb", "lib/whois/record/parser/jobswhois.verisign-grs.com.rb", "lib/whois/record/parser/kero.yachay.pe.rb", "lib/whois/record/parser/whois.1und1.info.rb", "lib/whois/record/parser/whois.adamsnames.tc.rb", "lib/whois/record/parser/whois.aeda.net.ae.rb", "lib/whois/record/parser/whois.aero.rb", "lib/whois/record/parser/whois.afilias-grs.info.rb", "lib/whois/record/parser/whois.afilias.info.rb", "lib/whois/record/parser/whois.ai.rb", "lib/whois/record/parser/whois.arnes.si.rb", "lib/whois/record/parser/whois.ascio.com.rb", "lib/whois/record/parser/whois.ati.tn.rb", "lib/whois/record/parser/whois.audns.net.au.rb", "lib/whois/record/parser/whois.ax.rb", "lib/whois/record/parser/whois.biz.rb", "lib/whois/record/parser/whois.bn.rb", "lib/whois/record/parser/whois.cat.rb", "lib/whois/record/parser/whois.cctld.by.rb", "lib/whois/record/parser/whois.cctld.uz.rb", "lib/whois/record/parser/whois.centralnic.com.rb", "lib/whois/record/parser/whois.cira.ca.rb", "lib/whois/record/parser/whois.cmc.iq.rb", "lib/whois/record/parser/whois.cnnic.cn.rb", "lib/whois/record/parser/whois.co.ca.rb", "lib/whois/record/parser/whois.co.pl.rb", "lib/whois/record/parser/whois.co.ug.rb", "lib/whois/record/parser/whois.comlaude.com.rb", "lib/whois/record/parser/whois.denic.de.rb", "lib/whois/record/parser/whois.dk-hostmaster.dk.rb", "lib/whois/record/parser/whois.dns.be.rb", "lib/whois/record/parser/whois.dns.hr.rb", "lib/whois/record/parser/whois.dns.lu.rb", "lib/whois/record/parser/whois.dns.pl.rb", "lib/whois/record/parser/whois.dns.pt.rb", "lib/whois/record/parser/whois.domain-registry.nl.rb", "lib/whois/record/parser/whois.domain.kg.rb", "lib/whois/record/parser/whois.domainregistry.ie.rb", "lib/whois/record/parser/whois.domainregistry.my.rb", "lib/whois/record/parser/whois.domreg.lt.rb", "lib/whois/record/parser/whois.dot.cf.rb", "lib/whois/record/parser/whois.dot.tk.rb", "lib/whois/record/parser/whois.dotmobiregistry.net.rb", "lib/whois/record/parser/whois.dotpostregistry.net.rb", "lib/whois/record/parser/whois.dreamhost.com.rb", "lib/whois/record/parser/whois.educause.edu.rb", "lib/whois/record/parser/whois.eenet.ee.rb", "lib/whois/record/parser/whois.enom.com.rb", "lib/whois/record/parser/whois.eu.org.rb", "lib/whois/record/parser/whois.eu.rb", "lib/whois/record/parser/whois.fi.rb", "lib/whois/record/parser/whois.gandi.net.rb", "lib/whois/record/parser/whois.gg.rb", "lib/whois/record/parser/whois.godaddy.com.rb", "lib/whois/record/parser/whois.gov.za.rb", "lib/whois/record/parser/whois.hkirc.hk.rb", "lib/whois/record/parser/whois.iam.net.ma.rb", "lib/whois/record/parser/whois.iana.org.rb", "lib/whois/record/parser/whois.iis.nu.rb", "lib/whois/record/parser/whois.iis.se.rb", "lib/whois/record/parser/whois.in.ua.rb", "lib/whois/record/parser/whois.isnic.is.rb", "lib/whois/record/parser/whois.isoc.org.il.rb", "lib/whois/record/parser/whois.ja.net.rb", "lib/whois/record/parser/whois.je.rb", "lib/whois/record/parser/whois.jprs.jp.rb", "lib/whois/record/parser/whois.kenic.or.ke.rb", "lib/whois/record/parser/whois.kr.rb", "lib/whois/record/parser/whois.markmonitor.com.rb", "lib/whois/record/parser/whois.meridiantld.net.rb", "lib/whois/record/parser/whois.monic.mo.rb", "lib/whois/record/parser/whois.museum.rb", "lib/whois/record/parser/whois.na-nic.com.na.rb", "lib/whois/record/parser/whois.nc.rb", "lib/whois/record/parser/whois.netcom.cm.rb", "lib/whois/record/parser/whois.networksolutions.com.rb", "lib/whois/record/parser/whois.nic.ac.rb", "lib/whois/record/parser/whois.nic.af.rb", "lib/whois/record/parser/whois.nic.ag.rb", "lib/whois/record/parser/whois.nic.am.rb", "lib/whois/record/parser/whois.nic.as.rb", "lib/whois/record/parser/whois.nic.asia.rb", "lib/whois/record/parser/whois.nic.at.rb", "lib/whois/record/parser/whois.nic.bj.rb", "lib/whois/record/parser/whois.nic.bo.rb", "lib/whois/record/parser/whois.nic.cd.rb", "lib/whois/record/parser/whois.nic.ch.rb", "lib/whois/record/parser/whois.nic.ci.rb", "lib/whois/record/parser/whois.nic.ck.rb", "lib/whois/record/parser/whois.nic.cl.rb", "lib/whois/record/parser/whois.nic.co.rb", "lib/whois/record/parser/whois.nic.coop.rb", "lib/whois/record/parser/whois.nic.cx.rb", "lib/whois/record/parser/whois.nic.cz.rb", "lib/whois/record/parser/whois.nic.dm.rb", "lib/whois/record/parser/whois.nic.dz.rb", "lib/whois/record/parser/whois.nic.ec.rb", "lib/whois/record/parser/whois.nic.es.rb", "lib/whois/record/parser/whois.nic.fo.rb", "lib/whois/record/parser/whois.nic.fr.rb", "lib/whois/record/parser/whois.nic.gd.rb", "lib/whois/record/parser/whois.nic.gl.rb", "lib/whois/record/parser/whois.nic.gov.rb", "lib/whois/record/parser/whois.nic.gs.rb", "lib/whois/record/parser/whois.nic.hn.rb", "lib/whois/record/parser/whois.nic.ht.rb", "lib/whois/record/parser/whois.nic.hu.rb", "lib/whois/record/parser/whois.nic.im.rb", "lib/whois/record/parser/whois.nic.io.rb", "lib/whois/record/parser/whois.nic.ir.rb", "lib/whois/record/parser/whois.nic.it.rb", "lib/whois/record/parser/whois.nic.ki.rb", "lib/whois/record/parser/whois.nic.kz.rb", "lib/whois/record/parser/whois.nic.la.rb", "lib/whois/record/parser/whois.nic.li.rb", "lib/whois/record/parser/whois.nic.lk.rb", "lib/whois/record/parser/whois.nic.lv.rb", "lib/whois/record/parser/whois.nic.ly.rb", "lib/whois/record/parser/whois.nic.md.rb", "lib/whois/record/parser/whois.nic.me.rb", "lib/whois/record/parser/whois.nic.mg.rb", "lib/whois/record/parser/whois.nic.ms.rb", "lib/whois/record/parser/whois.nic.mu.rb", "lib/whois/record/parser/whois.nic.mx.rb", "lib/whois/record/parser/whois.nic.name.rb", "lib/whois/record/parser/whois.nic.net.ng.rb", "lib/whois/record/parser/whois.nic.net.sa.rb", "lib/whois/record/parser/whois.nic.net.sb.rb", "lib/whois/record/parser/whois.nic.nf.rb", "lib/whois/record/parser/whois.nic.org.uy.rb", "lib/whois/record/parser/whois.nic.pr.rb", "lib/whois/record/parser/whois.nic.priv.at.rb", "lib/whois/record/parser/whois.nic.pw.rb", "lib/whois/record/parser/whois.nic.sh.rb", "lib/whois/record/parser/whois.nic.sl.rb", "lib/whois/record/parser/whois.nic.sm.rb", "lib/whois/record/parser/whois.nic.sn.rb", "lib/whois/record/parser/whois.nic.so.rb", "lib/whois/record/parser/whois.nic.st.rb", "lib/whois/record/parser/whois.nic.tel.rb", "lib/whois/record/parser/whois.nic.tl.rb", "lib/whois/record/parser/whois.nic.tm.rb", "lib/whois/record/parser/whois.nic.tr.rb", "lib/whois/record/parser/whois.nic.travel.rb", "lib/whois/record/parser/whois.nic.tv.rb", "lib/whois/record/parser/whois.nic.uk.rb", "lib/whois/record/parser/whois.nic.us.rb", "lib/whois/record/parser/whois.nic.ve.rb", "lib/whois/record/parser/whois.nic.xxx.rb", "lib/whois/record/parser/whois.norid.no.rb", "lib/whois/record/parser/whois.org.za.rb", "lib/whois/record/parser/whois.pairnic.com.rb", "lib/whois/record/parser/whois.pandi.or.id.rb", "lib/whois/record/parser/whois.pir.org.rb", "lib/whois/record/parser/whois.pnina.ps.rb", "lib/whois/record/parser/whois.register.bg.rb", "lib/whois/record/parser/whois.register.com.rb", "lib/whois/record/parser/whois.registro.br.rb", "lib/whois/record/parser/whois.registry.gy.rb", "lib/whois/record/parser/whois.registry.hm.rb", "lib/whois/record/parser/whois.registry.in.rb", "lib/whois/record/parser/whois.registry.net.za.rb", "lib/whois/record/parser/whois.registry.om.rb", "lib/whois/record/parser/whois.registry.qa.rb", "lib/whois/record/parser/whois.registrypro.pro.rb", "lib/whois/record/parser/whois.ripe.net.rb", "lib/whois/record/parser/whois.rnids.rs.rb", "lib/whois/record/parser/whois.rotld.ro.rb", "lib/whois/record/parser/whois.rrpproxy.net.rb", "lib/whois/record/parser/whois.schlund.info.rb", "lib/whois/record/parser/whois.sgnic.sg.rb", "lib/whois/record/parser/whois.sk-nic.sk.rb", "lib/whois/record/parser/whois.smallregistry.net.rb", "lib/whois/record/parser/whois.srs.net.nz.rb", "lib/whois/record/parser/whois.sx.rb", "lib/whois/record/parser/whois.tcinet.ru.rb", "lib/whois/record/parser/whois.thnic.co.th.rb", "lib/whois/record/parser/whois.tld.ee.rb", "lib/whois/record/parser/whois.tld.sy.rb", "lib/whois/record/parser/whois.tonic.to.rb", "lib/whois/record/parser/whois.tucows.com.rb", "lib/whois/record/parser/whois.twnic.net.tw.rb", "lib/whois/record/parser/whois.tznic.or.tz.rb", "lib/whois/record/parser/whois.ua.rb", "lib/whois/record/parser/whois.udag.net.rb", "lib/whois/record/parser/whois.usp.ac.fj.rb", "lib/whois/record/parser/whois.verisign-grs.com.rb", "lib/whois/record/parser/whois.website.ws.rb", "lib/whois/record/parser/whois.wildwestdomains.com.rb", "lib/whois/record/parser/whois.yoursrs.com.rb", "lib/whois/record/parser/whois.za.net.rb", "lib/whois/record/parser/whois.za.org.rb", "lib/whois/record/parser/whois1.nic.bi.rb", "lib/whois/record/parser.rb", "lib/whois/record/part.rb", "lib/whois/record/registrar.rb", "lib/whois/record/scanners", "lib/whois/record/scanners/base.rb", "lib/whois/record/scanners/base_afilias.rb", "lib/whois/record/scanners/base_cocca2.rb", "lib/whois/record/scanners/base_icann_compliant.rb", "lib/whois/record/scanners/base_iisse.rb", "lib/whois/record/scanners/base_shared1.rb", "lib/whois/record/scanners/base_shared2.rb", "lib/whois/record/scanners/base_shared3.rb", "lib/whois/record/scanners/base_whoisd.rb", "lib/whois/record/scanners/iana.rb", "lib/whois/record/scanners/scannable.rb", "lib/whois/record/scanners/verisign.rb", "lib/whois/record/scanners/whois.ati.tn.rb", "lib/whois/record/scanners/whois.audns.net.au.rb", "lib/whois/record/scanners/whois.cctld.by.rb", "lib/whois/record/scanners/whois.centralnic.com.rb", "lib/whois/record/scanners/whois.cira.ca.rb", "lib/whois/record/scanners/whois.cnnic.cn.rb", "lib/whois/record/scanners/whois.denic.de.rb", "lib/whois/record/scanners/whois.dns.hr.rb", "lib/whois/record/scanners/whois.domainregistry.ie.rb", "lib/whois/record/scanners/whois.fi.rb", "lib/whois/record/scanners/whois.nc.rb", "lib/whois/record/scanners/whois.nic.cz.rb", "lib/whois/record/scanners/whois.nic.it.rb", "lib/whois/record/scanners/whois.pir.org.rb", "lib/whois/record/scanners/whois.registry.net.za.rb", "lib/whois/record/scanners/whois.rnids.rs.rb", "lib/whois/record/scanners/whois.smallregistry.net.rb", "lib/whois/record/scanners/whois.srs.net.nz.rb", "lib/whois/record/scanners/whois.sx.rb", "lib/whois/record/scanners/whois.tucows.com.rb", "lib/whois/record/scanners/whois.yoursrs.com.rb", "lib/whois/record/super_struct.rb", "lib/whois/record.rb", "lib/whois/server", "lib/whois/server/adapters", "lib/whois/server/adapters/afilias.rb", "lib/whois/server/adapters/arin.rb", "lib/whois/server/adapters/arpa.rb", "lib/whois/server/adapters/base.rb", "lib/whois/server/adapters/formatted.rb", "lib/whois/server/adapters/none.rb", "lib/whois/server/adapters/not_implemented.rb", "lib/whois/server/adapters/standard.rb", "lib/whois/server/adapters/verisign.rb", "lib/whois/server/adapters/web.rb", "lib/whois/server/socket_handler.rb", "lib/whois/server.rb", "lib/whois/version.rb", "lib/whois.rb"]
15
+ s.files = [".yardopts", "CHANGELOG.md", "LICENSE.txt", "README.md", "bin/ruby-whois", "data/asn16.json", "data/asn32.json", "data/ipv4.json", "data/ipv6.json", "data/tld.json", "lib/whois", "lib/whois.rb", "lib/whois/client.rb", "lib/whois/errors.rb", "lib/whois/record", "lib/whois/record.rb", "lib/whois/record/contact.rb", "lib/whois/record/nameserver.rb", "lib/whois/record/parser", "lib/whois/record/parser.rb", "lib/whois/record/parser/base.rb", "lib/whois/record/parser/base_afilias.rb", "lib/whois/record/parser/base_afilias2.rb", "lib/whois/record/parser/base_cocca.rb", "lib/whois/record/parser/base_cocca2.rb", "lib/whois/record/parser/base_icann_compliant.rb", "lib/whois/record/parser/base_icb.rb", "lib/whois/record/parser/base_iisse.rb", "lib/whois/record/parser/base_shared1.rb", "lib/whois/record/parser/base_shared2.rb", "lib/whois/record/parser/base_shared3.rb", "lib/whois/record/parser/base_verisign.rb", "lib/whois/record/parser/base_whoisd.rb", "lib/whois/record/parser/blank.rb", "lib/whois/record/parser/ccwhois.verisign-grs.com.rb", "lib/whois/record/parser/example.rb", "lib/whois/record/parser/jobswhois.verisign-grs.com.rb", "lib/whois/record/parser/kero.yachay.pe.rb", "lib/whois/record/parser/whois.1und1.info.rb", "lib/whois/record/parser/whois.adamsnames.tc.rb", "lib/whois/record/parser/whois.aeda.net.ae.rb", "lib/whois/record/parser/whois.aero.rb", "lib/whois/record/parser/whois.afilias-grs.info.rb", "lib/whois/record/parser/whois.afilias.info.rb", "lib/whois/record/parser/whois.ai.rb", "lib/whois/record/parser/whois.arnes.si.rb", "lib/whois/record/parser/whois.ascio.com.rb", "lib/whois/record/parser/whois.ati.tn.rb", "lib/whois/record/parser/whois.audns.net.au.rb", "lib/whois/record/parser/whois.ax.rb", "lib/whois/record/parser/whois.biz.rb", "lib/whois/record/parser/whois.bn.rb", "lib/whois/record/parser/whois.cat.rb", "lib/whois/record/parser/whois.cctld.by.rb", "lib/whois/record/parser/whois.cctld.uz.rb", "lib/whois/record/parser/whois.centralnic.com.rb", "lib/whois/record/parser/whois.cira.ca.rb", "lib/whois/record/parser/whois.cmc.iq.rb", "lib/whois/record/parser/whois.cnnic.cn.rb", "lib/whois/record/parser/whois.co.ca.rb", "lib/whois/record/parser/whois.co.pl.rb", "lib/whois/record/parser/whois.co.ug.rb", "lib/whois/record/parser/whois.comlaude.com.rb", "lib/whois/record/parser/whois.corporatedomains.com.rb", "lib/whois/record/parser/whois.denic.de.rb", "lib/whois/record/parser/whois.dk-hostmaster.dk.rb", "lib/whois/record/parser/whois.dns.be.rb", "lib/whois/record/parser/whois.dns.hr.rb", "lib/whois/record/parser/whois.dns.lu.rb", "lib/whois/record/parser/whois.dns.pl.rb", "lib/whois/record/parser/whois.dns.pt.rb", "lib/whois/record/parser/whois.domain-registry.nl.rb", "lib/whois/record/parser/whois.domain.kg.rb", "lib/whois/record/parser/whois.domainregistry.ie.rb", "lib/whois/record/parser/whois.domainregistry.my.rb", "lib/whois/record/parser/whois.domreg.lt.rb", "lib/whois/record/parser/whois.donuts.co.rb", "lib/whois/record/parser/whois.dot.cf.rb", "lib/whois/record/parser/whois.dot.tk.rb", "lib/whois/record/parser/whois.dotmobiregistry.net.rb", "lib/whois/record/parser/whois.dotpostregistry.net.rb", "lib/whois/record/parser/whois.dreamhost.com.rb", "lib/whois/record/parser/whois.educause.edu.rb", "lib/whois/record/parser/whois.eenet.ee.rb", "lib/whois/record/parser/whois.enom.com.rb", "lib/whois/record/parser/whois.eu.org.rb", "lib/whois/record/parser/whois.eu.rb", "lib/whois/record/parser/whois.fi.rb", "lib/whois/record/parser/whois.gandi.net.rb", "lib/whois/record/parser/whois.gg.rb", "lib/whois/record/parser/whois.godaddy.com.rb", "lib/whois/record/parser/whois.gov.za.rb", "lib/whois/record/parser/whois.hkirc.hk.rb", "lib/whois/record/parser/whois.iam.net.ma.rb", "lib/whois/record/parser/whois.iana.org.rb", "lib/whois/record/parser/whois.iis.nu.rb", "lib/whois/record/parser/whois.iis.se.rb", "lib/whois/record/parser/whois.in.ua.rb", "lib/whois/record/parser/whois.isnic.is.rb", "lib/whois/record/parser/whois.isoc.org.il.rb", "lib/whois/record/parser/whois.ja.net.rb", "lib/whois/record/parser/whois.je.rb", "lib/whois/record/parser/whois.jprs.jp.rb", "lib/whois/record/parser/whois.kenic.or.ke.rb", "lib/whois/record/parser/whois.kr.rb", "lib/whois/record/parser/whois.markmonitor.com.rb", "lib/whois/record/parser/whois.meridiantld.net.rb", "lib/whois/record/parser/whois.monic.mo.rb", "lib/whois/record/parser/whois.museum.rb", "lib/whois/record/parser/whois.na-nic.com.na.rb", "lib/whois/record/parser/whois.nc.rb", "lib/whois/record/parser/whois.netcom.cm.rb", "lib/whois/record/parser/whois.networksolutions.com.rb", "lib/whois/record/parser/whois.nic.ac.rb", "lib/whois/record/parser/whois.nic.af.rb", "lib/whois/record/parser/whois.nic.ag.rb", "lib/whois/record/parser/whois.nic.am.rb", "lib/whois/record/parser/whois.nic.as.rb", "lib/whois/record/parser/whois.nic.asia.rb", "lib/whois/record/parser/whois.nic.at.rb", "lib/whois/record/parser/whois.nic.bj.rb", "lib/whois/record/parser/whois.nic.bo.rb", "lib/whois/record/parser/whois.nic.cd.rb", "lib/whois/record/parser/whois.nic.ch.rb", "lib/whois/record/parser/whois.nic.ci.rb", "lib/whois/record/parser/whois.nic.ck.rb", "lib/whois/record/parser/whois.nic.cl.rb", "lib/whois/record/parser/whois.nic.co.rb", "lib/whois/record/parser/whois.nic.coop.rb", "lib/whois/record/parser/whois.nic.cx.rb", "lib/whois/record/parser/whois.nic.cz.rb", "lib/whois/record/parser/whois.nic.dm.rb", "lib/whois/record/parser/whois.nic.dz.rb", "lib/whois/record/parser/whois.nic.ec.rb", "lib/whois/record/parser/whois.nic.es.rb", "lib/whois/record/parser/whois.nic.fo.rb", "lib/whois/record/parser/whois.nic.fr.rb", "lib/whois/record/parser/whois.nic.gd.rb", "lib/whois/record/parser/whois.nic.gl.rb", "lib/whois/record/parser/whois.nic.gov.rb", "lib/whois/record/parser/whois.nic.gs.rb", "lib/whois/record/parser/whois.nic.hn.rb", "lib/whois/record/parser/whois.nic.ht.rb", "lib/whois/record/parser/whois.nic.hu.rb", "lib/whois/record/parser/whois.nic.im.rb", "lib/whois/record/parser/whois.nic.io.rb", "lib/whois/record/parser/whois.nic.ir.rb", "lib/whois/record/parser/whois.nic.it.rb", "lib/whois/record/parser/whois.nic.ki.rb", "lib/whois/record/parser/whois.nic.kz.rb", "lib/whois/record/parser/whois.nic.la.rb", "lib/whois/record/parser/whois.nic.li.rb", "lib/whois/record/parser/whois.nic.lk.rb", "lib/whois/record/parser/whois.nic.lv.rb", "lib/whois/record/parser/whois.nic.ly.rb", "lib/whois/record/parser/whois.nic.md.rb", "lib/whois/record/parser/whois.nic.me.rb", "lib/whois/record/parser/whois.nic.mg.rb", "lib/whois/record/parser/whois.nic.ms.rb", "lib/whois/record/parser/whois.nic.mu.rb", "lib/whois/record/parser/whois.nic.mx.rb", "lib/whois/record/parser/whois.nic.name.rb", "lib/whois/record/parser/whois.nic.net.ng.rb", "lib/whois/record/parser/whois.nic.net.sa.rb", "lib/whois/record/parser/whois.nic.net.sb.rb", "lib/whois/record/parser/whois.nic.nf.rb", "lib/whois/record/parser/whois.nic.org.uy.rb", "lib/whois/record/parser/whois.nic.pr.rb", "lib/whois/record/parser/whois.nic.priv.at.rb", "lib/whois/record/parser/whois.nic.pw.rb", "lib/whois/record/parser/whois.nic.sh.rb", "lib/whois/record/parser/whois.nic.sl.rb", "lib/whois/record/parser/whois.nic.sm.rb", "lib/whois/record/parser/whois.nic.sn.rb", "lib/whois/record/parser/whois.nic.so.rb", "lib/whois/record/parser/whois.nic.st.rb", "lib/whois/record/parser/whois.nic.tel.rb", "lib/whois/record/parser/whois.nic.tl.rb", "lib/whois/record/parser/whois.nic.tm.rb", "lib/whois/record/parser/whois.nic.tr.rb", "lib/whois/record/parser/whois.nic.travel.rb", "lib/whois/record/parser/whois.nic.tv.rb", "lib/whois/record/parser/whois.nic.uk.rb", "lib/whois/record/parser/whois.nic.us.rb", "lib/whois/record/parser/whois.nic.ve.rb", "lib/whois/record/parser/whois.nic.xxx.rb", "lib/whois/record/parser/whois.norid.no.rb", "lib/whois/record/parser/whois.org.za.rb", "lib/whois/record/parser/whois.pairnic.com.rb", "lib/whois/record/parser/whois.pandi.or.id.rb", "lib/whois/record/parser/whois.pir.org.rb", "lib/whois/record/parser/whois.pnina.ps.rb", "lib/whois/record/parser/whois.register.bg.rb", "lib/whois/record/parser/whois.register.com.rb", "lib/whois/record/parser/whois.registro.br.rb", "lib/whois/record/parser/whois.registry.gy.rb", "lib/whois/record/parser/whois.registry.hm.rb", "lib/whois/record/parser/whois.registry.in.rb", "lib/whois/record/parser/whois.registry.net.za.rb", "lib/whois/record/parser/whois.registry.om.rb", "lib/whois/record/parser/whois.registry.qa.rb", "lib/whois/record/parser/whois.registrypro.pro.rb", "lib/whois/record/parser/whois.ripe.net.rb", "lib/whois/record/parser/whois.rnids.rs.rb", "lib/whois/record/parser/whois.rotld.ro.rb", "lib/whois/record/parser/whois.rrpproxy.net.rb", "lib/whois/record/parser/whois.schlund.info.rb", "lib/whois/record/parser/whois.sgnic.sg.rb", "lib/whois/record/parser/whois.sk-nic.sk.rb", "lib/whois/record/parser/whois.smallregistry.net.rb", "lib/whois/record/parser/whois.srs.net.nz.rb", "lib/whois/record/parser/whois.sx.rb", "lib/whois/record/parser/whois.tcinet.ru.rb", "lib/whois/record/parser/whois.thnic.co.th.rb", "lib/whois/record/parser/whois.tld.ee.rb", "lib/whois/record/parser/whois.tld.sy.rb", "lib/whois/record/parser/whois.tonic.to.rb", "lib/whois/record/parser/whois.tucows.com.rb", "lib/whois/record/parser/whois.twnic.net.tw.rb", "lib/whois/record/parser/whois.tznic.or.tz.rb", "lib/whois/record/parser/whois.ua.rb", "lib/whois/record/parser/whois.udag.net.rb", "lib/whois/record/parser/whois.uniregistry.net.rb", "lib/whois/record/parser/whois.usp.ac.fj.rb", "lib/whois/record/parser/whois.verisign-grs.com.rb", "lib/whois/record/parser/whois.website.ws.rb", "lib/whois/record/parser/whois.wildwestdomains.com.rb", "lib/whois/record/parser/whois.yoursrs.com.rb", "lib/whois/record/parser/whois.za.net.rb", "lib/whois/record/parser/whois.za.org.rb", "lib/whois/record/parser/whois1.nic.bi.rb", "lib/whois/record/part.rb", "lib/whois/record/registrar.rb", "lib/whois/record/scanners", "lib/whois/record/scanners/base.rb", "lib/whois/record/scanners/base_afilias.rb", "lib/whois/record/scanners/base_cocca2.rb", "lib/whois/record/scanners/base_icann_compliant.rb", "lib/whois/record/scanners/base_iisse.rb", "lib/whois/record/scanners/base_shared1.rb", "lib/whois/record/scanners/base_shared2.rb", "lib/whois/record/scanners/base_shared3.rb", "lib/whois/record/scanners/base_whoisd.rb", "lib/whois/record/scanners/iana.rb", "lib/whois/record/scanners/scannable.rb", "lib/whois/record/scanners/verisign.rb", "lib/whois/record/scanners/whois.ati.tn.rb", "lib/whois/record/scanners/whois.audns.net.au.rb", "lib/whois/record/scanners/whois.cctld.by.rb", "lib/whois/record/scanners/whois.centralnic.com.rb", "lib/whois/record/scanners/whois.cira.ca.rb", "lib/whois/record/scanners/whois.cnnic.cn.rb", "lib/whois/record/scanners/whois.denic.de.rb", "lib/whois/record/scanners/whois.dns.hr.rb", "lib/whois/record/scanners/whois.domainregistry.ie.rb", "lib/whois/record/scanners/whois.fi.rb", "lib/whois/record/scanners/whois.nc.rb", "lib/whois/record/scanners/whois.nic.cz.rb", "lib/whois/record/scanners/whois.nic.it.rb", "lib/whois/record/scanners/whois.pir.org.rb", "lib/whois/record/scanners/whois.registry.net.za.rb", "lib/whois/record/scanners/whois.rnids.rs.rb", "lib/whois/record/scanners/whois.smallregistry.net.rb", "lib/whois/record/scanners/whois.srs.net.nz.rb", "lib/whois/record/scanners/whois.sx.rb", "lib/whois/record/scanners/whois.tucows.com.rb", "lib/whois/record/scanners/whois.yoursrs.com.rb", "lib/whois/record/super_struct.rb", "lib/whois/server", "lib/whois/server.rb", "lib/whois/server/adapters", "lib/whois/server/adapters/afilias.rb", "lib/whois/server/adapters/arin.rb", "lib/whois/server/adapters/arpa.rb", "lib/whois/server/adapters/base.rb", "lib/whois/server/adapters/formatted.rb", "lib/whois/server/adapters/none.rb", "lib/whois/server/adapters/not_implemented.rb", "lib/whois/server/adapters/standard.rb", "lib/whois/server/adapters/verisign.rb", "lib/whois/server/adapters/web.rb", "lib/whois/server/socket_handler.rb", "lib/whois/version.rb", "whois.gemspec"]
14
16
  s.homepage = "http://www.ruby-whois.org/"
15
17
  s.licenses = ["MIT"]
16
18
  s.post_install_message = "********************************************************************************\n\n Thank you for installing the whois gem!\n\n If you like this gem, please support the project.\n http://pledgie.com/campaigns/11383\n\n Does your project or organization use this gem? Add it to the apps wiki.\n https://github.com/weppos/whois/wiki/apps\n\n Are you looking for a quick and convenient way to perform WHOIS queries?\n Check out RoboWhois WHOIS API.\n https://www.robowhois.com/\n\n********************************************************************************\n"
17
- s.require_paths = ["lib"]
18
19
  s.required_ruby_version = Gem::Requirement.new(">= 1.9.2")
19
20
  s.rubyforge_project = "whois"
20
- s.rubygems_version = "2.0.14"
21
+ s.rubygems_version = "2.2.2"
21
22
  s.summary = "An intelligent pure Ruby WHOIS client and parser."
22
23
 
23
24
  if s.respond_to? :specification_version then
24
25
  s.specification_version = 4
25
26
 
26
27
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
28
+ s.add_runtime_dependency(%q<activesupport>, [">= 3"])
27
29
  s.add_development_dependency(%q<rake>, [">= 0"])
28
30
  s.add_development_dependency(%q<rspec>, [">= 0"])
29
31
  s.add_development_dependency(%q<mocha>, [">= 0"])
30
32
  s.add_development_dependency(%q<yard>, [">= 0"])
31
33
  else
34
+ s.add_dependency(%q<activesupport>, [">= 3"])
32
35
  s.add_dependency(%q<rake>, [">= 0"])
33
36
  s.add_dependency(%q<rspec>, [">= 0"])
34
37
  s.add_dependency(%q<mocha>, [">= 0"])
35
38
  s.add_dependency(%q<yard>, [">= 0"])
36
39
  end
37
40
  else
41
+ s.add_dependency(%q<activesupport>, [">= 3"])
38
42
  s.add_dependency(%q<rake>, [">= 0"])
39
43
  s.add_dependency(%q<rspec>, [">= 0"])
40
44
  s.add_dependency(%q<mocha>, [">= 0"])
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: whois
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.5.0
4
+ version: 3.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Simone Carletti
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-16 00:00:00.000000000 Z
11
+ date: 2014-03-31 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: activesupport
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '3'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '3'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: rake
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -76,29 +90,23 @@ executables:
76
90
  extensions: []
77
91
  extra_rdoc_files: []
78
92
  files:
79
- - LICENSE.txt
80
93
  - .yardopts
81
94
  - CHANGELOG.md
95
+ - LICENSE.txt
82
96
  - README.md
83
- - whois.gemspec
84
97
  - bin/ruby-whois
85
98
  - data/asn16.json
86
99
  - data/asn32.json
87
100
  - data/ipv4.json
88
101
  - data/ipv6.json
89
102
  - data/tld.json
103
+ - lib/whois.rb
90
104
  - lib/whois/client.rb
91
- - lib/whois/core_ext/array/extract_options.rb
92
- - lib/whois/core_ext/array/wrap.rb
93
- - lib/whois/core_ext/class/attribute.rb
94
- - lib/whois/core_ext/kernel/singleton_class.rb
95
- - lib/whois/core_ext/module/remove_method.rb
96
- - lib/whois/core_ext/object/blank.rb
97
- - lib/whois/core_ext/time/calculations.rb
98
- - lib/whois/core_ext.rb
99
105
  - lib/whois/errors.rb
106
+ - lib/whois/record.rb
100
107
  - lib/whois/record/contact.rb
101
108
  - lib/whois/record/nameserver.rb
109
+ - lib/whois/record/parser.rb
102
110
  - lib/whois/record/parser/base.rb
103
111
  - lib/whois/record/parser/base_afilias.rb
104
112
  - lib/whois/record/parser/base_afilias2.rb
@@ -142,6 +150,7 @@ files:
142
150
  - lib/whois/record/parser/whois.co.pl.rb
143
151
  - lib/whois/record/parser/whois.co.ug.rb
144
152
  - lib/whois/record/parser/whois.comlaude.com.rb
153
+ - lib/whois/record/parser/whois.corporatedomains.com.rb
145
154
  - lib/whois/record/parser/whois.denic.de.rb
146
155
  - lib/whois/record/parser/whois.dk-hostmaster.dk.rb
147
156
  - lib/whois/record/parser/whois.dns.be.rb
@@ -309,7 +318,6 @@ files:
309
318
  - lib/whois/record/parser/whois.za.net.rb
310
319
  - lib/whois/record/parser/whois.za.org.rb
311
320
  - lib/whois/record/parser/whois1.nic.bi.rb
312
- - lib/whois/record/parser.rb
313
321
  - lib/whois/record/part.rb
314
322
  - lib/whois/record/registrar.rb
315
323
  - lib/whois/record/scanners/base.rb
@@ -346,7 +354,7 @@ files:
346
354
  - lib/whois/record/scanners/whois.tucows.com.rb
347
355
  - lib/whois/record/scanners/whois.yoursrs.com.rb
348
356
  - lib/whois/record/super_struct.rb
349
- - lib/whois/record.rb
357
+ - lib/whois/server.rb
350
358
  - lib/whois/server/adapters/afilias.rb
351
359
  - lib/whois/server/adapters/arin.rb
352
360
  - lib/whois/server/adapters/arpa.rb
@@ -358,9 +366,8 @@ files:
358
366
  - lib/whois/server/adapters/verisign.rb
359
367
  - lib/whois/server/adapters/web.rb
360
368
  - lib/whois/server/socket_handler.rb
361
- - lib/whois/server.rb
362
369
  - lib/whois/version.rb
363
- - lib/whois.rb
370
+ - whois.gemspec
364
371
  homepage: http://www.ruby-whois.org/
365
372
  licenses:
366
373
  - MIT
@@ -396,7 +403,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
396
403
  version: '0'
397
404
  requirements: []
398
405
  rubyforge_project: whois
399
- rubygems_version: 2.0.14
406
+ rubygems_version: 2.2.2
400
407
  signing_key:
401
408
  specification_version: 4
402
409
  summary: An intelligent pure Ruby WHOIS client and parser.
@@ -1,11 +0,0 @@
1
- if defined?(ActiveSupport::VERSION) && ActiveSupport::VERSION::MAJOR == 3
2
- require 'active_support/core_ext/array/wrap'
3
- require 'active_support/core_ext/class/attribute'
4
- require 'active_support/core_ext/object/blank'
5
- else
6
- require 'whois/core_ext/array/wrap'
7
- require 'whois/core_ext/class/attribute'
8
- require 'whois/core_ext/object/blank'
9
- end
10
-
11
- require 'whois/core_ext/time/calculations'
@@ -1,29 +0,0 @@
1
- class Hash
2
- # By default, only instances of Hash itself are extractable.
3
- # Subclasses of Hash may implement this method and return
4
- # true to declare themselves as extractable. If a Hash
5
- # is extractable, Array#extract_options! pops it from
6
- # the Array when it is the last element of the Array.
7
- def extractable_options?
8
- instance_of?(Hash)
9
- end
10
- end
11
-
12
- class Array
13
- # Extracts options from a set of arguments. Removes and returns the last
14
- # element in the array if it's a hash, otherwise returns a blank hash.
15
- #
16
- # def options(*args)
17
- # args.extract_options!
18
- # end
19
- #
20
- # options(1, 2) # => {}
21
- # options(1, 2, a: :b) # => {:a=>:b}
22
- def extract_options!
23
- if last.is_a?(Hash) && last.extractable_options?
24
- pop
25
- else
26
- {}
27
- end
28
- end
29
- end
@@ -1,45 +0,0 @@
1
- class Array
2
- # Wraps its argument in an array unless it is already an array (or array-like).
3
- #
4
- # Specifically:
5
- #
6
- # * If the argument is +nil+ an empty list is returned.
7
- # * Otherwise, if the argument responds to +to_ary+ it is invoked, and its result returned.
8
- # * Otherwise, returns an array with the argument as its single element.
9
- #
10
- # Array.wrap(nil) # => []
11
- # Array.wrap([1, 2, 3]) # => [1, 2, 3]
12
- # Array.wrap(0) # => [0]
13
- #
14
- # This method is similar in purpose to <tt>Kernel#Array</tt>, but there are some differences:
15
- #
16
- # * If the argument responds to +to_ary+ the method is invoked. <tt>Kernel#Array</tt>
17
- # moves on to try +to_a+ if the returned value is +nil+, but <tt>Array.wrap</tt> returns
18
- # +nil+ right away.
19
- # * If the returned value from +to_ary+ is neither +nil+ nor an +Array+ object, <tt>Kernel#Array</tt>
20
- # raises an exception, while <tt>Array.wrap</tt> does not, it just returns the value.
21
- # * It does not call +to_a+ on the argument, but returns an empty array if argument is +nil+.
22
- #
23
- # The second point is easily explained with some enumerables:
24
- #
25
- # Array(foo: :bar) # => [[:foo, :bar]]
26
- # Array.wrap(foo: :bar) # => [{:foo=>:bar}]
27
- #
28
- # There's also a related idiom that uses the splat operator:
29
- #
30
- # [*object]
31
- #
32
- # which returns <tt>[]</tt> for +nil+, but calls to <tt>Array(object)</tt> otherwise.
33
- #
34
- # The differences with <tt>Kernel#Array</tt> explained above
35
- # apply to the rest of <tt>object</tt>s.
36
- def self.wrap(object)
37
- if object.nil?
38
- []
39
- elsif object.respond_to?(:to_ary)
40
- object.to_ary || [object]
41
- else
42
- [object]
43
- end
44
- end
45
- end
@@ -1,115 +0,0 @@
1
- require 'whois/core_ext/kernel/singleton_class'
2
- require 'whois/core_ext/module/remove_method'
3
- require 'whois/core_ext/array/extract_options'
4
-
5
- class Class
6
- # Declare a class-level attribute whose value is inheritable by subclasses.
7
- # Subclasses can change their own value and it will not impact parent class.
8
- #
9
- # class Base
10
- # class_attribute :setting
11
- # end
12
- #
13
- # class Subclass < Base
14
- # end
15
- #
16
- # Base.setting = true
17
- # Subclass.setting # => true
18
- # Subclass.setting = false
19
- # Subclass.setting # => false
20
- # Base.setting # => true
21
- #
22
- # In the above case as long as Subclass does not assign a value to setting
23
- # by performing <tt>Subclass.setting = _something_ </tt>, <tt>Subclass.setting</tt>
24
- # would read value assigned to parent class. Once Subclass assigns a value then
25
- # the value assigned by Subclass would be returned.
26
- #
27
- # This matches normal Ruby method inheritance: think of writing an attribute
28
- # on a subclass as overriding the reader method. However, you need to be aware
29
- # when using +class_attribute+ with mutable structures as +Array+ or +Hash+.
30
- # In such cases, you don't want to do changes in places but use setters:
31
- #
32
- # Base.setting = []
33
- # Base.setting # => []
34
- # Subclass.setting # => []
35
- #
36
- # # Appending in child changes both parent and child because it is the same object:
37
- # Subclass.setting << :foo
38
- # Base.setting # => [:foo]
39
- # Subclass.setting # => [:foo]
40
- #
41
- # # Use setters to not propagate changes:
42
- # Base.setting = []
43
- # Subclass.setting += [:foo]
44
- # Base.setting # => []
45
- # Subclass.setting # => [:foo]
46
- #
47
- # For convenience, a query method is defined as well:
48
- #
49
- # Subclass.setting? # => false
50
- #
51
- # Instances may overwrite the class value in the same way:
52
- #
53
- # Base.setting = true
54
- # object = Base.new
55
- # object.setting # => true
56
- # object.setting = false
57
- # object.setting # => false
58
- # Base.setting # => true
59
- #
60
- # To opt out of the instance reader method, pass :instance_reader => false.
61
- #
62
- # object.setting # => NoMethodError
63
- # object.setting? # => NoMethodError
64
- #
65
- # To opt out of the instance writer method, pass :instance_writer => false.
66
- #
67
- # object.setting = false # => NoMethodError
68
- def class_attribute(*attrs)
69
- options = attrs.extract_options!
70
- instance_reader = options.fetch(:instance_reader, true)
71
- instance_writer = options.fetch(:instance_writer, true)
72
-
73
- attrs.each do |name|
74
- class_eval <<-RUBY, __FILE__, __LINE__ + 1
75
- def self.#{name}() nil end
76
- def self.#{name}?() !!#{name} end
77
-
78
- def self.#{name}=(val)
79
- singleton_class.class_eval do
80
- remove_possible_method(:#{name})
81
- define_method(:#{name}) { val }
82
- end
83
-
84
- if singleton_class?
85
- class_eval do
86
- remove_possible_method(:#{name})
87
- def #{name}
88
- defined?(@#{name}) ? @#{name} : singleton_class.#{name}
89
- end
90
- end
91
- end
92
- val
93
- end
94
-
95
- if instance_reader
96
- remove_possible_method :#{name}
97
- def #{name}
98
- defined?(@#{name}) ? @#{name} : self.class.#{name}
99
- end
100
-
101
- def #{name}?
102
- !!#{name}
103
- end
104
- end
105
- RUBY
106
-
107
- attr_writer name if instance_writer
108
- end
109
- end
110
-
111
- private
112
- def singleton_class?
113
- !name || '' == name
114
- end
115
- end
@@ -1,13 +0,0 @@
1
- module Kernel
2
- # Returns the object's singleton class.
3
- def singleton_class
4
- class << self
5
- self
6
- end
7
- end unless respond_to?(:singleton_class) # exists in 1.9.2
8
-
9
- # class_eval on an object acts like singleton_class.class_eval.
10
- def class_eval(*args, &block)
11
- singleton_class.class_eval(*args, &block)
12
- end
13
- end
@@ -1,16 +0,0 @@
1
- class Module
2
- def remove_possible_method(method)
3
- if method_defined?(method) || private_method_defined?(method)
4
- remove_method(method)
5
- end
6
- rescue NameError
7
- # If the requested method is defined on a superclass or included module,
8
- # method_defined? returns true but remove_method throws a NameError.
9
- # Ignore this.
10
- end
11
-
12
- def redefine_method(method, &block)
13
- remove_possible_method(method)
14
- define_method(method, &block)
15
- end
16
- end
@@ -1,105 +0,0 @@
1
- # encoding: utf-8
2
-
3
- class Object
4
- # An object is blank if it's false, empty, or a whitespace string.
5
- # For example, '', ' ', +nil+, [], and {} are all blank.
6
- #
7
- # This simplifies:
8
- #
9
- # if address.nil? || address.empty?
10
- #
11
- # ...to:
12
- #
13
- # if address.blank?
14
- def blank?
15
- respond_to?(:empty?) ? empty? : !self
16
- end
17
-
18
- # An object is present if it's not <tt>blank?</tt>.
19
- def present?
20
- !blank?
21
- end
22
-
23
- # Returns object if it's <tt>present?</tt> otherwise returns +nil+.
24
- # <tt>object.presence</tt> is equivalent to <tt>object.present? ? object : nil</tt>.
25
- #
26
- # This is handy for any representation of objects where blank is the same
27
- # as not present at all. For example, this simplifies a common check for
28
- # HTTP POST/query parameters:
29
- #
30
- # state = params[:state] if params[:state].present?
31
- # country = params[:country] if params[:country].present?
32
- # region = state || country || 'US'
33
- #
34
- # ...becomes:
35
- #
36
- # region = params[:state].presence || params[:country].presence || 'US'
37
- def presence
38
- self if present?
39
- end
40
- end
41
-
42
- class NilClass
43
- # +nil+ is blank:
44
- #
45
- # nil.blank? # => true
46
- def blank?
47
- true
48
- end
49
- end
50
-
51
- class FalseClass
52
- # +false+ is blank:
53
- #
54
- # false.blank? # => true
55
- def blank?
56
- true
57
- end
58
- end
59
-
60
- class TrueClass
61
- # +true+ is not blank:
62
- #
63
- # true.blank? # => false
64
- def blank?
65
- false
66
- end
67
- end
68
-
69
- class Array
70
- # An array is blank if it's empty:
71
- #
72
- # [].blank? # => true
73
- # [1,2,3].blank? # => false
74
- alias_method :blank?, :empty?
75
- end
76
-
77
- class Hash
78
- # A hash is blank if it's empty:
79
- #
80
- # {}.blank? # => true
81
- # { key: 'value' }.blank? # => false
82
- alias_method :blank?, :empty?
83
- end
84
-
85
- class String
86
- # A string is blank if it's empty or contains whitespaces only:
87
- #
88
- # ''.blank? # => true
89
- # ' '.blank? # => true
90
- # ' '.blank? # => true
91
- # ' something here '.blank? # => false
92
- def blank?
93
- self !~ /[^[:space:]]/
94
- end
95
- end
96
-
97
- class Numeric #:nodoc:
98
- # No number is blank:
99
- #
100
- # 1.blank? # => false
101
- # 0.blank? # => false
102
- def blank?
103
- false
104
- end
105
- end
@@ -1,32 +0,0 @@
1
- class Time
2
-
3
- # Returns a new Time where one or more of the elements have been changed according
4
- # to the +options+ parameter. The time options (<tt>:hour</tt>, <tt>:min</tt>,
5
- # <tt>:sec</tt>, <tt>:usec</tt>) reset cascadingly, so if only the hour is passed,
6
- # then minute, sec, and usec is set to 0. If the hour and minute is passed, then
7
- # sec and usec is set to 0. The +options+ parameter takes a hash with any of these
8
- # keys: <tt>:year</tt>, <tt>:month</tt>, <tt>:day</tt>, <tt>:hour</tt>, <tt>:min</tt>,
9
- # <tt>:sec</tt>, <tt>:usec</tt>.
10
- #
11
- # Time.new(2012, 8, 29, 22, 35, 0).change(day: 1) # => Time.new(2012, 8, 1, 22, 35, 0)
12
- # Time.new(2012, 8, 29, 22, 35, 0).change(year: 1981, day: 1) # => Time.new(1981, 8, 1, 22, 35, 0)
13
- # Time.new(2012, 8, 29, 22, 35, 0).change(year: 1981, hour: 0) # => Time.new(1981, 8, 29, 0, 0, 0)
14
- def change(options)
15
- new_year = options.fetch(:year, year)
16
- new_month = options.fetch(:month, month)
17
- new_day = options.fetch(:day, day)
18
- new_hour = options.fetch(:hour, hour)
19
- new_min = options.fetch(:min, options[:hour] ? 0 : min)
20
- new_sec = options.fetch(:sec, (options[:hour] || options[:min]) ? 0 : sec)
21
- new_usec = options.fetch(:usec, (options[:hour] || options[:min] || options[:sec]) ? 0 : Rational(nsec, 1000))
22
-
23
- if utc?
24
- ::Time.utc(new_year, new_month, new_day, new_hour, new_min, new_sec, new_usec)
25
- elsif zone
26
- ::Time.local(new_year, new_month, new_day, new_hour, new_min, new_sec, new_usec)
27
- else
28
- ::Time.new(new_year, new_month, new_day, new_hour, new_min, new_sec + (new_usec.to_r / 1000000), utc_offset)
29
- end
30
- end unless method_defined? :change
31
-
32
- end