Releases: maltalex/ineter
Releases · maltalex/ineter
v0.3.1
v0.3.0
-
Bugfix: several parsing methods used
String.split()
andInteger.parseInt()
, leading to the parser successfully parsing addresses like192.168,-0,1,
. These methods were rewritten to reject such strings and appropriate tests cases were added. -
Incorporated several improvements suggested by @reutsharabani in #12. The most significant one being the addition of a bunch of additional generic parameters to the
IPRange
interface. This allows the interface to expose a lot more methods of the underlying types. This should make it a lot easier to write generic classes on top ofIPRange
that work with both IPv4 and IPv6. The tradeoff is thatIPRange
itself has become more complex. -
New features:
- static
max
andmin
functions in theIPAddress
interface - public static
MAX_ADDR
andMIN_ADDR
(e.g.0.0.0.0
and255.255.255.255
for IPv4) withRemoved
methods forIPRange
for creating aList
of ranges based on the existing range, by removing one or more ranges. For example, removing10.10.10.10
from10.0.0.0/8
will return the list[10.0.0.0-10.0.0.9, 10.0.0.11-10.255.255.255]
. This addresses the request in #9.
- static
-
Misc stuff you don't care about:
- Use spotless to achieve consistent formatting of code across IDEs
- Replaced travis.ci with github actions, including a dedicated call to "spotlessCheck"
- Updated gradle and gradle plugins to latest versions
v0.2.0
- Abstract classes were replaced with lightweight interfaces for more flexibility. This shouldn't affect most users, but it does break serialization compatibility
- IPv4Subnet mask length is now an
int
instead of an annoyingbyte
, making it consistent with the IPv6 counterpart - Removed deprecated
between
function - Length type of ranges (
Long
for IPv4,BigInteger
for IPv6) is now a generic parameter of theIPRange
/IPSubnet
interface. This should make writing generic code that usesIPRange
orIPSubnet
easier without affecting users of the concrete classes. - New methods in
IPv4Address
,IPv6Address
:- Logical operators:
and
,not
,or
,xor
toRange
,toSubnet
distanceTo
,isAdjacentTo
- Logical operators:
- New methods in
IPv4Range
,IPv6Range
,IPv4Subnet
,IPv6Subnet
:- Range extension methods:
withFirst
,withLast
intLength
merge
for merging several ranges into a minimal list of non-overlapping ranges
- Range extension methods:
v0.1.2
v0.1.1
v0.1.0 - Initial Release
Initial ineter release