Skip to content

Releases: seancfoley/IPAddress

Version 5.3.1

15 May 19:37

Choose a tag to compare

Fixes reversed sub-node order with trie block size iterator

Version 5.3.0

14 May 03:49

Choose a tag to compare

This version introduces address tries, associative address tries, address sets backed by address tries, and maps backed by associative address tries

  • added AddressTrie and its subclasses for IPv4, IPv6 and MAC
  • added AssociativeAddressTrie and its subclasses for IPv4, IPv6 and MAC
  • tries can be used as Java collections framework navigable set
  • associative tries can be used as Java collections framework navigable map
  • added testBit and isOneBit methods to all series and segments
  • fixed IPAddressSeqRange join(IPAddressSeqRange...) for issue #37
  • added OSGI manifest details for OSGI support for issue #33

Version 5.2.1

05 Jan 19:48

Choose a tag to compare

Minor fixes to IPv4/v6 conversions 6 to 4, isatap, and embedded address extraction.

Version 5.2.0

29 Dec 20:47

Choose a tag to compare

This version introduces methods for Java 8 functional-style operations.

  • added stream methods for addresses, address sections, address segments, and ip address sequential ranges: stream, prefixStream, prefixStream(int prefixLength), prefixBlockStream, prefixBlockStream(int prefixLength), blockStream(int segmentCount), sequentialBlockStream, segmentsStream
  • added corresponding spliterator methods: spliterator, prefixSpliterator, prefixSpliterator(int prefixLength), prefixBlockSpliterator, prefixBlockSpliterator(int prefixLength), blockSpliterator(int segmentCount), sequentialBlockSpliterator, segmentsSpliterator
  • added functions to create a single stream from multiple spliterators in AddressComponentRange:
    • <T extends AddressComponent> Stream<T> stream(Function<T, Stream<? extends T>> addrStreamFunc, T ...components)
    • <T extends AddressComponent> Stream<T> stream(Function<T, Stream<? extends T>> addrStreamFunc, Collection<? extends T> components)
  • added coverWithPrefixBlock method to find single covering prefix block, the smallest prefix block covering two subnets or addresses
  • added IPAddressString and HostName parsed mask access through getMask method
  • made sub-typing of address classes easier by loosening restrictions on using multiple network objects
  • altered network mask with prefix length so that it is single host
  • fixed a serialization issue involving IPAddressString instances with masks
  • fixed a threading issue with IPAddressString.getDivisionGrouping
  • fixed issue #32, mergeToPrefixBlocks exception on /1 prefix blocks

Version 4.3.3

29 Dec 01:02

Choose a tag to compare

  • fix to issue #32, mergePrefixBlocks exception on /1 prefix blocks
  • fixed 4.3.2 javadoc

Version 5.1.0

21 Oct 02:14

Choose a tag to compare

Mostly parsing and masking improvements.

  • getSequentialRange() method added to IPAddressString for direct access to sequential range
  • improved handling of masking and bitwise-oring subnets. isMaskCompatibleWithRange replaced by maskRange, same with bitwise-or.
  • getDivisionGrouping() method added to IPAddressString for "as-is" parsing
  • toString() for division strings adjusted, no longer using '*' due to varying bit lengths for divisions and potentially no segment separator to indicate bit length, also using radix matching parsed string
  • reverse ranges allowed in parsed strings
  • improved control/support of inferred range boundaries
  • fix to leading zeros detection for issue #20
  • fix to generation of IPv6 sections from bytes
  • adjusted IPAddress.toAddressString() to improve toHostAddress() in resulting IPAddressString
  • added toZeroNetwork() to get IP address with network bits zeroed
  • added getNetworkMask() and getHostMask() to IPAddressSegmentSeries as requested in issue #27
  • a few other minor fixes

Version 4.3.1

21 Oct 01:35

Choose a tag to compare

  • fix to leading zeros detection for issue #20
  • fix to generation of IPv6 sections from bytes
  • adjusted IPAddress.toAddressString() to improve toHostAddress() in resulting IPAddressString
  • added toZeroNetwork() to get IP address with network bits zeroed
  • added getNetworkMask() and getHostMask() to IPAddressSegmentSeries as requested in issue #27
  • multicast fix and fix to toInetAddress()

Version 5.0.2

03 Feb 04:42

Choose a tag to compare

  • added getLeadingBitCount(boolean) getTrailingsBitCount(boolean) for getting the number of leading or trailing consecutive one or zero bits in an ip address or ip address section
  • fixed an IPAddressString.contains issue #13 (comment)
  • added containsNonZeroHosts for determining if a subnet/address contains the non-zero host addresses of a subnet or address requested in #13 (comment)
  • added HostName.asInetSocketAddress for host names or ip addresses with ports
  • added isZeroHost() and isZeroHost(int) to ip address and ip address sections
  • fixed issue #15, conversion to InetAddress
  • fixed issue with ipv6 multicast check
  • added more constructors to HostName for InetSocketAddress and InterfaceAddress

Version 5.0.1

05 Jan 02:47

Choose a tag to compare

  • fixes to IPAddressString.contains (no issues exist with IPAddress.contains)
  • span with and merge to prefix blocks return only addresses with prefix lengths (including bit-count prefix lengths)
  • span with and merge to sequential blocks return no addresses with prefix lengths
  • removeBitCountPrefixLength() removes bit-count prefix lengths

Version 1.0.1

03 Jan 16:38

Choose a tag to compare

Version 1.0.1 source can be compiled with a Java 6 compiler. The IPAddress.jar included with this release is compiled with a Java 6 compiler, and hence can be run on Java 6, Java 7, and up.