Hello Here is the latest OCaml Weekly News, for the week of February 18 to 25, 2020. Table of Contents ───────────────── Dune 2.3.0 What's the OCaml equivalent for HLint? Training Sessions for "Expert OCaml" in Paris OCaml 4.10 released Old CWN Dune 2.3.0 ══════════ Archive: Rudi Grinberg announced ─────────────────────── On behalf of the dune team, I'm proud to announce the 2.3.0 release of dune. This release is particularly relevant for users of coq that use dune to build their theories, developers of coq that use dune to build their favorite theorem prover. I'd like to thank @ejgallego for all the hard work to improve dune in this regard. I'd also like to point out the `(strict_package_deps)' option that is now available in project files. This option will now ask dune to validate the package dependencies specified in the `package' stanzas in your dune-project files. Here's the full change list, and as always, happy hacking! 2.3.0 (15/02/2020) ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ • Improve validation and error handling of arguments to `dune init' (#3103, fixes #3046, @shonfeder) • `dune init exec NAME' now uses the `NAME' argument for private modules (#3103, fixes #3088, @shonfeder) • Avoid linear walk to detect children, this should greatly improve performance when a target has a large number of dependencies (#2959, @ejgallego, @aalekseyev, @Armael) • [coq] Add `(boot)' option to `(coq.theories)' to enable bootstrap of Coq's stdlib (#3096, @ejgallego) • [coq] Deprecate `public_name' field in favour of `package' (#2087, @ejgallego) • Better error reporting for "data only" and "vendored" dirs. Using these with anything else than a strict subdirectory or `*' will raise an error. The previous behavior was to just do nothing (#3056, fixes #3019, @voodoos) • Fix bootstrap on bytecode only switches on windows or where `-j1' is set. (#3112, @xclerc, @rgrinberg) • Allow `enabled_if' fields in `executable(s)' stanzas (#3137, fixes #1690 @voodoos) • Do not fail if `ocamldep', `ocamlmklib', or `ocaml' are absent. Wait for them to be used to fail (#3138, @rgrinberg) • Introduce a `strict_package_deps' mode that verifies that dependencies between packages in the workspace are specified correctly. (@rgrinberg, #3117) • Make sure the `@all' alias is defined when no `dune' file is present in a directory (#2946, fix #2927, @diml) What's the OCaml equivalent for HLint? ══════════════════════════════════════ Archive: Continuing this thread, Stéphane Lavergne said ────────────────────────────────────────────── Aside from Mascot and `ppx_js_style', it seems that [ocp-lint] is actively maintained by the folks at OcamlPro. I personally only use `ocamlformat' so I can't vouch for it, but it seems promising. [ocp-lint] Training Sessions for "Expert OCaml" in Paris ═════════════════════════════════════════════ Archive: Laurène Gibaud announced ──────────────────────── OCamlPro organizes a cross-company training in French for developers who already use OCaml. The "Expert OCaml" training mixes theory and practice and will allow you to master OCaml's advanced features such as its type-system, OCaml's open source tools and libraries, and how to write compact and efficient code. When? The next session is scheduled for March 3-4, 2020, the second will be on April 7-8, 2020. Where? Paris 14, at our office If interested, contact us at contact@ocamlpro.com or register on: . We can also organize custom and on-site sessions upon request. More info on: OCaml 4.10 released ═══════════════════ Archive: octachron announced ─────────────────── We have the pleasure of celebrating the birthday of Francis Ronalds by announcing the release of OCaml version 4.10.0. Some of the highlights in this release are: • A new best-fit allocator for the major heap which reduces both GC cost an memory usage. • Some preliminary runtime work for OCaml multicore • Immutable strings are now enforced at configuration time • User-defined indexing operators for multidimensional arrays • Coming soon: statmemprof, a new statistical memory profiler. The external API will be release next version. • Various improvements to the manual • More precise exhaustiveness check for GADTs • Many bug fixes Merlin, the OCaml editor service, is not yet available for this release. We will publish a follow-up announcement when Merlin is ready. This release is (or soon will be) available as a set of OPAM switches, and as a source download here: Editor note: please follow the archive link for the full changelog 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] [the archive] [RSS feed of the archives] [online] [Alan Schmitt]