Package is now compatible with dune 1.7.
Several backwards incompatible changes in version 3.0.0:
- sexp serialisers removed from main interface;
- macaddr module now in separate opam package;
- replace of_string/bytes functions with rresult types;
- use sexplib0 instead of the full sexp library;
- changes to function signatures.
Full details in the CHANGES.md file; there are also several minor changes.
The actual fix as been done by "pkglint -F */*/buildlink3.mk", and was
reviewed manually.
There are some .include lines that still are indented with zero spaces
although the surrounding .if is indented. This is existing practice.
Port to Jbuilder (#65 @vbmithr @avsm). There should be no observable changes,
except that Ipaddr_unix is now in a separate subdirectory. This means that
packages that implicitly depended on the module without including the
ocamlfind ipaddr.unix package may now fail. Just adding the ocamlfind
dependency will fix it, and is backwards compatible with older Ipaddr
releases.
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.0 (2016-02-14):
* Remove sexplib.syntax, type_conv deps and camlp4 transitive dependency
* Add ppx_sexp_conv dependency
* Require OCaml 4.02.2+
* Add `Ipaddr.Prefix.subset`, `Ipaddr.V4.Prefix.subset` and `Ipaddr.V6.subset`
predicates to test containment of subnets (#52 from @seliopou)
2.6.1 (2015-02-20):
* Fix findlib requires in oasis to restore pre-4.02.1 compatibility
2.6.0 (2015-02-19):
* Change IPv6 link-local address prefix from fe80::/10 to fe80::/64. (#39)
* Remove type bytes = string alias (potentially breaking)
* Turn on -safe-string (#41)
* {V4,V6}.to_bytes_raw now uses Bytes.t rather than string (potentially breaking)
* Add multicast MAC conversions from RFC 1112 and RFC 2464
* Add to_domain_name conversions to DNS label lists (in-addr.arpa and ip6.arpa)
* Add V6.interface_routers, V6.site_routers, and V6.Prefix.solicited_node
* Add V6.link_address_of_mac to convert a MAC into a link local IP address
* Add `with sexp` (de)serializers to all of the Ipaddr and Macaddr types.
* Add `Ipaddr.V6.Prefix.of_netmask` for conversion from an IPv6
address/netmask to prefix (useful for some binary interfaces).
* Add `Ipaddr.V6.Prefix.netmask` to generate a netmask address from a
prefix (useful for some binary interfaces).
* Add `Ipaddr.Prefix.network` for generic prefix -> address conversion
* Add `Ipaddr.Prefix.netmask` for generic prefix -> netmask conversion
* Add `Ipaddr.V4.Prefix.of_netmask` for conversion from an
address/netmask to prefix
* Add `Ipaddr.V4.Prefix.netmask` to generate a netmask address from a prefix
* Add an [Ipaddr_unix] module to convert to-and-from the standard library.
* Add a toplevel pretty printer in the `ipaddr.top` package.
* Add `of_string_raw` to `Ipaddr.V4.Prefix` and `Ipaddr.V6.Prefix`
* Add `of_addr` to `Ipaddr.V4.Prefix` and `Ipaddr.V6.Prefix`
* Add type `('v4,'v6) v4v6` to `Ipaddr` to represent version disjuncts
* Add `Ipaddr.Prefix` module for generic prefix manipulation
* Change `Ipaddr.V4.make` to accept `int` rather than `int32` (breaking)
* Add IPv6 support
* Add generic IP address support
* Add type `scope` for classifying address scopes
* Add `Ipaddr.V4.of_string_raw` for parsing inside of larger strings
* Add `Ipaddr.V4.to_int16` and `Ipaddr.V4.of_int16`
* Add `unspecified`, `nodes`, and `routers` constants to `Ipaddr.V4`
* Add `Ipaddr.V4.Prefix.network_address` to put an address into a subnet
* Add `of_address_string_exn`, `of_address_string`, `to_address_string`,
`to_address_buffer` to `Ipaddr.V4.Prefix` to parse/print combined addr/prefix
* Add `multicast_org`, `multicast_admin`, `multicast_link` subnet constants to
`Ipaddr.V4.Prefix`
* Add `Ipaddr.V4.scope` to classify IPv4 addresses
* Add `Ipaddr.V4.is_global` and `Ipaddr.V4.is_multicast` predicates
* Add optional `sep:char` argument to `Macaddr.to_string`
* Remove internal use of Scanf.scanf