Hello

Here is the latest OCaml Weekly News, for the week of July 30 to August
06, 2019.

Table of Contents
─────────────────

OCaml 4.08.1+rc3
Ideal OCaml setups with VIM, Emacs, IntelliJ/IDEA?
KV database (nosql) recommended for Mirage?
A library for Commitment Schemes
Old CWN


OCaml 4.08.1+rc3
════════════════

 Archive:
 <https://sympa.inria.fr/sympa/arc/caml-list/2019-08/msg00004.html>


Florian Angeletti announced
───────────────────────────

 The release of OCaml version 4.08.1 is expected for next week.

Before this happy event, we are releasing a third and last release candidate. This new release integrates two configuration fixes from
 Debian and Fedora with the rc2 fixes for compilation failures in
presence of "-pack" reported by Fabian @copy (breaking nocrypto), and
 dynlinking failures in bytecode mode reported by Andre Maroneze
 (breaking Frama-C).

 The source code is available at these addresses:

  <https://github.com/ocaml/ocaml/archive/4.08.1+rc3.tar.gz>
  <https://caml.inria.fr/pub/distrib/ocaml-4.08/ocaml-4.08.1+rc3.tar.gz>

The compiler can also be installed as an OPAM switch with one of the
 following commands:

 ┌────
│ opam switch create ocaml-variants.4.08.1+rc3 --repositories=default,beta=git+https://github.com/ocaml/ocaml-beta-repository.git
 └────

 or

 ┌────
│ opam switch create ocaml-variants.4.08.1+rc3+<VARIANT> --repositories=default,beta=git+https://github.com/ocaml/ocaml-beta-repository.git
 └────

 where you replace <VARIANT> with one of these:
 • afl
 • default-unsafe-string
 • force-safe-string
 • flambda
 • fp
 • fp+flambda

 We want to know about any bugs. Please report them here:
   <https://github.com/ocaml/ocaml/issues>

 Happy hacking, — Florian Angeletti, for the OCaml team.


OCaml 4.08.1 rc3:
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

◊ Bug fixes:

• #7887: ensure frame table is 8-aligned on ARM64 and PPC64   (Xavier Leroy, report by Mark Hayden, review by Mark Shinwell    and Gabriel
   Scherer)

• #8751: fix bug that could result in misaligned data section when compiling to   native-code on amd64.  (observed with the mingw64
    compiler)   (Nicolás Ojeda Bär, review by David Allsopp)

• #8769, #8770: Fix assertion failure with -pack   (Leo White, review
   by Gabriel Scherer, report by Fabian @copy)

• #8816, #8818: fix loading of packed modules with Dynlink (regression in   #2176).   (Leo White, report by Andre Maroneze, review by
   Gabriel Scherer)

• #8830: configure script: fix tool prefix detection and Debian's
   armhf   detection   (Stéphane Glondu, review by David Allsopp)

• #8843, #8841: fix use of off_t on 32-bit systems.   (Stephen Dolan,
   report by Richard Jones, review by Xavier Leroy)


Ideal OCaml setups with VIM, Emacs, IntelliJ/IDEA?
══════════════════════════════════════════════════

 Archive:
 
<https://discuss.ocaml.org/t/ideal-ocaml-setups-with-vim-emacs-intellij-idea/4037/6>


Deep in this thread, Anton Kochkov said
───────────────────────────────────────

A small update: the OCaml and Dune runtime files landed in NeoVim as
 well, so you can already try them if you use it from git:
 
<https://github.com/neovim/neovim/commit/87140f234ac1f152f6f273dee5ab1e42c7b1d78b>


KV database (nosql) recommended for Mirage?
═══════════════════════════════════════════

 Archive:
 <https://discuss.ocaml.org/t/kv-database-nosql-recommended-for-mirage/4191/1>


Orbifx asked
────────────

Which KV database would you recommend for applications intended to
 build as Mirage Unikernels?


Calascibetta Romain replied
───────────────────────────

 Currently, when we need to make a KV-store with MirageOS, we use
[irmin] as an high-level KV-store. Then, it provides some back-end like [git]. A tutorial can be found [here]. So, we currently prepare some releases of several packages around [MirageOS] and [irmin], so
 you currently need to `pin' some packages.

Example of how to use Irmin with Git backend and MirageOS can be found
 here:
 • A static blog engine [Canopy]
 • Some [unikernels] around DNS and iCalendar services
 • A [_paste-bin_] with [httpaf]


[irmin] <https://github.com/mirage/irmin>

[git] <https://github.com/mirage/ocaml-git>

[here] <https://zshipko.github.io/irmin-tutorial/Introduction.html>

[MirageOS] <https://github.com/mirage/mirage/issues/994>

[irmin] <https://github.com/mirage/irmin/issues/658>

[Canopy]
<https://github.com/Engil/Canopy/pull/95#issuecomment-507755522>

[unikernels] <https://github.com/roburio/unikernels/>

[_paste-bin_] <https://github.com/dinosaure/pasteur>

[httpaf] <https://github.com/inhabitedtype/httpaf/>


Orbifx then asked
─────────────────

 What about `mirage-kv' in opam?

I don't believe I need the overhead of the git store; can Irmin work
 without accumulating a history and any overhead of that?


Calascibetta Romain replied
───────────────────────────

 So `mirage-kv', as some others packages in Mirage, is just an
 interface. Then, you have some possibilities:
• make your own `mirage-kv' implementation (which can be a simple
   `hashtbl')
 • use something like `irmin' which respects this interface

Then, it's mostly about what you want exactly. MirageOS does not have a proper file-system at the beginning and we use in some ways `git' to obtain persistence (where, when your unikernel will shutdown, you will
 lost contents). So, the idea is to have a KV-store inside the
 unikernel and a way to synchronize this KV-store with a remote
repository - and, of course, we took the advantage of git, behind this
 idea (however, as I said, you can use/implement something else).

Then, with [functoria] you can easily orchestrate the compilation of
 your _unikernel_ to choose which will implement the `mirage-kv'
 signature.


[functoria] <https://github.com/mirage/functoria>


Orbifx then asked
─────────────────

Sorry I meant to ask what about `mirage-kv-unix'. Is that with a git backend? Doesn't it have any history related overhead or is it a plain
 mutable RW backend?


Hannes Mehnert replied
──────────────────────

there's [mirage-kv-mem] which is not persistent, using a Map.t for
 storing data.

 there's as well [mirage-kv-unix] which is only available on unix
(i.e. not if you're running a freestanding unikernel), and uses the
 file system as persistent backing store.

both of them don't contain a history and are fine to use in certain
 programs! :)

 (so, yes, mirage-kv-unix is persistent and without git)


[mirage-kv-mem] <https://github.com/mirage/mirage-kv-mem>

[mirage-kv-unix] <https://github.com/mirage/mirage-kv-unix>


A library for Commitment Schemes
════════════════════════════════

 Archive:
 <https://discuss.ocaml.org/t/a-library-for-commitment-schemes/4208/1>


Marco Aurélio da Silva announced
────────────────────────────────

 Hi folks! Proudly I announce the stable version of a library for
Commitment Schemes using an underlying/implemented AEAD (Authenticated Encryption with Associated Data) module. This library also uses a KDF
 (Key Derivation Function) package to make the implemented AEAD a
 Committing Encryption. Future plans might include user-level
configuration of the KDF (for instance, the number of cycles) and also to split and expose the Committing Authenticated Encryption module
 into an external library.

 All code of the Committing AEAD module was inspired on the paper
_Message Franking via Committing Authenticated Encryption_. This 1.0.0
 library can be installed with:

 ┌────
 │ opam install nocoiner
 └────

A command-line interface is also provided on the package. The Docker
 image with only this CLI interface can be installed with:

 ┌────
 │ docker pull marcoonroad/nocoiner
 └────

The executable is available at `/usr/bin/nocoiner' inside the image.

 For the project documentation, please refer to:
 <https://nocoiner.marcoonroad.dev>

 PRs and issues are welcome. The repository is hosted at:
 <https://github.com/marcoonroad/nocoiner>

 Thanks in advance and happy hacking. o/


Old CWN
═══════

If you happen to miss a CWN, you can [send me a message] and I'll mail it to you, or go take a look at [the archive] or the [RSS feed of the
 archives].

If you also wish to receive it every week by mail, you may subscribe
 [online].

 [Alan Schmitt]


[send me a message] <mailto:alan.schm...@polytechnique.org>

[the archive] <http://alan.petitepomme.net/cwn/>

[RSS feed of the archives] <http://alan.petitepomme.net/cwn/cwn.rss>

[online] <http://lists.idyll.org/listinfo/caml-news-weekly/>

[Alan Schmitt] <http://alan.petitepomme.net/>

Attachment: signature.asc
Description: PGP signature

_______________________________________________
caml-news-weekly mailing list
caml-news-weekly@lists.idyll.org
http://lists.idyll.org/listinfo/caml-news-weekly

Reply via email to