Skip to content

Releases: mirage/ocaml-ipaddr

5.6.0

22 May 10:07
Compare
Choose a tag to compare

CHANGES:

  • Add host and subnet Seq.t iterators for Ipaddr.V4.prefix, Ipaddr.V6.Prefix
    and Ipaddr.Prefix (#107 @verbosemode @dinosaure)
  • Ipaddr.V4.compare: use Int32.unsigned_compare, as provided since OCaml 4.08
    (#118 @reynir)
  • Ipaddr.V6.t is a string, not a byte vector anymore (so it is immutable)
    (#119 @reynir, restoring 4.08 compatibility #121)
  • Provide Ipaddr.Prefix.address (since 5.0.0, Ipaddr.V4.Prefix.address and
    Ipaddr.V6.Prefix.address have been provided, but Ipaddr.Prefix.address was
    forgotten) (#122 @hannesm)
  • Fix further docstrings (#123, fixes #81, @hannesm @reynir)

5.5.0

31 Mar 13:09
Compare
Choose a tag to compare

CHANGES:

5.4.0

13 Mar 12:49
Compare
Choose a tag to compare

CHANGES:

5.3.1

04 Jul 17:20
Compare
Choose a tag to compare

CHANGES:

5.3.0

04 Mar 15:09
Compare
Choose a tag to compare

CHANGES:

  • Add with_port_of_string function (@dinosaure, @hannesm, #108)
  • breaking-change Be restrictive on Ipaddr.of_string (@dinosaure, @hannesm, #109)
    Before this release, Ipaddr.of_string accepts remaining bytes and returns
    a valid value such as "127.0.0.1aaaa" is valid. Now, ipaddr does not
    accept a string with remaining bytes.

5.2.0

11 Sep 10:45
Compare
Choose a tag to compare

CHANGES:

  • Use Cstruct.length instead of deprecated Cstruct.len (#106, @hannesm)
  • Provide instantiated functors Set, Map, V4.Set, V4.Map, V6.Set, V6.Map
    (#106, @hannesm)

v5.1.0

08 Jun 09:28
Compare
Choose a tag to compare

CHANGES:

v5.0.1

30 Sep 08:21
Compare
Choose a tag to compare

CHANGES:

v5.0.0

16 Jun 09:09
71882ae
Compare
Choose a tag to compare

CHANGES:

  • Do not zero out the non-prefix-length part of the address in
    {V4,V6}.Prefix.t (#99 @hannesm)
    Removed {V4,V6}.Prefix.of_address_string{,_exn} and
    {V4,V6}.Prefix.to_address_{string.buffer}

    To port code:

    • if you rely on Prefix.of_string to zero out the non-prefix-length address
      bits, call Prefix.prefix : t -> t subsequently.
    • Prefix.of_address_string{,_exn} can be replaced by
      Prefix.of_string{,_exn}, to retrieve the address use
      Prefix.address : t -> addr.
    • The Prefix.to_address_{string,buffer} can be replaced by
      Prefix.to_{string,buffer}, where Prefix.t already contains the IP
      address to be printed.
    • Instead of passing {V4,V6}.t * {V4,V6}.Prefix.t for an
      address and subnet configuration, {V4,V6}.Prefix.t is sufficient.
  • Implement {V4,V6,}.succ, {V4,V6,}.pred, {V4,V6}.Prefix.first, and
    {V4,V6}.Prefix.last functions (#94 @NightBlues)

  • Rename Prefix.of_netmask to Prefix.of_netmask_exn with labelled
    arguments (~netmask and ~address), provide Prefix.of_netmask which returns
    a (t, [> `Msg of string ]) result value (#95 @hannesm)

  • Fix undefined behaviour of V4.Prefix.mem with a CIDR with prefix length 0
    (#98 @verbosemode)

  • Use stdlib-shims to prevent deprecation warnings on OCaml 4.08
    (@avsm)

  • Remove unnecessary "sexplib0" dependency (#95 @hannesm)

  • Remove "{build}" directive from "dune" dependency (#93 @craigfe)

v4.0.0

12 Jul 15:09
Compare
Choose a tag to compare

CHANGES:

  • Rename the to/from_bytes functions to refer to octets
    instead. This distinguishes the meaning of human-readable
    addresses (strings in this library) and byte-packed
    representations(octets in this library) from the OCaml
    bytes type that represents mutable strings.

    Porting code should just be a matter of renaming functions
    such as:

    • Ipaddr.of_bytes becomes Ipaddr.of_octets
    • Macaddr.to_bytes becomes Macaddr.to_octets
  • Introduce new write_octets functions that can write
    octet representations of IPv4/v6 into an existing bytestring.

  • Use the domain-name library to produce domain names
    from IP addresses.

  • Remove the ipaddr.sexp and macaddr.sexp ocamlfind
    subpackages and instead have ipaddr-sexp and macaddr-sexp
    to match the opam package names.

  • Add new Ipaddr_cstruct and Macaddr_cstruct libraries
    for conversion to/from cstructs (#36 @nojb @avsm)