= Changelog == Release 0.8.1 * FIXED: Updated the whois.denic.de parser to the new format. Thanks to David Krentzlin (closes #314) * FIXED: In case of thin server the client should select the closest whois server match (closes #264) * ADDED: ability to check whether a property is supported via answer.supported? or parser.supported? == Release 0.8.0 * FIXED: Server definition with :format doesn't use the Formatted adapter (closes #305) * ADDED: whois.denic.de (.de TLD) parser [Aaron Mueller] * ADDED: introduced support for multipart answers and Parser proxy class. This is useful in case of thin servers such as .com or .net because the parser needs to know all different responses in order to load all single scanners. * ADDED: whois.crsnic.net (.com, .net, ... TLDs) parser. * CHANGED: extracted all scanners into separated classes in order to make easier extract shared features. * CHANGED: renamed Whois::Response to Whois::Answer. This change is required to avoid confusion between query-answer and server request-response. A Whois::Answer is composed by one or more parts, corresponding to single server answers. * REMOVED: Whois::Answer#i_am_feeling_lucky (formerly Whois::Answer#i_am_feeling_lucky) become obsolete since the introduction of Answer parsers. == Release 0.6.0 * ADDED: new more convenient method to query a whois server in addition to the existing Whois::whois method. Whois::query("domain.com") # same as Whois::whois but added to normalize application interfaces. Whois::available?("domain.com") # returns true if the domain is available. Whois::registered?("domain.com") # returns true if the domain is registered. * ADDED: Experimental support for whois response parsing. This release is shipped with two parsers for the .it and .net TLD. r = Whois::query("google.it") r.available? # => false r.created_on # => Time.parse("1999-12-10 00:00:00") r.Nameservers # => ["ns1.google.com", "ns2.google.com", ...] * CHANGED: A whois query now returns a custom Whois::Response object instead of a simple string. The previous interface is still supported, so you can continue to compare the response with Strings but this behavior will be deprecated in a future release. r = Whois::query("domain.com") # supported but deprecated in a future version r == "NOT FOUND" # explicitly cast the object to string instead r.to_s == "NOT FOUND" # or use one of the other Whois::Response methods. Note. This is an experimental version (EAP) and it should not be considered production-ready. API might change at any time without previous notice. == Release 0.5.3 FIXED: self.valid_ipv6?(addr) references valid_v4? instead of valid_ipv4? (closes #300) FIXED: In some rare circumstances the server guessing fails to return the right server but returns an other server instead (closes #260). == Release 0.5.2 * ADDED: Whois::Client.new now accepts a block and yields self. client = Whois::Client.new do |c| c.timeout = nil end client.query("google.com") * FIXED: DeprecatedWhoisTest are flagged with need_connectivity method because they require connectivity. * SERVERS: Sync definitions with Debian whois 4.7.36. * SERVERS: Added new IPv4 allocations (whois 4.7.36). * SERVERS: Added .ls, .mg, .mk, .tz and .uy TLD definitions (whois 4.7.36). * SERVERS: Updated .jobs, .ms and .ph TLD definitions (whois 4.7.36). * SERVERS: Removed .td TLD definition (whois 4.7.36). == Release 0.5.1 * ADDED: Whois binary (closes #271). * FIXED: 'rake coverage' task crashes. * FIXED: In case of thin server the client should concatenate all responses (closes #259). == Release 0.5.0 * ADDED: Support for IPv4 and IPv6 (closes #265). * ADDED: Compatibility with existing GEM Whois 0.4.2 (closes #266). * ADDED: Deprecation warning for all the features that will be removed in Whois 0.6.0 (closes #266). * ADDED: Default timeout for any Whois query run from the client interface (closes #269). * FIXED: Whois#whois defined as instance method but modules can't have instances! * FIXED: Whois::Server::Adapters::Verisign adapter always use "whois.crsnic.net" regardless the adapter set in the server definition. * SERVERS: Updated .tv TLD definition (closes #261). * SERVERS: Updated .ae TLD definition (closes #270). == Release 0.1.1 * FIXED: Server#guess should raise ServerNotFound when query is not recognized. * FIXED: ServerError should inherits from Error and not StandardError. * CHANGED: Removed the Kernel#whois method because fights with many implementations of missing_method. Moved the method under the Whois namespace. == Release 0.1.0 * First release