Skip to content

Releases: mirage/ocaml-ipaddr

v3.1.0

03 Mar 17:15
Compare
Choose a tag to compare

CHANGES:

  • Do not leak a Not_found exception when parsing [:
    in IPv6 and instead raise Parse_error as other errors
    do (found by fuzz testing in #84 by @dinosaure)
  • Install automatic toplevel printers for the Ipaddr
    types via [@@ocaml.toplevel_printer]. This enables
    utop to automatically install the printers (@avsm)

3.0.0

02 Jan 10:51
Compare
Choose a tag to compare

CHANGES:

This release features several backwards incompatible changes,
but ones that should increase the portability and robustness
of the library.

  • Remove the sexp serialisers from the main interface in favour
    of pp functions. Use the Ipaddr_sexp module if you still
    need a sexp serialiser.

    To use these with ppx-based derivers, simply replace the
    reference to the Ipaddr type definition with Ipaddr_sexp.
    That will import the sexp-conversion functions, and the actual
    type definitions are simply aliases to the corresponding type
    within Ipaddr. For example, you might do:

    type t = {
      ip: Ipaddr_sexp.t;
      mac: Macaddr_sexp.t;
    } [@@deriving sexp]
    

    The actual types of the records will be aliases to the main
    library types, and there will be two new functions available
    as converters. The signature after ppx has run will be:

    type t = {
      ip: Ipaddr.t;
      mac: Macaddr.t;
    }
    val sexp_of_t : t -> Sexplib0.t
    val t_of_sexp : Sexplib0.t -> t
    
  • Break out the Macaddr module into a separate opam package so
    that the Ipaddr module can be wrapped. Use the macaddr
    opam library now if you need just the MAC address functionality.

  • Replace all the of_string/bytes functions that formerly returned
    option types with the Rresult result types instead. This stops
    the cause of the exception from being swallowed, and the error
    message in the new functions can be displayed usefully.

  • In the Ipaddr.V6.to_string and to_buffer functions, remove the
    optional labelled argument v4 and always output v4-mapped strings
    as recommended by RFC5952. (#80 by @hannesm).

  • Remove pp_hum which was deprecated in 2.9.0.

  • Sexplib0 is now used which is more lightweight tha the full
    Sexplib library. Minimum OCaml version is now 4.04.0+ as a result
    of this dependency.

  • Improvements to the ocamldoc formatting strings for better
    layout and odoc compatibility.

2.9.0

13 Dec 10:09
3d713e7
Compare
Choose a tag to compare

CHANGES:

  • Add pp functions for prettyprinting and deprecate pp_hum variants.
    The two functions are currently the same, so porting is just a matter
    of replacing existing uses of pp_hum with pp (#71 @verbosemode)
  • Fix deprecation warnings on newer OCaml standard libraries (#74 @cfcs).
  • Fix base-unix depopt to be a real dependency (#68 @rgrinberg).
  • Fix missing sexplib dependency (#66 #67 @bmillwood).
  • Port to Dune from jbuilder and update opam metadata to 2.0 format (#76 @avsm).
  • Remove unused variable and bindings warnings in the implementation and
    signatures (#76 @avsm)
  • Fix toplevel handling of the ipaddr.top package by linking
    to compiler-libs instead of compiler-libs.toplevel (#76 @avsm based on
    fix in mirage/ocaml-uri#130 by @yallop)
  • Update Travis to test latest distros by using their aliases (#76 @avsm)
  • Upgrade opam metadata to the 2.0 format (#76 @avsm)

Port to jbuilder

01 Jun 14:03
Compare
Choose a tag to compare
  • Port to Jbuilder (#65 @vbmithr @avsm).
  • Minimum version of OCaml required is now 4.03.0 (formerly was 4.02.2),
    due to the use of recent ppx_sexp_conv with Jbuilder also having that
    as the minimum supported compiler version.

2.7.2

17 Feb 11:02
Compare
Choose a tag to compare

2.7.2 (2017-02-16)

  • Fix a missing findlib toploop package (#61 from Vincent Bernardoff)

2.7.1

16 Nov 15:25
Compare
Choose a tag to compare

2.7.1 (2016-11-16)

  • Use topkg for build (#60 from Jochen Bartl)