== ipaddress 0.8.2 CHANGED:: merged bundler branch to cleanup gemspec and Rakefiles FIXED:: IPAddress::IPv4.split handling (Issue #40) NEW:: Added #[]= method to IPv4/6 classes to add octet writing support. (Issue #24) NEW:: IPV4#multicast? NEW:: IPV4#loopback? NEW:: IPV4#to() == ipaddress 0.8.1 CHANGED:: ipaddress now uses minitest for testing, all tests passing == ipaddress 0.8.0 CHANGED:: ipaddress now uses this[https://gist.github.com/cpetschnig/294476] regexp to validate IPv6 addresses. Thanks to Christoph Petschnig for his regexp and to Bronislav Robenek for fixing this. CHANGED:: Removed extension methods and extension directory to facilitate integration with the stdlib CHANGED:: Reworked IPv4#<=>, now intuitively sorts objects based on the prefix CHANGED:: IPv4#supernet now returns "0.0.0.0/0" if supernetting with a prefix less than 1 CHANGED:: IPv4#subnet now accept a new prefix instead of number of subnets (as per RFC3531) NEW:: IPv6#network NEW:: Prefix128#host_prefix NEW:: IPv6#broadcast_u128 NEW:: IPv6#each NEW:: IPv6#<=> NEW:: IPv4#split NEW:: IP#ntoa == ipaddress 0.7.5 CHANGED:: IPAddress::IPv4#each_host to improve speed FIXED:: IPAddress::IPv4::summarize bug (summarization should now work properly) NEW:: IPAddress::IPv4#include_all? NEW:: #ipv4? and #ipv6? == ipaddress 0.7.0 NEW:: IPAddress::IPv6#include? NEW:: IPAddress::IPv6#network_u128 NEW:: Modified IPAddress::IPv6::Mapped to accept IPv4 mapped addresses in IPv6 format NEW:: IPAddress::IPv4#private? NEW:: IPAddress::IPv4::parse_classful == ipaddress 0.6.0 === API changes * IPv4#to_s now returns the address portion only, to retain compatibility with IPAddr. Example: IPAddress("172.16.10.1/24").to_s #=> "172.16.10.1" # ipaddress 0.6.0 IPAddress("172.16.10.1/24").to_s #=> "172.16.10.1/24" # ipaddress 0.5.0 * IPv6#to_s now returns the address portion only, to retain compatibility with IPAddr. Example: IPAddress "2001:db8::8:800:200c:417a/64".to_s #=> "2001:db8::8:800:200c:417a" # ipaddress 0.6.0 IPAddress "2001:db8::8:800:200c:417a/64".to_s #=> "2001:db8::8:800:200c:417a/64" # ipaddress 0.6.0 * IPv6::Unspecified#to_s, IPv6::Loopback and IPv6::Mapped#to_s now return the address portion only, to retain compatibility with IPAddr. * IPv4::summarize now returns an array even if the result is a single subnet, to keep consistency and avoid confusion === New methods * IPv4#to_string and IPv6#to_string: print the address with the prefix portion, like the #to_s method in ipaddress 0.5.0 * IPAddress::parse, for those who don't like the wrapper method IPAddress() * IPv6#to_string_uncompressed, returns a string with the uncompressed IPv6 and the prefix * IPv6::Mapped#to_string, returns the IPv6 Mapped address with IPv4 notation and the prefix * IPv6#reverse, returns the ip6.arpa DNS reverse lookup string * IPv4#arpa and IPv6#arpa, alias of the respective #reverse methods * Prefix#+, Prefix#- === Library structure * Moved all the IPAddress module methods from lib/ipaddress/ipbase.rb to lib/ipaddress.rb * Removed IPBase superclass * IPv4 and IPv6 classes no longer inherit from IPBase * Removed lib/ipaddress/ipbase.rb * Removed test/ipaddress/ipbase_test.rb === Minor fixes * Replaced Ruby 1.9 deprecated Hash#index with Hash#key * Removed require ruby-prof from tests which was causing users to install ruby-prof or manually remove the line * Removed "must" method from tests, replaced by normal Test::Unit methods * Removed duplicate Jeweler entry in Rakefile * Made Integer#closest_power_of_2 more general by adding an optional limit parameter * Fixed summarization algorithm (thanks to nicolas fevrier) * Fixed bug in prefix_from_ip (thanks to jdpace) === Documentation * Normalized README rdoc headers * Added documentation for IPAddress::Prefix * Added documentation for IPAddress::IPv4 and IPAddress::IPv6 * Fixed formatting * Fixed lots of typos