whois 5.0.0 → 5.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +8 -0
  3. data/.github/workflows/codeql-analysis.yml +64 -0
  4. data/.github/workflows/release.yml +16 -0
  5. data/.github/workflows/tests.yml +29 -0
  6. data/.rubocop.yml +27 -0
  7. data/.rubocop_opinionated.yml +135 -0
  8. data/.rubocop_todo.yml +166 -0
  9. data/.simplecov +2 -0
  10. data/.tool-versions +1 -0
  11. data/CHANGELOG.md +79 -50
  12. data/CONTRIBUTING.md +12 -12
  13. data/Gemfile +5 -0
  14. data/LICENSE.txt +1 -1
  15. data/README.md +22 -22
  16. data/Rakefile +12 -17
  17. data/bin/console +1 -0
  18. data/bin/whoisrb +3 -2
  19. data/data/ipv4.json +1 -3
  20. data/data/tld.json +2 -99
  21. data/lib/whois/client.rb +4 -2
  22. data/lib/whois/errors.rb +4 -2
  23. data/lib/whois/record/part.rb +5 -4
  24. data/lib/whois/record.rb +4 -2
  25. data/lib/whois/server/adapters/afilias.rb +4 -1
  26. data/lib/whois/server/adapters/arin.rb +7 -4
  27. data/lib/whois/server/adapters/arpa.rb +20 -19
  28. data/lib/whois/server/adapters/base.rb +26 -40
  29. data/lib/whois/server/adapters/formatted.rb +4 -2
  30. data/lib/whois/server/adapters/none.rb +3 -1
  31. data/lib/whois/server/adapters/not_implemented.rb +3 -1
  32. data/lib/whois/server/adapters/standard.rb +4 -2
  33. data/lib/whois/server/adapters/verisign.rb +4 -1
  34. data/lib/whois/server/adapters/web.rb +3 -1
  35. data/lib/whois/server/socket_handler.rb +8 -6
  36. data/lib/whois/server.rb +55 -53
  37. data/lib/whois/version.rb +4 -2
  38. data/lib/whois.rb +13 -11
  39. data/spec/integration/whois_spec.rb +6 -6
  40. data/spec/spec_helper.rb +4 -4
  41. data/spec/support/helpers/connectivity_helper.rb +3 -3
  42. data/spec/support/helpers/spec_helper.rb +2 -0
  43. data/spec/whois/client_spec.rb +6 -7
  44. data/spec/whois/record/part_spec.rb +4 -4
  45. data/spec/whois/record_spec.rb +9 -7
  46. data/spec/whois/server/adapters/afilias_spec.rb +4 -4
  47. data/spec/whois/server/adapters/arin_spec.rb +9 -10
  48. data/spec/whois/server/adapters/arpa_spec.rb +2 -2
  49. data/spec/whois/server/adapters/base_spec.rb +13 -13
  50. data/spec/whois/server/adapters/formatted_spec.rb +8 -8
  51. data/spec/whois/server/adapters/none_spec.rb +2 -2
  52. data/spec/whois/server/adapters/not_implemented_spec.rb +4 -4
  53. data/spec/whois/server/adapters/standard_spec.rb +5 -5
  54. data/spec/whois/server/adapters/verisign_spec.rb +5 -5
  55. data/spec/whois/server/adapters/web_spec.rb +4 -4
  56. data/spec/whois/server/socket_handler_spec.rb +7 -5
  57. data/spec/whois/server_spec.rb +31 -29
  58. data/spec/whois/{errors_spec.rb → web_interface_error_spec.rb} +4 -4
  59. data/spec/whois/whois_spec.rb +3 -3
  60. data/utils/compare-whois.rb +1 -1
  61. data/utils/matrix.rb +1 -1
  62. metadata +13 -39
  63. data/.travis.yml +0 -18
  64. data/bin/setup +0 -8
  65. 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
- #### Release 5.0.0
6
+ ## Release 5.1.0
7
7
 
8
- - CHANGED: Minimum Ruby version 2.5
9
- - SERVER: Update Amazon Registry whois hosts
8
+ ### Changed
10
9
 
11
- - FIXED: Fixed issue that prevented to query .CAT domains (GH-583).
10
+ - SERVER: Deleted .VISTAPRINT, .XN--ESTV75G
11
+ - CHANGED: Eager load all adapters (GH-644). Thanks @casperisfine @byroot
12
12
 
13
13
 
14
- #### Release 4.1.0
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
- #### Release 4.0.8
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
- #### Release 4.0.7
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
- #### Release 4.0.6
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
- #### Release 4.0.5
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
- #### Release 4.0.4
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
- #### Release 4.0.3
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
- #### Release 4.0.2
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
- #### Release 4.0.1
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
- #### Release 4.0.0
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
- #### Release 3.6.5
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
- #### Release 3.6.4
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
- #### Release 3.6.3
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
- #### Release 3.6.2
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
- #### Release 3.6.1
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
- #### Release 3.6.0
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
- #### Release 3.5.9
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
- #### Release 3.5.8
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
- #### Release 3.5.7
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
- #### Release 3.5.6
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
- #### Release 3.5.5
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
- #### Release 3.5.4
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
- #### Release 3.5.3
288
+ ## Release 3.5.3
260
289
 
261
290
  - CHANGED: Updated whois.pir.org to the new response format.
262
291
 
263
292
 
264
- #### Release 3.5.2
293
+ ## Release 3.5.2
265
294
 
266
295
  - SERVER: Added new gTLDs
267
296
 
268
297
 
269
- #### Release 3.5.1
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
- #### Release 3.5.0
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
- #### Release 3.4.5
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
- #### Release 3.4.4
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
- #### Release 3.4.3
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
- #### Release 3.4.2
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
- #### Release 3.4.1
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
- #### Release 3.4.0
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
- #### Release 3.3.1
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
- #### Release 3.3.0
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
- #### Release 3.2.1
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
- #### Release 3.2.0
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
- #### Release 3.1.3
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
- #### Release 3.1.2
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
- #### Release 3.1.1
568
+ ## Release 3.1.1
540
569
 
541
570
  - FIXED: Fixed CLI crash (GH-219). [thanks @linrock]
542
571
 
543
572
 
544
- #### Release 3.1.0
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
- #### Release 3.0.0
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
- #### Release 2.7.0
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
- #### Release 2.6.4
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
- #### Release 2.6.3
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
- #### Release 2.6.2
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
- #### Release 2.6.1
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
@@ -1,3 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  gemspec
6
+
7
+ gem "rubocop", "1.12.1", require: false
8
+ gem 'rubocop-rspec', require: false
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2009-2019 Simone Carletti
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://travis-ci.org/weppos/whois.svg?branch=master)](https://travis-ci.org/weppos/whois)
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
- ~~~shell
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
- ~~~ruby
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
- ~~~shell
57
+ ```shell
58
58
  gem install whois-parser
59
- ~~~
59
+ ```
60
60
 
61
- ~~~ruby
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
- ~~~ruby
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
- ~~~ruby
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
- ~~~ruby
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
- ~~~ruby
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
- ~~~ruby
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
- ~~~ruby
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-2019 [Simone Carletti](https://simonecarletti.com/). This is Free Software distributed under the MIT license.
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
- require 'bundler/gem_tasks'
1
+ # frozen_string_literal: true
2
2
 
3
+ require "bundler/gem_tasks"
3
4
 
4
- # Run test by default.
5
- task :default => :spec
6
- task :test => :spec
5
+ task default: [:test, :rubocop]
7
6
 
8
7
 
9
- require 'rspec/core/rake_task'
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
- YARD::Rake::YardocTask.new(:yardoc) do |y|
19
- y.options = ["--output-dir", "yardoc"]
20
- end
17
+ require "rubocop/rake_task"
21
18
 
22
- namespace :yardoc do
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
- Dir["tasks/**/*.rake"].each do |file|
32
- load(file)
24
+ YARD::Rake::YardocTask.new(:yardoc) do |y|
25
+ y.options = ["--output-dir", "yardoc"]
33
26
  end
27
+
28
+ CLOBBER.include "yardoc"
data/bin/console CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  require "bundler/setup"
4
5
  require "whois"