-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathIPy-ChangeLog
117 lines (88 loc) · 3.81 KB
/
IPy-ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
Version 0.82 (under development)
* Add support for array slices
Version 0.81 (2013-04-08)
* Correct reverseName() for IPv6 addresses, so IP('::1').reverseName() returns correct.
* Add network mask awareness to v46map()
* Fix Python 3 errors in IPSet class
* Make IPSet base class be object when MutableSet isn't available, fixing
errors in Python 2.5
Version 0.80 (2013-03-26)
------------
* Drop support of Python older than 2.4
* Python 3 does not need 2to3 conversion anymore (same code base)
* Fix adding of non-adjacent networks:
192.168.0.0/24 + 192.168.255.0/24 made 192.168.0.0/23
* Fix adding networks that don't create a valid subnet:
192.168.1.0/24 + 192.168.2.0/24 made 192.168.1.0/23
* Fix adding with an IPv6 address where .int() was < 32 bits made IPy believe it
was an IPv4 address:
::ffff:0/112 + ::1:0:0/112 made 255.255.0.0/111
* Add support of IPSets
* Add support for subtracting a network range
* Prevent IPv4 and IPv6 ranges from saying they contain each other
* Add a .v46map() method to convert mapped address ranges
such as IP('::ffff:192.168.1.1'); RFC 4291
* Change sort order to more natural:
IPv4 before IPv6; less-specific prefixes first (/0 before /32)
Version 0.76 (2013-03-19)
-------------------------
* ip == other and ip != other doesn't fail with an exception anymore if other
is not a IP object
* Add IP.get_mac() method: get the 802.3 MAC address from IPv6 RFC 2464
address.
* Fix IP('::/0')[0]: return an IPv6 instead of an IPv4 address
Version 0.75 (2011-04-12)
-------------------------
* IP('::/0').netmask() gives IP('::') instead of IP('0.0.0.0')
Version 0.74 (2011-02-16)
-------------------------
* 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
Version 0.73 (2011-02-15)
-------------------------
* 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
Version 0.72 (2010-11-23)
-------------------------
* Include examples and MANIFEST.in in source build (add them to
MANIFEST.in)
* Remove __rcsid__ constant from IPy module
Version 0.71 (2010-10-01)
-------------------------
* 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)
Version 0.70 (2009-10-29)
-------------------------
* 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.
Version 0.64 (2009-08-19)
-------------------------
* Create MANIFEST.in to fix setup.py bdist_rpm, fix by Robert Nickel
Version 0.63 (2009-06-23)
-------------------------
* Fix formatting of "IPv4 in IPv6" network, eg. IP('::ffff:192.168.10.0/120'),
the netmask ("/120" in the example) was missing!
Version 0.62 (2008-07-15)
-------------------------
* Fix reverse DNS of IPv6 address: use ".ip6.arpa." suffix instead of
deprecated ".ip6.int." suffix
Version 0.61 (2008-06-12)
-------------------------
* Patch from Aras Vaichas allowing the [-1] operator
to work with an IP object of size 1.
Version 0.60 (2008-05-16)
-------------------------
* strCompressed() formats '::ffff:a.b.c.d' correctly
* Use strCompressed() instead of strFullsize() to format IP addresses,
ouput is smarter with IPv6 address
* Remove check_addr_prefixlen because it generates invalid IP address