CHANGELOG.rdoc 3.93 KB
Newer Older
1 2
== ipaddress 0.8.2

Mike Mackintosh's avatar
Mike Mackintosh committed
3
CHANGED:: merged bundler branch to cleanup gemspec and Rakefiles
4
FIXED:: IPAddress::IPv4.split handling (Issue #40)
Mike Mackintosh's avatar
Mike Mackintosh committed
5
NEW:: Added #[]= method to IPv4/6 classes to add octet writing support. (Issue #24)
6 7 8 9
NEW:: IPV4#multicast?
NEW:: IPV4#loopback?
NEW:: IPV4#to()

10
== ipaddress 0.8.1
bluemonk's avatar
bluemonk committed
11

12
CHANGED:: ipaddress now uses minitest for testing, all tests passing
bluemonk's avatar
bluemonk committed
13

14 15
== ipaddress 0.8.0

16
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.
17
CHANGED:: Removed extension methods and extension directory to facilitate integration with the stdlib
18 19
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
20
CHANGED:: IPv4#subnet now accept a new prefix instead of number of subnets (as per RFC3531) 
21
NEW::     IPv6#network
22 23 24
NEW::     Prefix128#host_prefix
NEW::     IPv6#broadcast_u128
NEW::     IPv6#each
25
NEW::     IPv6#<=>
26
NEW::     IPv4#split
27
NEW::     IP#ntoa
28

bluemonk's avatar
bluemonk committed
29
== ipaddress 0.7.5
30

bluemonk's avatar
bluemonk committed
31
CHANGED:: IPAddress::IPv4#each_host to improve speed
bluemonk's avatar
bluemonk committed
32 33
FIXED::   IPAddress::IPv4::summarize bug (summarization should now work properly)
NEW::     IPAddress::IPv4#include_all?
34
NEW::     #ipv4? and #ipv6?
bluemonk's avatar
bluemonk committed
35 36 37

== ipaddress 0.7.0

38 39
NEW:: IPAddress::IPv6#include?
NEW:: IPAddress::IPv6#network_u128
40
NEW:: Modified IPAddress::IPv6::Mapped to accept IPv4 mapped addresses in IPv6 format
bluemonk's avatar
bluemonk committed
41 42
NEW:: IPAddress::IPv4#private?
NEW:: IPAddress::IPv4::parse_classful
bluemonk's avatar
bluemonk committed
43

44
== ipaddress 0.6.0
bluemonk's avatar
bluemonk committed
45

46
=== API changes
bluemonk's avatar
bluemonk committed
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
* 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

72
=== New methods
bluemonk's avatar
bluemonk committed
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
* 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#-

88
=== Library structure
bluemonk's avatar
bluemonk committed
89 90 91 92 93 94 95
* 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

96
=== Minor fixes
bluemonk's avatar
bluemonk committed
97 98 99 100 101 102 103 104 105 106 107
* 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)

108
=== Documentation
bluemonk's avatar
bluemonk committed
109 110 111 112 113 114 115
* Normalized README rdoc headers
* Added documentation for IPAddress::Prefix
* Added documentation for IPAddress::IPv4 and 
  IPAddress::IPv6
* Fixed formatting
* Fixed lots of typos