IPy Changelog

New in version 0.75

April 12th, 2011
  • IP('::/0').netmask() gives IP('::') instead of IP('0.0.0.0')

New in version 0.74 (February 16th, 2011)

  • Fix tests for Python 3.1 and 3.2
  • ip.__nonzero__() and (ipa in ipb) return a bool instead of 0 or 1
  • IP('0.0.0.0/0') + IP('0.0.0.0/0') raises an error, fix written by Arfrever

New in version 0.73 (February 15th, 2011)

  • Support Python 3: setup.py runs 2to3
  • Update the ranges for IPv6 IPs
  • Fix reverseName() and reverseNames() for IPv4 in IPv6 addresses
  • Drop support of Python < 2.5

New in version 0.71 (October 1st, 2010)

  • Use xrange() instead of range()
  • Use isinstance(x, int) instead of type(x) == types.IntType
  • Prepare support of Python3 (use integer division: x // y)
  • Fix IP(long) constructor: ensure that the address is not too large
  • Constructor raise a TypeError if the type is not int, long, str or unicode
  • 223.0.0.0/8 is now public (belongs to APNIC)

New in version 0.70 (October 29th, 2009)

  • New "major" version because it may break compatibility
  • Fix __cmp__(): IP('0.0.0.0/0') and IP('0.0.0.0') are not equal
  • Fix IP.net() of the network "::/0": "::" instead of "0.0.0.0". IPy 0.63 should fix this bug, but it wasn't.

New in version 0.64 (August 19th, 2009)

  • Create MANIFEST.in to fix setup.py bdist_rpm, fix by Robert Nickel

New in version 0.63 (June 23rd, 2009)

  • Fix formatting of "IPv4 in IPv6" network, eg. IP('::ffff:192.168.10.0/120'), the netmask ("/120" in the example) was missing!
  • Fix IP.net() of the network "::/0": "::" instead of "0.0.0.0"