Releases: mirage/ocaml-ipaddr
5.6.0
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
5.4.0
5.3.1
5.3.0
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
v5.1.0
v5.0.1
v5.0.0
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, callPrefix.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}
, wherePrefix.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.
- if you rely on
-
Implement
{V4,V6,}.succ
,{V4,V6,}.pred
,{V4,V6}.Prefix.first
, and
{V4,V6}.Prefix.last
functions (#94 @NightBlues) -
Rename
Prefix.of_netmask
toPrefix.of_netmask_exn
with labelled
arguments (~netmask and ~address), providePrefix.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 "{build}" directive from "dune" dependency (#93 @craigfe)
v4.0.0
CHANGES:
-
Rename the
to/from_bytes
functions to refer tooctets
instead. This distinguishes the meaning of human-readable
addresses (string
s in this library) and byte-packed
representations(octet
s 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
becomesIpaddr.of_octets
Macaddr.to_bytes
becomesMacaddr.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
andmacaddr.sexp
ocamlfind
subpackages and instead haveipaddr-sexp
andmacaddr-sexp
to match the opam package names. -
Add new
Ipaddr_cstruct
andMacaddr_cstruct
libraries
for conversion to/from cstructs (#36 @nojb @avsm)