whois 5.0.0 → 5.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/dependabot.yml +8 -0
- data/.github/workflows/codeql-analysis.yml +64 -0
- data/.github/workflows/release.yml +16 -0
- data/.github/workflows/tests.yml +29 -0
- data/.rubocop.yml +27 -0
- data/.rubocop_opinionated.yml +135 -0
- data/.rubocop_todo.yml +166 -0
- data/.simplecov +2 -0
- data/.tool-versions +1 -0
- data/CHANGELOG.md +79 -50
- data/CONTRIBUTING.md +12 -12
- data/Gemfile +5 -0
- data/LICENSE.txt +1 -1
- data/README.md +22 -22
- data/Rakefile +12 -17
- data/bin/console +1 -0
- data/bin/whoisrb +3 -2
- data/data/ipv4.json +1 -3
- data/data/tld.json +2 -99
- data/lib/whois/client.rb +4 -2
- data/lib/whois/errors.rb +4 -2
- data/lib/whois/record/part.rb +5 -4
- data/lib/whois/record.rb +4 -2
- data/lib/whois/server/adapters/afilias.rb +4 -1
- data/lib/whois/server/adapters/arin.rb +7 -4
- data/lib/whois/server/adapters/arpa.rb +20 -19
- data/lib/whois/server/adapters/base.rb +26 -40
- data/lib/whois/server/adapters/formatted.rb +4 -2
- data/lib/whois/server/adapters/none.rb +3 -1
- data/lib/whois/server/adapters/not_implemented.rb +3 -1
- data/lib/whois/server/adapters/standard.rb +4 -2
- data/lib/whois/server/adapters/verisign.rb +4 -1
- data/lib/whois/server/adapters/web.rb +3 -1
- data/lib/whois/server/socket_handler.rb +8 -6
- data/lib/whois/server.rb +55 -53
- data/lib/whois/version.rb +4 -2
- data/lib/whois.rb +13 -11
- data/spec/integration/whois_spec.rb +6 -6
- data/spec/spec_helper.rb +4 -4
- data/spec/support/helpers/connectivity_helper.rb +3 -3
- data/spec/support/helpers/spec_helper.rb +2 -0
- data/spec/whois/client_spec.rb +6 -7
- data/spec/whois/record/part_spec.rb +4 -4
- data/spec/whois/record_spec.rb +9 -7
- data/spec/whois/server/adapters/afilias_spec.rb +4 -4
- data/spec/whois/server/adapters/arin_spec.rb +9 -10
- data/spec/whois/server/adapters/arpa_spec.rb +2 -2
- data/spec/whois/server/adapters/base_spec.rb +13 -13
- data/spec/whois/server/adapters/formatted_spec.rb +8 -8
- data/spec/whois/server/adapters/none_spec.rb +2 -2
- data/spec/whois/server/adapters/not_implemented_spec.rb +4 -4
- data/spec/whois/server/adapters/standard_spec.rb +5 -5
- data/spec/whois/server/adapters/verisign_spec.rb +5 -5
- data/spec/whois/server/adapters/web_spec.rb +4 -4
- data/spec/whois/server/socket_handler_spec.rb +7 -5
- data/spec/whois/server_spec.rb +31 -29
- data/spec/whois/{errors_spec.rb → web_interface_error_spec.rb} +4 -4
- data/spec/whois/whois_spec.rb +3 -3
- data/utils/compare-whois.rb +1 -1
- data/utils/matrix.rb +1 -1
- metadata +13 -39
- data/.travis.yml +0 -18
- data/bin/setup +0 -8
- data/tasks/spec.rake +0 -199
data/CHANGELOG.md
CHANGED
@@ -3,15 +3,44 @@
|
|
3
3
|
This project uses [Semantic Versioning 2.0.0](http://semver.org/).
|
4
4
|
|
5
5
|
|
6
|
-
|
6
|
+
## Release 5.1.0
|
7
7
|
|
8
|
-
|
9
|
-
- SERVER: Update Amazon Registry whois hosts
|
8
|
+
### Changed
|
10
9
|
|
11
|
-
-
|
10
|
+
- SERVER: Deleted .VISTAPRINT, .XN--ESTV75G
|
11
|
+
- CHANGED: Eager load all adapters (GH-644). Thanks @casperisfine @byroot
|
12
12
|
|
13
13
|
|
14
|
-
|
14
|
+
## Release 5.0.2
|
15
|
+
|
16
|
+
### Changed
|
17
|
+
|
18
|
+
- SERVER: Update 43.0.0.0/8 allocation (GH-615). Thanks @taketo1113
|
19
|
+
- SERVER: Deleted .LIAISON, .MOVISTAR, .TELEFONICA, .BNL, .CARTIER, .EVERBANK, .LADBROKES, .PIAGET, .STARHUB, .MOPAR, .MOBILY, .ISELECT, .XN--MGBB9FBPOB, .DODGE, .WARMAN, .DUNS, .LANCOME, .CHRYSLER, .SRT, .UCONNECT
|
20
|
+
- SERVER: Update .STREAM
|
21
|
+
|
22
|
+
|
23
|
+
## Release 5.0.1
|
24
|
+
|
25
|
+
### Changed
|
26
|
+
|
27
|
+
- Use `String#match?` rather than `#=~` to improve performance (GH-589). Thanks @casperisfine @byroot
|
28
|
+
- Empty Hash allocation optimization (GH-588). Thanks @casperisfine @byroot
|
29
|
+
|
30
|
+
|
31
|
+
## Release 5.0.0
|
32
|
+
|
33
|
+
## Changed
|
34
|
+
|
35
|
+
- Update Amazon Registry whois hosts
|
36
|
+
- Minimum Ruby version 2.4
|
37
|
+
|
38
|
+
## Fixed
|
39
|
+
|
40
|
+
- Fixed issue that prevented to query .CAT domains (GH-583).
|
41
|
+
|
42
|
+
|
43
|
+
## Release 4.1.0
|
15
44
|
|
16
45
|
- SERVER: Added .SS
|
17
46
|
- SERVER: Update .ALLFINANZ, .CAM, .DVAG, .FRESENIUS, .POHL, .TUI, .XN--VERMGENSBERATER-CTB, .XN--VERMGENSBERATUNG-PWB, .ZUERICH, .BMW, .MINI, .BABY, .DESI, .SAARLAND, .ECO
|
@@ -20,58 +49,58 @@ This project uses [Semantic Versioning 2.0.0](http://semver.org/).
|
|
20
49
|
- CHANGED: Reduce string allocations and retentions (GH-437). Thanks @casperisfine @byroot
|
21
50
|
|
22
51
|
|
23
|
-
|
52
|
+
## Release 4.0.8
|
24
53
|
|
25
54
|
- SERVER: Deleted .XPERIA, .TELECITY, .VISTA, .JLC, .PANERAI, .GOODHANDS, .STATOIL, .ACTIVE, .BLANCO, .EPOST, .SPIEGEL, .ZIPPO
|
26
55
|
- SERVER: Updated .SHOP, .NAGOYA, .OKINAWA, .RYUKYU, .TOKYO, .YOKOHAMA, .ORGANIC, .XN--MGBAB2BD, .MW, .IN, .XN--2SCRJ9C, .XN--3HCRJ9C, .XN--45BR5CYL, .XN--45BRJ9C, .XN--FPCRJ9C3D, .XN--GECRJ9C, .XN--H2BREG3EVE, .XN--H2BRJ9C, .XN--H2BRJ9C8C, .XN--MGBBH1A, .XN--MGBBH1A71E, .XN--MGBGU82A, .XN--RVC1E0AM3E, .XN--S9BRJ9C, .XN--XKC2DL3A5EE0H, .COUNTRY
|
27
56
|
- SERVER: Added .XN--MGBAH1A3HJKRD
|
28
57
|
|
29
58
|
|
30
|
-
|
59
|
+
## Release 4.0.7
|
31
60
|
|
32
61
|
- SERVER: Added .CHARITY, .INC
|
33
62
|
- SERVER: Updated .COLOGNE, .KOELN, .IE, .AU
|
34
63
|
- SERVER: Deleted .IWC
|
35
64
|
|
36
65
|
|
37
|
-
|
66
|
+
## Release 4.0.6
|
38
67
|
|
39
68
|
- SERVER: Added .SPORT, .LLC, .FM (GH-568)
|
40
69
|
- SERVER: Updated .MUSEUM, .MR, .PR, .AI, .SMART, .BAIDU, .GE, several newGTLDs
|
41
70
|
- SERVER: Deleted .HTC
|
42
71
|
|
43
72
|
|
44
|
-
|
73
|
+
## Release 4.0.5
|
45
74
|
|
46
75
|
- SERVER: Updated .ALIBABA, .ALIPAY, .HDFC, .SINA, .WEIBO, .XN--9KRT00A, .XN--JLQ61U9W7B
|
47
76
|
- SERVER: Deleted .MCD, .MCDONALDS, .PAMPEREDCHEF, .MONTBLANK, .CHLOE
|
48
77
|
|
49
78
|
|
50
|
-
|
79
|
+
## Release 4.0.4
|
51
80
|
|
52
81
|
- SERVER: Added .MERCKMSD
|
53
82
|
- SERVER: Updated .KOSHER, .LDS, .BESTBUY, .DUNLOP, .GOODYEAR, .TVS, .BNL, .HOMEDEPOT, .HUGHES, .IVECO, .LAMER, .LATINO, .LOCKER, .METLIFE, .MOBILE, .NEWHOLLAND, .OLLO, .ORIGINS, .OTT, .PHONE, .PNC, .SBI, .SCHOLARSHIPS, .SLING, .STATEBANK, .THD, .UPS, .WOLTERSKLUWER, .XN--NQV7FS00EMA, .DELTA, .STAR, .ALLY, .BCG, .BLOCKBUSTER, .CASE, .CASEIH, .CLINIQUE, .CRUISE, .CYOU, .DATA, .DISH, .DOT, .DTV, .FEDEX, .FERRARI, .GALLUP, .HELSINKI, .ICBC, .MASERATI, .MCKINSEY, .MONSTER, .MORMON, .XN, .XN
|
54
83
|
|
55
84
|
|
56
|
-
|
85
|
+
## Release 4.0.3
|
57
86
|
|
58
87
|
- FIXED: Updated Verisign adapter to properly detect the new label for referral servers (GH-559)
|
59
88
|
|
60
89
|
|
61
|
-
|
90
|
+
## Release 4.0.2
|
62
91
|
|
63
92
|
- SERVER: Added .AFRICA, .XN--MGBAI9AZGQP6J, .FUN, .RMIT, .HOSPITAL, .BOSTON, .DATA, .MOBILE, .PHONE, .HAIR, .LADBROKES, .CATHOLIC, .XN--80AQECDR1A, .XN--MGBI4ECEXP, .XN--TIQ49XQYJ, .RUGBY, .HOTELS, .GROCERY, .XN--MGBAAKC7DVF, .MAP, .PHD, .SEARCH, .XN--2SCRJ9C, .XN--45BR5CYL, .XN--H2BREG3EVE, .XN--H2BRJ9C8C, .XN--MGBBH1A, .XN--MGBGU82A, .XN--RVC1E0AM3E, .ETISALAT
|
64
93
|
- SERVER: Updated .LINK (GH-543), .AR, .MQ, .ARCHI, .BIO, .SKY, .GF, .KG, .STORAGE, .BIBLE
|
65
94
|
- SERVER: Deleted .IINET, .MUTUELLE, .FLSMIDTH, .MTPC
|
66
95
|
|
67
96
|
|
68
|
-
|
97
|
+
## Release 4.0.1
|
69
98
|
|
70
99
|
- SERVER: Added .FREE, .HK.COM, .HK.ORG, .LTD.HK, .INC.HK, .BOX, .CRUISE, .FOOD, .JIO, .MOTO, .RELIANCE, .RIL
|
71
100
|
- SERVER: Updated .ONLINE, .SITE, .STC, .STCGROUP
|
72
101
|
|
73
102
|
|
74
|
-
|
103
|
+
## Release 4.0.0
|
75
104
|
|
76
105
|
The WHOIS parsers are no longer part of this repository, and they have been extracted into a separate repository at https://github.com/weppos/whois-parser.
|
77
106
|
|
@@ -100,7 +129,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
100
129
|
- REMOVED: Deleted deprecated Whois.query method.
|
101
130
|
|
102
131
|
|
103
|
-
|
132
|
+
## Release 3.6.5
|
104
133
|
|
105
134
|
- SERVER: Added .PARS, .XN--MGBT3DHD, .REDUMBRELLA, .TRV, .TUSHU, .WATCHES, .XN--ECKVDTC9D, .KFH, .KPN, .SHELL, .TRAVELERSINSURANCE, .WANGGOU, .XN--KPU716F, .XN--NGBE9E0A, .XN--PBT977C, .FORD, .JMP, .LINCOLN, .SAS, .STORAGE, .XN--JLQ61U9W7B, .ANALYTICS, .MOBILITY, .XN--MGBB9FBPOB, .CONTACT, .PID, .STAR, .WEBER, .BOSCH, .DEALER, .FOX, .LAMER, .ORIGINS, .REXROTH, .SAFETY, .SCHAEFFLER, .STATEFARM
|
106
135
|
|
@@ -111,7 +140,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
111
140
|
- CHANGED: Updated whois.tld.ee to the new response format (GH-489, GH-490). [thanks @tanelj]
|
112
141
|
|
113
142
|
|
114
|
-
|
143
|
+
## Release 3.6.4
|
115
144
|
|
116
145
|
- SERVER: Added .ROCHER, .XN--VUQ861B, .CITYEATS, .CREDITUNION, .LIFESTYLE, .VANA, .COMSEC, .FAIRWINDS, .GRAINGER, .TAB, .BROADWAY, .AUDI, .BOEHRINGER, .BOSTIK, .BUGATTI, .LAMBORGHINI, .VERISIGN, .VIP., .SFR, .INSURANCE, .MED, .NORTON, .SYMANTEC, .AUTHOR, .BOOK, .BOT, .BUY, .CALL, .CIRCLE, .FAST, .FIRESTONE, .GOT, .JOT, .JOY, .LIKE, .NOWRUZ, .PIN, .READ, .ROOM, .SAFE, .SALON, .SHARP, .SHIA, .SMILE, .TCI, .TRAVELERS, .ZERO
|
117
146
|
|
@@ -134,7 +163,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
134
163
|
- CHANGED: whois.aero now recognizes reserved domains (GH-464, GH-418). [thanks @linrock]
|
135
164
|
|
136
165
|
|
137
|
-
|
166
|
+
## Release 3.6.3
|
138
167
|
|
139
168
|
- SERVER: Added .ACO, .AAA, .GEA, .STCGROUP, .VIVA, .GROUP, .CEB, .FAGE, .MOM, .AMICA, .STC, .CIPRIANI, .KINDER, .XN--11B4C3D, .XN--3PXU8K, .XN--42C2D9A, .XN--9DBQ2A, .XN--C2BR7G, .XN--FHBEI, .XN--J1AEF, .XN--MK1BU44C, .XN--PSSY2U, .XN--T60B56A, .XN--TCKWE, .XN--EFVY88H, .CSC, .CAR, .PROTECTION, .STADA, .THEATRE, .LINDE, .SECURITY, .BMS, .LTD, .OBI, .BOM, .FINAL, .HYUNDAI, .KIA, .SEVEN, .STOCKHOLM, .CLUBMED, .DELL, .ARAMCO, .XN--MGBA3A3EJT, .MOI, .MTR, .VIRGIN, .YAMAXUN, .GUCCI, .JAGUAR, .LANDROVER, .RWE, .ZARA, .MEO, .PING, .SAPO, .SBS, .AARP, .APPLE, .BEATS, .XN--MGBTX2B, .XN--QXAM
|
140
169
|
|
@@ -143,7 +172,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
143
172
|
- SERVER: Disabled whois.edu.cn as it has not been working for the last 6 years (GH-59).
|
144
173
|
|
145
174
|
|
146
|
-
|
175
|
+
## Release 3.6.2
|
147
176
|
|
148
177
|
- SERVER: Updated .LOVE
|
149
178
|
|
@@ -154,7 +183,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
154
183
|
- CHANGED: Added expires_on at "co.jp" domain (GH-437). [thanks @kubihie]
|
155
184
|
|
156
185
|
|
157
|
-
|
186
|
+
## Release 3.6.1
|
158
187
|
|
159
188
|
- SERVER: Added .co.com (GH-428) [thanks @turigabor], .STATOIL, .CROWN, .ACCOUNTANT, .DATE, .DOHA, .DOWNLOAD, .FAITH, .LOAN, .MOVIE, .MTN, .PANERAI, .REVIEW, .TICKETS, .WIN, .ACCENTURE, .NEC, .PHILIPS, .XN--FJQ720A, .COUPONS, .ICBC, .SOCCER, .FYI, .JLL, .MBA, .THD, .BBVA, .SANDVIK, .SANDVIKCOROMANT, .WALTER, .AIRTEL, .BARCELONA, .BCN, .GAME, .JPRS, .LIVE, .STUDIO, .BING, .HOTMAIL, .JLC, .MICROSOFT, .WINDOWS, .PLAY, .AEG, .DRIVE, .GENTING, .CBA, .COMMBANK, .NETBANK, .RICOH, .STARHUB, .VISTA, .VISTAPRINT, .OFFICE, .SCOR, .SKYPE, .LAW, .BNL, .BRADESCO, .HOTELES, .OMEGA, .SWATCH, .TELEFONICA, .LANCASTER, .NOKIA, .ICE, .ITAU, .LEXUS, .MAN, .BET, .SANOFI, .SRL, .TATAMOTORS, .IPIRANGA, .LEXUS, .PET, .TOYOTA, .LIXIL, .BOOTS, .CHANEL, .VIN, .WINE, .XPERIA, .GIVING, .FAMILY, .SEEK
|
160
189
|
|
@@ -165,7 +194,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
165
194
|
- CHANGED: Updated whois.nic.as to the new response format (GH-334). [thanks @case]
|
166
195
|
|
167
196
|
|
168
|
-
|
197
|
+
## Release 3.6.0
|
169
198
|
|
170
199
|
- SERVER: Added .MMA, .XN--30RR7Y, .LOVE, .SCHOLARSHIPS, .XN--NYQY26A, .CYOU, .RACING, .XN--KCRX77D1X4A, .DOOSAN, .GARDEN, .IWC, .LIDL, .OSAKA, .SCHWARZ, .SEW, .SALE, .VIDEO, .ZUERICH, .SHRIRAM, .BANK, .FIT, .KDDI, .LAT, .LOTTE, .MARRIOTT, .BARCLAYCARD, .BARCLAYS, .DABUR, .DCLK, .DESIGN, .GOOG, .HANGOUT, .HERMES, .IFM, .JCB, .TEMASEK, .XN--B4W605FERD, .BINGO, .CANON, .CHAT, .STYLE, .TENNIS, .TOSHIBA, .CASINO, .FANS, .FOOTBALL, .GOLDPOINT, .SCHOOL, .YODOBASHI, .EPSON, .GOO, .JAVA, .LECLERC, .ORACLE, .MAIF, .XN--MXTQ1M, .DATSUN, .INFINITI, .MTPC, .NISSAN, .BROTHER, .CHLOE, .ERNI, .FOREX, .MARKETS, .CFD, .SPREADBETTING, .TRADING, .FAN, .ONLINE, .PAGE, .PIAGET, .SITE, .BBC, .NEWS, .TECH, .KOMATSU, .SAP, .BOND, .XN--9ET52U, .AFL, .REDSTONE, .SEAT, .SEX, .BROKER, .DOG, .RENT, .SWISS, .HONDA, .WEIR, .BRIDGESTONE, .HITACHI, .SENER, .TORAY, .SKY, .XN--IMR513N, .BIBLE, .HOMEDEPOT, .XBOX, .AZURE, .ICU, .THEATER, .EARTH, .EXPRESS, .CAFE, .BAUHAUS, .ADS, .FILM, .GOLD, .GOLF, .GUGE, .PLUS, .TOURS, .XN--VUQ861B, .JEWELRY, .SHOW, .SONY, .TEAM, .XEROX, .AIG, .AUTO, .CARS, .CFA, .LIAISON, .LOL, .NADEX, .HOCKEY, .RUN, .TAXI, .XN--ESTV75G, .XN--MGBPL2FH, .XN--Y9A3AQ, .CORSICA, .LUPIN, .APP, .SAKURA, .BENTLEY, .HSBC, .IINET, .ORANGE, .FORUM, .REALTY, .AUTOS, .LASALLE, .MONTBLANC, .BHARTI, .SNCF, .MEN
|
171
200
|
|
@@ -180,7 +209,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
180
209
|
- CHANGED: Updated .MA parser and definition from whois.iam.net.ma to whois.registre.ma
|
181
210
|
|
182
211
|
|
183
|
-
|
212
|
+
## Release 3.5.9
|
184
213
|
|
185
214
|
- SERVER: Added .KYOTO, .ONE, .CRICKET, .PARTY, .XN--45Q11C, XN--CZRS0T, .SAMSUNG, .CARTIER, .ADULT, .EUROVISION, .FASHION, .PORN, .TRUST, .KOELN, .XN--C1AVG, .NYC, .SAMSUNG, .COACH, .EVERBANK, .LEGAL, .MEMORIAL, .MONEY, .AQUARELLE, .IRISH, .LATROBE, .XN--HXT814E, .SKY, .DEV, .DOCS, .TYRES, .DOOSAN, .NTT, .AMSTERDAM, .FLOWERS, .GGEE, .CBN, .GDN, .APARTMENTS, .NICO, .SAXO, .BOATS, .COURSES, .STUDY, .SUCKS, .XN--90AIS, .ABBOTT, .PICTET, .XIN, .FANS
|
186
215
|
|
@@ -189,7 +218,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
189
218
|
- FIXED: whois.schlund.info crashes with empty update date (GH-398). [thanks @alexaitken]
|
190
219
|
|
191
220
|
|
192
|
-
|
221
|
+
## Release 3.5.8
|
193
222
|
|
194
223
|
- SERVER: Created .FIRMDALE, .MADRID, .XN--FLW351E, .XN--QCKA1PMC, .LDS, .MORMON
|
195
224
|
|
@@ -202,14 +231,14 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
202
231
|
- FIXED: Fixed the ARIN referral regex to correctly consider ports optional (GH-350). [thanks @jrideout]
|
203
232
|
|
204
233
|
|
205
|
-
|
234
|
+
## Release 3.5.7
|
206
235
|
|
207
236
|
- SERVER: Updated .AW, .BW, .GQ, .MK, .ML, .MZ, .PF, .VU, .ZM, .KIWI, .CAREER, .REISE, .VERSICHERUNG, .HOST, .PRESS, .HAMBURG, .BRUSSELS, .VLAANDEREN
|
208
237
|
|
209
238
|
- SERVER: Created .BLOOMBERG, .ENERGY, .YANDEX, .PRAXI, .WHOSWHO, .WILLIAMHILL, .SUZUKI, .SCIENCE, .REALTOR, .SYDNEY, .TAIPEI, .DELIVERY, .DIRECT, .PLACE, .CITY, .DEALS, .AUCTION, .HEALTHCARE, .CANCERRESEARCH, .CUISINELLA, .SCHMIDT, .MELBOURNE, .KRD, .NRW, .SCB, .LACAIXA, .LGBT, .NGO, .ONG, .SPIEGEL, .NRA, .GENT, .REIT, .ANDROID, .TOP, .WALES, .SCA, .BNPPARIBAS, .EMERCK, .TATAR, .CYMRU, .RESTAURANT, .SARL, .XN--1QQW23A, .XN--XHQ521B, .NETWORK, .BUSINESS, .XN--VHQUV, .GIFTS, .HOSTING, .HELP, .DIET, .OOO, .UOL, .PROPERTY, .LTDA, .HOW, .CARAVAN, .CLICK, .CERN, .HERE, .ESQ, .GMAIL, .YOUTUBE, .PROD, .GBIZ, .IMMO, .OTSUKA, .DAD, .BOO, .DAY, .EAT, .FRL, .MOV, .NEW, .RSVP, .MEME, .ZIP, .PROF, .NEXUS, .GOOGLE, .GLE, .FLY, .CHROME, .CHANNEL, .CAL, .ING, .WORLD, .PIZZA, .PHARMACY, .WME, .GMX, .HOMES, .HORSE, .XN--P1ACF, .TUI, .POHL, .ALLFINANZ, .DVAG, .XN--VERMGENSBERATUNG-PWB, .XN--VERMGENSBERATER-CTB, .FORSALE, .IBM, .ALSACE, .ABOGADO, .BAND, .CRS, .FLSMIDTH, .POKER, .RIP, .WEDDING, .YOGA, .BUDAPEST, .CASA, .WORK
|
210
239
|
|
211
240
|
|
212
|
-
|
241
|
+
## Release 3.5.6
|
213
242
|
|
214
243
|
- SERVER: Created .AUDIO, .BEER, .CHURCH, .GUIDE, .HIPHOP, .JUEGOS, .LIFE, .LOANS, .LUXE, .BEST, .AUTOS, .HOMES, .MOTORCYCLES, .REISE, .RIO, .VERSICHERUNG, .YACHTS, .XN, .DEGREE, .SPACE, .WEBSITE, .ATTORNEY, .DENTIST, .HIV, .HOST, .LAWYER, .MARKET, .MORTGAGE, .PRESS, .SOFTWARE, .VET, .BIO, .ARMY, .ENGINEER, .GIVES, .HAMBURG, .NAVY, .NHK, .REHAB, .REPUBLICAN, .TIROL, .GLOBAL, .ORGANIC, .SCOT, .BZH, .XN, .BRUSSELS, .SURF, .VLAANDEREN, .CAPETOWN, .DURBAN, .GREEN, .JOBURG, .LOTTO, .OVH, .PHYSIO, .BMW, .CEO, .MINI, .ACTIVE
|
215
244
|
|
@@ -220,7 +249,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
220
249
|
- FIXED: whois.register.com parser crashes when the update date is empty (GH-353). [thanks @alexaitken]
|
221
250
|
|
222
251
|
|
223
|
-
|
252
|
+
## Release 3.5.5
|
224
253
|
|
225
254
|
- NEW: Added registrar and contact support for whois.dns.lu (GH-329). [thanks @huyphan]
|
226
255
|
|
@@ -235,7 +264,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
235
264
|
- FIXED: whois.nic.gd parser crashes when the domain is reserved (GH-335). [thanks @case]
|
236
265
|
|
237
266
|
|
238
|
-
|
267
|
+
## Release 3.5.4
|
239
268
|
|
240
269
|
- SERVER: Created .QUEBEC, .COLLEGE, .DESI, .FEEDBACK, .ROCKS, .XN, .ASSOCIATES, .CAPITAL, .CAREER, .ENGINEERING, .EUS, .GAL, .GRIPE, .LEASE, .MEDIA, .PICTURES, .REISEN, .SERVICES, .TOWN, .TOYS, .UNIVERSITY, .XN, .FOO, .FROGANS, .PARIS, .SOY, .BLACKFRIDAY, .CLINIC, .FITNESS, .SCHULE, .CARE, .CASH, .DENTAL, .DISCOUNT, .EXCHANGE, .FAIL, .FINANCIAL, .FUND, .FURNITURE, .GRATIS, .INVESTMENTS, .LIMITED, .SURGERY, .TAX, .WTF, .MOSCOW, .XN, .CREDITCARD, .FINANCE, .INSURE, .WTC, .AIRFORCE, .BAYERN, .GLOBO, .ACCOUNTANTS, .CLAIMS, .CREDIT, .DIGITAL
|
241
270
|
|
@@ -256,17 +285,17 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
256
285
|
- CHANGED: whois.cctld.uz now supports updated_on (GH-315). [thanks @huyphan]
|
257
286
|
|
258
287
|
|
259
|
-
|
288
|
+
## Release 3.5.3
|
260
289
|
|
261
290
|
- CHANGED: Updated whois.pir.org to the new response format.
|
262
291
|
|
263
292
|
|
264
|
-
|
293
|
+
## Release 3.5.2
|
265
294
|
|
266
295
|
- SERVER: Added new gTLDs
|
267
296
|
|
268
297
|
|
269
|
-
|
298
|
+
## Release 3.5.1
|
270
299
|
|
271
300
|
- NEW: Added whois.corporatedomains.com parser (GH-311). [thanks @huyphan]
|
272
301
|
|
@@ -281,7 +310,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
281
310
|
- FIXED: whois.ua parser crashes when the status is clientTransferProhibited.
|
282
311
|
|
283
312
|
|
284
|
-
|
313
|
+
## Release 3.5.0
|
285
314
|
|
286
315
|
- SERVER: Updated list of latest ASN allocations of 16-bit & 32-bit ASN's from IANA (GH-293). [thanks @itsbalamurali]
|
287
316
|
|
@@ -298,7 +327,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
298
327
|
- FIXED: whois.registry.net.za parser crashes with some registrant contact formats.
|
299
328
|
|
300
329
|
|
301
|
-
|
330
|
+
## Release 3.4.5
|
302
331
|
|
303
332
|
- 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
|
304
333
|
|
@@ -323,7 +352,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
323
352
|
- CHANGED: Afilias is using a slightly different whois response for some TLDs, including .INFO and .XXX (GH-304)
|
324
353
|
|
325
354
|
|
326
|
-
|
355
|
+
## Release 3.4.4
|
327
356
|
|
328
357
|
- CHANGED: Updated IBC parser and fixtures (.IO, .AC, .SH and .TM).
|
329
358
|
|
@@ -332,7 +361,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
332
361
|
- CHANGED: Updated whois.pir.org parser to the new response format (GH-300). [thanks @muffinista]
|
333
362
|
|
334
363
|
|
335
|
-
|
364
|
+
## Release 3.4.3
|
336
365
|
|
337
366
|
- SERVER: Updated .COM, .NET, .CC, .WS TLD definitions.
|
338
367
|
|
@@ -355,14 +384,14 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
355
384
|
- CHANGED: Updated whois.nic.gl parser to the new response format.
|
356
385
|
|
357
386
|
|
358
|
-
|
387
|
+
## Release 3.4.2
|
359
388
|
|
360
389
|
- CHANGED: Updated whois.registry.net.za parser to the new response format.
|
361
390
|
|
362
391
|
- CHANGED: Updated whois.ascio.com parser to the new response format (GH-285). [thanks @takama]
|
363
392
|
|
364
393
|
|
365
|
-
|
394
|
+
## Release 3.4.1
|
366
395
|
|
367
396
|
- SERVER: Updated .XN--NGBC5AZD IDN TLD definition.
|
368
397
|
|
@@ -385,7 +414,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
385
414
|
- CHANGED: Updated whois.gandi.net parser to the new response format.
|
386
415
|
|
387
416
|
|
388
|
-
|
417
|
+
## Release 3.4.0
|
389
418
|
|
390
419
|
- SERVER: Added .XN--MGBX4CD0AB (.ایران, Iran) IDN TLD definition.
|
391
420
|
|
@@ -422,7 +451,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
422
451
|
- CHANGED: Updated whois.register.com parser to the new response format (GH-273). [thanks @gromnsk]
|
423
452
|
|
424
453
|
|
425
|
-
|
454
|
+
## Release 3.3.1
|
426
455
|
|
427
456
|
- SERVER: Updated .KR, .ES (GH-267) TLD definitions.
|
428
457
|
|
@@ -433,7 +462,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
433
462
|
- CHANGED: Updated whois.enom.com parser to the new response format (GH-269). [thanks @takama]
|
434
463
|
|
435
464
|
|
436
|
-
|
465
|
+
## Release 3.3.0
|
437
466
|
|
438
467
|
- SERVER: Added .CF TLD definition.
|
439
468
|
|
@@ -456,7 +485,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
456
485
|
- FIXED: whois.jprs.jp should support `Registered` status (GH-253). [thanks @Pietr]
|
457
486
|
|
458
487
|
|
459
|
-
|
488
|
+
## Release 3.2.1
|
460
489
|
|
461
490
|
- NEW: Added full whois.nic.tr parser.
|
462
491
|
|
@@ -477,7 +506,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
477
506
|
- CHANGED: Deprecate Whois::Record::Contact::TYPE_ADMIN in favor of Whois::Record::Contact::TYPE_ADMINISTRATIVE
|
478
507
|
|
479
508
|
|
480
|
-
|
509
|
+
## Release 3.2.0
|
481
510
|
|
482
511
|
- SERVER: Added .JP.NET (GH-240), XN--J1AMH TLD definitions.
|
483
512
|
|
@@ -500,7 +529,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
500
529
|
- FIXED: Arin adapter is incorrectly passing an Arin flag to referral queries.
|
501
530
|
|
502
531
|
|
503
|
-
|
532
|
+
## Release 3.1.3
|
504
533
|
|
505
534
|
- SERVER: Updated .GD (GH-227), .TC (GH-228) TLD definitions.
|
506
535
|
|
@@ -517,7 +546,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
517
546
|
- FIXED: whois.ua is mixing two kinds of responses (GH-235).
|
518
547
|
|
519
548
|
|
520
|
-
|
549
|
+
## Release 3.1.2
|
521
550
|
|
522
551
|
- NEW: Added full whois.comlaude.com parser (GH-222). [thanks @delwyn]
|
523
552
|
|
@@ -536,12 +565,12 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
536
565
|
- FIXED: whois.nic.fr parser crashes when the contact has no changed attribute (GH-226).
|
537
566
|
|
538
567
|
|
539
|
-
|
568
|
+
## Release 3.1.1
|
540
569
|
|
541
570
|
- FIXED: Fixed CLI crash (GH-219). [thanks @linrock]
|
542
571
|
|
543
572
|
|
544
|
-
|
573
|
+
## Release 3.1.0
|
545
574
|
|
546
575
|
- SERVER: Added .POST (GH-192) TLD definition.
|
547
576
|
|
@@ -572,7 +601,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
572
601
|
- FIXED: Record#technical_contact raised a NoMethodError (GH-217). [thanks @yspro]
|
573
602
|
|
574
603
|
|
575
|
-
|
604
|
+
## Release 3.0.0
|
576
605
|
|
577
606
|
- SERVER: Added .AX TLD definition.
|
578
607
|
|
@@ -714,7 +743,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
714
743
|
- Whois::PropertyNotAvailable -> Whois::AttributeNotImplemented
|
715
744
|
|
716
745
|
|
717
|
-
|
746
|
+
## Release 2.7.0
|
718
747
|
|
719
748
|
- SERVER: Added .IQ TLD server (GH-171).
|
720
749
|
|
@@ -753,7 +782,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
753
782
|
- CHANGED: whois.dns.pl now supports expires_on (GH-185). [thanks @y3ti]
|
754
783
|
|
755
784
|
|
756
|
-
|
785
|
+
## Release 2.6.4
|
757
786
|
|
758
787
|
- SERVER: Added .CW TLD server.
|
759
788
|
|
@@ -788,7 +817,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
788
817
|
- CHANGED: Removed support for .gemtest and removed /spec folder from the packaged gem.
|
789
818
|
|
790
819
|
|
791
|
-
|
820
|
+
## Release 2.6.3
|
792
821
|
|
793
822
|
- NEW: whois.registrypro.pro is now a full parser.
|
794
823
|
|
@@ -801,7 +830,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
801
830
|
- CHANGED: Updated whois.registrypro.pro parser to the new response format.
|
802
831
|
|
803
832
|
|
804
|
-
|
833
|
+
## Release 2.6.2
|
805
834
|
|
806
835
|
- SERVER: Added .SX TLD server (GH-170).
|
807
836
|
|
@@ -812,7 +841,7 @@ The `whois` library is now simply a WHOIS client. If you want to use the parsing
|
|
812
841
|
- NEW: whois.ua parser is now a full parser (GH-169). [thanks @Uko]
|
813
842
|
|
814
843
|
|
815
|
-
|
844
|
+
## Release 2.6.1
|
816
845
|
|
817
846
|
- Reverted partial commit about .SX definitions included in v2.6.0 by mistake.
|
818
847
|
|
data/CONTRIBUTING.md
CHANGED
@@ -4,39 +4,39 @@
|
|
4
4
|
|
5
5
|
Fork, then clone the repo:
|
6
6
|
|
7
|
-
|
7
|
+
```
|
8
8
|
git clone git@github.com:your-username/whois.git
|
9
|
-
|
9
|
+
```
|
10
10
|
|
11
11
|
Set up your machine:
|
12
12
|
|
13
|
-
|
13
|
+
```
|
14
14
|
bundle
|
15
|
-
|
15
|
+
```
|
16
16
|
|
17
17
|
Make sure the tests pass:
|
18
18
|
|
19
|
-
|
19
|
+
```
|
20
20
|
bundle exec rake
|
21
|
-
|
21
|
+
```
|
22
22
|
|
23
23
|
To propose a change/feature/patch, create your feature branch:
|
24
24
|
|
25
|
-
|
25
|
+
```
|
26
26
|
git checkout -b my-new-feature
|
27
|
-
|
27
|
+
```
|
28
28
|
|
29
29
|
Make your change. Add tests for your change. Make the tests pass:
|
30
30
|
|
31
|
-
|
31
|
+
```
|
32
32
|
bundle exec rake
|
33
|
-
|
33
|
+
```
|
34
34
|
|
35
35
|
Commit your changes:
|
36
36
|
|
37
|
-
|
37
|
+
```
|
38
38
|
git commit -am 'Add some feature'
|
39
|
-
|
39
|
+
```
|
40
40
|
|
41
41
|
Push to your fork and [submit a pull request](https://github.com/weppos/whois/compare/).
|
42
42
|
|
data/Gemfile
CHANGED
data/LICENSE.txt
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
The MIT License (MIT)
|
2
2
|
|
3
|
-
Copyright (c) 2009-
|
3
|
+
Copyright (c) 2009-2022 Simone Carletti
|
4
4
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
data/README.md
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
This library was extracted from [RoboWhois](https://robowhois.com/) and [RoboDomain](https://robodomain.com/), and it's now in use at [DNSimple](https://dnsimple.com/). It has been performing queries in production since July 2009.
|
6
6
|
|
7
|
-
[![Build Status](https://
|
7
|
+
[![Build Status](https://github.com/weppos/whois/actions/workflows/tests.yml/badge.svg)](https://github.com/weppos/whois/actions/workflows/tests.yml)
|
8
8
|
|
9
9
|
|
10
10
|
## Donate a coffee
|
@@ -42,25 +42,25 @@ For older versions of Ruby, see the [CHANGELOG](CHANGELOG.md).
|
|
42
42
|
|
43
43
|
You can install the gem manually:
|
44
44
|
|
45
|
-
|
45
|
+
```shell
|
46
46
|
gem install whois
|
47
|
-
|
47
|
+
```
|
48
48
|
|
49
49
|
Or use [Bundler](http://bundler.io/) and define it as a dependency in your `Gemfile`:
|
50
50
|
|
51
|
-
|
51
|
+
```ruby
|
52
52
|
gem 'whois'
|
53
|
-
|
53
|
+
```
|
54
54
|
|
55
55
|
To use the WHOIS parser component you need to install the `whois-parser` gem:
|
56
56
|
|
57
|
-
|
57
|
+
```shell
|
58
58
|
gem install whois-parser
|
59
|
-
|
59
|
+
```
|
60
60
|
|
61
|
-
|
61
|
+
```ruby
|
62
62
|
gem 'whois-parser'
|
63
|
-
|
63
|
+
```
|
64
64
|
|
65
65
|
The `whois-parser` gem already depends on the `whois` gem. If you install `whois-parser`, `whois` will be installed as well and it will also be automatically required when you `require 'whois-parser'`.
|
66
66
|
|
@@ -77,7 +77,7 @@ This section covers only the essentials for getting started with the Whois libra
|
|
77
77
|
|
78
78
|
Check out the following examples:
|
79
79
|
|
80
|
-
|
80
|
+
```ruby
|
81
81
|
# Domain WHOIS
|
82
82
|
whois = Whois::Client.new
|
83
83
|
whois.lookup("google.com")
|
@@ -97,29 +97,29 @@ whois.lookup("74.125.67.100")
|
|
97
97
|
whois = Whois::Client.new
|
98
98
|
whois.lookup("2001:db8::1428:57ab")
|
99
99
|
# => #<Whois::Record>
|
100
|
-
|
100
|
+
```
|
101
101
|
|
102
102
|
The query method is stateless. For this reason, you can safely re-use the same client instance for multiple queries.
|
103
103
|
|
104
|
-
|
104
|
+
```ruby
|
105
105
|
whois = Whois::Client.new
|
106
106
|
whois.lookup("google.com")
|
107
107
|
whois.lookup(".com")
|
108
108
|
whois.lookup("74.125.67.100")
|
109
109
|
whois.lookup("2001:db8::1428:57ab")
|
110
110
|
whois.lookup("google.it")
|
111
|
-
|
111
|
+
```
|
112
112
|
|
113
113
|
If you just need a WHOIS response and you don't care about a full control of the WHOIS client, the `Whois` module provides an all-in-one method called `Whois.whois`. This is the simplest way to send a WHOIS request.
|
114
114
|
|
115
|
-
|
115
|
+
```ruby
|
116
116
|
Whois.whois("google.com")
|
117
117
|
# => #<Whois::Record>
|
118
|
-
|
118
|
+
```
|
119
119
|
|
120
120
|
Did I mention you can even use blocks?
|
121
121
|
|
122
|
-
|
122
|
+
```ruby
|
123
123
|
Whois::Client.new do |w|
|
124
124
|
w.lookup("google.com")
|
125
125
|
w.lookup(".com")
|
@@ -127,7 +127,7 @@ Whois::Client.new do |w|
|
|
127
127
|
w.lookup("2001:db8::1428:57ab")
|
128
128
|
w.lookup("google.it")
|
129
129
|
end
|
130
|
-
|
130
|
+
```
|
131
131
|
|
132
132
|
### Consuming the Record
|
133
133
|
|
@@ -135,7 +135,7 @@ Any WHOIS query returns a `Whois::Record`. This object looks like a String, but
|
|
135
135
|
|
136
136
|
`Whois::Record` encapsulates a WHOIS record and provides the ability to parse the WHOIS response programmatically, when the `whois-parser` gem is installed and loaded.
|
137
137
|
|
138
|
-
|
138
|
+
```ruby
|
139
139
|
require 'whois-parser'
|
140
140
|
|
141
141
|
record = Whois.whois("google.it")
|
@@ -162,7 +162,7 @@ tech.name
|
|
162
162
|
parser.nameservers.each do |nameserver|
|
163
163
|
puts nameserver
|
164
164
|
end
|
165
|
-
|
165
|
+
```
|
166
166
|
|
167
167
|
This feature is made possible by the <tt>Whois</tt> record parsers. Unfortunately, due to the lack of a global standard, each WHOIS server requires a specific parser. For this reason, the library doesn't support all existing WHOIS servers.
|
168
168
|
|
@@ -174,14 +174,14 @@ By default, each query run though the client has a timeout value of 5 seconds. I
|
|
174
174
|
|
175
175
|
Of course, you can customize the timeout value setting a different value. If timeout is `nil`, the client will wait until the response is sent back from the server or the process is killed. Don't disable the timeout unless you really know what you are doing!
|
176
176
|
|
177
|
-
|
177
|
+
```ruby
|
178
178
|
whois = Whois::Client.new(:timeout => 10)
|
179
179
|
whois.timeout # => 10
|
180
180
|
whois.timeout = 5
|
181
181
|
whois.timeout # => 5
|
182
182
|
|
183
183
|
whois.lookup("google.com")
|
184
|
-
|
184
|
+
```
|
185
185
|
|
186
186
|
|
187
187
|
## Credits
|
@@ -213,4 +213,4 @@ Report issues or feature requests to [GitHub Issues](https://github.com/weppos/w
|
|
213
213
|
|
214
214
|
## License
|
215
215
|
|
216
|
-
Copyright (c) 2009-
|
216
|
+
Copyright (c) 2009-2022 [Simone Carletti](https://simonecarletti.com/). This is Free Software distributed under the MIT license.
|
data/Rakefile
CHANGED
@@ -1,33 +1,28 @@
|
|
1
|
-
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "bundler/gem_tasks"
|
3
4
|
|
4
|
-
|
5
|
-
task :default => :spec
|
6
|
-
task :test => :spec
|
5
|
+
task default: [:test, :rubocop]
|
7
6
|
|
8
7
|
|
9
|
-
require
|
8
|
+
require "rspec/core/rake_task"
|
10
9
|
|
11
10
|
RSpec::Core::RakeTask.new do |t|
|
12
11
|
t.verbose = !ENV["VERBOSE"].nil?
|
13
12
|
end
|
14
13
|
|
14
|
+
task test: :spec
|
15
15
|
|
16
|
-
require 'yard'
|
17
16
|
|
18
|
-
|
19
|
-
y.options = ["--output-dir", "yardoc"]
|
20
|
-
end
|
17
|
+
require "rubocop/rake_task"
|
21
18
|
|
22
|
-
|
23
|
-
task :clobber do
|
24
|
-
rm_r "yardoc" rescue nil
|
25
|
-
end
|
26
|
-
end
|
19
|
+
RuboCop::RakeTask.new
|
27
20
|
|
28
|
-
task :clobber => "yardoc:clobber"
|
29
21
|
|
22
|
+
require "yard/rake/yardoc_task"
|
30
23
|
|
31
|
-
|
32
|
-
|
24
|
+
YARD::Rake::YardocTask.new(:yardoc) do |y|
|
25
|
+
y.options = ["--output-dir", "yardoc"]
|
33
26
|
end
|
27
|
+
|
28
|
+
CLOBBER.include "yardoc"
|