v0.9.0
CHANGES:
-
Add connection progress indicator (@talex5 #220).
Clients can now useCapnp_rpc_unix.with_cap_exn
to show a progress indicator while waiting to connect.
It will use the log if enabled.
If not, but stderr is a tty, it shows a message while connecting and then erases it (if connecting takes longer than 0.5s).
If stderr is not a tty, it just prints a message there. -
Use
Mirage_crypto_rng_lwt.initialize
instead ofMirage_crypto_rng_unix.initialize
(@hannesm #217).
The former periodically feeds entropy to the RNG, while the latter seeds the RNG only once. -
Set TCP_KEEPIDLE=60 if possible (@talex5 #214).
Cap'n Proto connections tend to be long lived and we therefore turn on theSO_KEEPALIVE
option.
However, the default keepalive timeout of 2 hours is much too long for some networks.
In particular, Docker's libnetwork silently drops idle connections after about 10 minutes.
Windows support:
-
Prevent crash if ExtUnix wasn't built with sockopt (@MisterDA #218).
If ExtUnix isn't built with sockopt then the symbolhave_sockopt_int
isn't available and an exception is raised.
This may be the case on some environments (e.g., ExtUnix built with mingw-w64).
It is a workaround until support forTCP_KEEPIDLE
is added for these environments (e.g., using Winsock instead). -
Switch from "capnpc" to "capnp compile" (@talex5 #213).
capnpc
seems to be the old name, and isn't present on Windows.
Build changes:
-
Remove Travis and Dockerfile (@talex5 #220).
Travis is very slow and error-prone now, and ocaml-ci generates a working Dockerfile automatically for people who want it. -
Include transitive dependencies in opam files (@talex5 #219).
Patch generated by https://github.com/ocurrent/opam-dune-lint/ -
Require
tcpip.unix
specifically to get the checksum stubs linked (@hannesm #216).