-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathChanges
189 lines (105 loc) · 5.25 KB
/
Changes
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
{{$NEXT}}
- namespace::autoclean is now used to clean module namespaces.
- confessions now correctly skip internal stack frames
- Subclasses of Net::Works::Addresses correctly return instances of the subclass
when next_ip and previous_ip are called, and as_ipv4_string correctly respects
overridden new_from_integer methods. Thanks to edmundadjei for pointing out
this issue and helping develop a fix. GH #23.
0.22 2016-08-21
- Added a Net::Works::Network->is_single_address method. This returns true if
the network contains just one single address. Requested byAlexander
Hartmaier. GH #17.
0.21 2015-04-30
- `new_from_integer` will now accept a `Math::BigInt` in addition to a
`Math::UInt128` or a standard Perl integer.
0.20 2014-10-16
- Added numeric & string comparison overloading to Net::Works::Network.
- Added string comparison overloading to Net::Works::Address.
0.19 2014-08-27
- Fixed validation when a string with more than one slash (/) is passed to
Net::Works::Network->new_from_string.
0.18 2014-07-08
- Fixed warnings that would happen when trying to validate some bad data. This
could happen if you passed a string with no slash (/) to
Net::Works::Network->new_from_string.
- Make all errors call Carp::confess instead of die for consistency.
0.17 2014-07-03
- The mask_length attribute (and related methods) in Net::Works::Network has
been renamed to prefix_length, which is more correct and consistent with the
terminology used for IPv6. The old names (and methods) are still available,
but will probably start warning in a future release. Fixes GH #8.
- Require namespace::autoclean 0.16+ so our classes are not inflated from Moo
to Moose classes. Fixes GH #6.
0.16 2013-12-25
- The last address in the ::0/0 network was being returned as ::0 instead of
ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff.
- The IPv6 address ::0 is now always stringified as "::0", not "::". However,
either will be parsed correctly when giving an address as a string to a
constructor.
0.15 2013-12-23
- If you passed a Math::Int128 number to Net::Works::Network->new_from_integer
and specified the ip version as 4, the object would still stringify as IPv6.
0.14 2013-12-17
- Docs were changed to only use IPv4 and IPv6 addresses from the documentation
address space in the docs. (Alexander Hartmaier)
- Net::Works::Network objects now overload stringification. (Alexander
Hartmaier)
- Added more reserved IPv4 and IPv6 networks to be removed from a given IP
range and included a list of all such networks in the docs.
0.13 2013-08-22
- Added two new Net::Works::Network methods: $network->contains() and
$network->split().
0.12 2013-07-10
- Converted to use Moo instead of Moose.
- Switched bugtracker to GitHub.
0.11 2013-06-24
- Added $network->first_as_integer() and ->last_as_integer() methods. This is
an optimization so you don't have to write
$network->first()->as_integer(). Internally, the latter just turns an
integer into a Net::Works::Address object that you then get the same integer
out of.
0.10 2013-06-20
- The Net::Works::Network->range_as_subnets() method now takes a version
parameter so you can explicitly ask for IPv4 or IPv6.
- Also fixed the license in the docs to match the LICENSE file in the repo
(same as Perl 5).
0.09 2013-02-06
- Documentation fixes
0.08 2013-02-04
- Fixed type constraints so they inline.
0.07 2012-12-11
- Removed all use of Data::Validate::IP and NetAddr::IP::Util.
- Validate all data passed to the constructor.
0.06 2012-12-07
- Require Socket 1.99+. This fixes test failures with old version of Socket
that don't provide inet_ntop or inet_pton.
0.05 2012-12-07
- More internals rewrites for the sake of speed. We now use Math::Int128
instead of Math::BigInt. The former is way faster.
- Net::Works::Network now has two constructors, new_from_string() and
new_from_integer(), just like Net::Works::Address. The new() method should
no longer be used.
0.04 2012-12-04
- Speed improvements for Net::Works::Network->range_as_subnets(). For most use
cases this won't matter but for our use at MaxMind we end up calling this a
lot so making it faster is a big win.
0.03 2012-12-04
- Work around a bug in Data::Validate::IP's is_ipv6 sub. It doesn't think '::'
is a valid IPv6 address. If you created a Net::Works::Network object with
this address it would treat it as an IPv4 address unless you explicitly
specified the version.
0.02 2012-12-03
- All changes in this release come from Greg Oschwald.
- Major internals rewrite to speed things up. We no longer wrap NetAddr::IP
objects (but we do use NetAddr::IP::Util).
- Net::Works::Network->mask_length() now returns the mask as passed to the
constructor, not the number of bits in the mask. The ->bits method returns
the number of bits in the mask (32 or 128).
- The Network->netmask_as_integer() method no longer exists (use mask_length()
instead). The ->max_netmask_as_integer() method has been renamed to
->max_mask_length().
- Added Net::Works::Address->mask_length() and ->bits() (which always return
the same thing).
- We use Socket::inet_ntop to stringify addresses.
0.01 2012-11-28
- First release upon an unsuspecting world.