Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
From: Alan Schmitt <alan.schmitt@polytechnique.org>
To: "lwn" <lwn@lwn.net>, caml-list@inria.fr
Subject: [Caml-list] Attn: Development Editor, Latest OCaml Weekly News
Date: Tue, 28 Oct 2025 14:30:45 +0100	[thread overview]
Message-ID: <m2v7jzb1bu.fsf@petitepomme.net> (raw)

[-- Attachment #1: Type: text/plain, Size: 9542 bytes --]

Hello

Here is the latest OCaml Weekly News, for the week of October 21 to 28,
2025.

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

opam 2.5.0~alpha1
Release of Fmlib 0.6.0
MlFront 2.4.2.x
Other OCaml News
Old CWN


opam 2.5.0~alpha1
═════════════════

  Archive: <https://discuss.ocaml.org/t/ann-opam-2-5-0-alpha1/17411/1>


Kate announced
──────────────

  Hi everyone,

  We are happy to announce the first alpha release of opam 2.5.0.

  This version is an alpha, we invite users to test it to spot
  previously unnoticed bugs as we head towards the stable release.


What’s new? Some highlights:
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  • :high_speed_train: Speed up `opam update' up to 70%. Thanks to
    [@arozovyk], `opam update' now loads opam files incrementally, only
    parsing the files that have changed since the last time you called
    `opam update'. Before that, opam files in opam repositories were all
    loaded from the file system after an update if there was any
    change. The performance improvement of this change thus depends on
    how often you call `opam update' and what type of repository and OS
    you are using. ([#5824])

  • :spiral_shell: Improved shell integration. A number of users have
    been hitting issues with opam's shell integration where parts of a
    previous environment was kept in the current environment, causing a
    number of issues. These can be triggered by, for example, nuking
    your opam root directory (by default `~/.opam' or
    `%LocalAppData%\opam'). For this particular case we are still
    working on a fix, but many other users have reported similar issues
    without nuking their root directory and in that case we believe to
    have fixed the majority of issues. ([dbuenzli/topkg#142], [#4649],
    [#5761])

  • :spiral_shell:² We've also changed the default file to which `opam
    init' writes the opam shell integration to be `.bashrc' instead of
    the previous `.profile' or `.bash_profile' when `bash' is detected.
    Doing it this way prevents some issues with existing `.profile'
    files that source the `.bashrc' file and causing an infinite loop
    when opam asks users to ensure they source their `.bashrc' file in
    their `.profile' file. ([#5819], [#4201], [#3990])

  • :shield: The opam install script now installs an appropriate
    `apparmor' profile on systems configured with `apparmor' (this is
    enabled by default on Ubuntu). This change is not strictly speaking
    related to this release as it is deployed for every
    version. ([#5968])

  • :ocean: Many more UI additions and improvements, bug fixes, …


  :open_book: You can read our [blog post] for more information about
  these changes and more, and for even more details you can take a look
  at the [release note] or the [changelog].


[@arozovyk] <https://github.com/arozovyk>

[#5824] <https://github.com/ocaml/opam/issues/5824>

[dbuenzli/topkg#142] <https://github.com/dbuenzli/topkg/issues/142>

[#4649] <https://github.com/ocaml/opam/issues/4649>

[#5761] <https://github.com/ocaml/opam/issues/5761>

[#5819] <https://github.com/ocaml/opam/issues/5819>

[#4201] <https://github.com/ocaml/opam/issues/4201>

[#3990] <https://github.com/ocaml/opam/issues/3990>

[#5968] <https://github.com/ocaml/opam/issues/5968>

[blog post] <https://opam.ocaml.org/blog/opam-2-5-0-alpha1/>

[release note] <https://github.com/ocaml/opam/releases/tag/2.5.0-alpha1>

[changelog] <https://github.com/ocaml/opam/blob/2.5.0-alpha1/CHANGES>


Try it!
╌╌╌╌╌╌╌

  The upgrade instructions are unchanged:

  ┌────
  │ bash -c "sh <(curl -fsSL https://opam.ocaml.org/install.sh) --version 2.5.0~alpha1"
  └────
  or from PowerShell for Windows systems
  ┌────
  │ Invoke-Expression "& { $(Invoke-RestMethod https://opam.ocaml.org/install.ps1) } -Version 2.5.0~alpha1"
  └────

  Please report any issues to the [bug-tracker].

  Happy hacking, <> <> The opam team <> <> :camel:


[bug-tracker] <https://github.com/ocaml/opam/issues>


Release of Fmlib 0.6.0
══════════════════════

  Archive:
  <https://discuss.ocaml.org/t/ann-release-of-fmlib-0-6-0/17412/1>


Helmut announced
────────────────

  I have the pleasure to annouce the release of version 0.6.0 of
  `fmlib'. The main components of `fmlib' are

  1. Web Applications in the Elm style
  2. Pretty Printing
  3. Combinator Parsing

  Documentation see [https://hbr.github.io/fmlib/odoc/index.html].

  This release is mainly focussed on pretty printing and web
  applications. The new release has some breaking changes because some
  function names or function arguments have changed. The breaking
  changes can be easily fixed by looking into the documentation which
  contains all functions and the corresponding arguments.

  Web applications:

  • Single page applications are now fully supported. I.e. it is
    possible to manage several virtual pages in one application. The
    switching between the pages can be done by accessing the browser
    history. I.e. the user is capable of pressing back and forward
    buttons and the application remains the same. For an introduction to
    single page applications see [here]. An example of a single page
    application can be seen [here].
  • Web applications can contain reference elements. These can be used
    to optimize applications with really big doms (e.g. several hundreds
    or thousands of elements). Introduction to reference elements see
    [here]. A simple spreadsheet implemented as a web application can be
    found [here].
  • Files on the local machine can be selected and loaded into the
    application.
  • Session and local storage of the browser can be used.

  Pretty Printing: A new algorithm based on Phil Wadler’s design is used
  which makes the code more elegant, easy to read and fixes some bugs in
  the previous algorithm. The new algorithm is in a separate module
  `Pretty'. The old module `Print' is kept but will be removed in the
  next release.

  Combinator Parsing: As a convenience there are lexeme parsers which
  support languages with some standard syntax (like Haskell’s
  Parsec). Some bugfixes and minor additional functions. No breaking
  changes.


[https://hbr.github.io/fmlib/odoc/index.html]
<https://hbr.github.io/fmlib/odoc/index.html>

[here]
<https://hbr.github.io/fmlib/odoc/fmlib_browser/doc_single_page_application.html>

[here] <https://hbr.github.io/fmlib/webapp/single_page.html>

[here]
<https://hbr.github.io/fmlib/odoc/fmlib_browser/doc_reference_elements.html>

[here] <https://hbr.github.io/fmlib/webapp/spreadsheet.html>


MlFront 2.4.2.x
═══════════════

  Archive: <https://discuss.ocaml.org/t/ann-mlfront-2-4-2-x/17427/1>


jbeckford announced
───────────────────

  MlFront 2.4.2.30, a set of packages centered around language-agnostic
  build tooling, is available on opam. Changes include:

  • MlFront_Core: `FilePath.absolute' has flags to create Windows paths
    longer than 260-characters (`MAX_PATH').
  • MlFront_ZipFile: Now has a `deterministic' mode when creating zip
    files.
  • MlFront_Cache: Now embeds the sqlite3 C library so you don’t need
    pkg-config (etc.) to install it.
  • MlFront_Exec: Supports downloading attested (signed) binary packages
    from GitHub. Confer with my article on GitHub attestations:
    <https://github.com/diskuv/dk/blob/V2_4/docs/posts/2025-10-24-overview-ci-attestations.md>
  • MlFront_Thunk: Its ThunkLexers and ThunkParsers include a JSONC
    parser that can be used to edit config files. Relies on the
    fmlib_parser library. I use it to autofix JSONC build files with
    correct checksums and file sizes. (Ping/reply if you would use it so
    I can separate it)


Other OCaml News
════════════════

>From the ocaml.org blog
───────────────────────

  Here are links from many OCaml blogs aggregated at [the ocaml.org
  blog].

  • [Setting up Open Telemetry (OTel) with OCaml and Azure Monitor
    Integration]
  • [Hacking OCaml]


[the ocaml.org blog] <https://ocaml.org/blog/>

[Setting up Open Telemetry (OTel) with OCaml and Azure Monitor
Integration]
<https://fearful-odds.rocks/blog/setting-up-otel-with-ocaml-and-azure-monitor>

[Hacking OCaml] <https://www.youtube.com/watch/HVE9WWC0hbQ?version=3>


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
  to the [caml-list].

  [Alan Schmitt]


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

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

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

[caml-list] <https://sympa.inria.fr/sympa/info/caml-list>

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


[-- Attachment #2: Type: text/html, Size: 19664 bytes --]

             reply	other threads:[~2025-10-28 13:31 UTC|newest]

Thread overview: 264+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-28 13:30 Alan Schmitt [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-10-21  9:17 Alan Schmitt
2025-10-14  9:56 Alan Schmitt
2025-10-07 12:22 Alan Schmitt
2025-09-30 13:12 Alan Schmitt
2025-09-23 13:23 Alan Schmitt
2025-09-16 11:52 Alan Schmitt
2025-09-09 12:30 Alan Schmitt
2025-09-02 12:23 Alan Schmitt
2025-08-26 12:34 Alan Schmitt
2025-08-19 12:20 Alan Schmitt
2025-08-12 15:32 Alan Schmitt
2025-08-05  8:17 Alan Schmitt
2025-07-29  9:36 Alan Schmitt
2025-07-22 12:07 Alan Schmitt
2025-07-15 17:14 Alan Schmitt
2025-07-08 12:45 Alan Schmitt
2025-07-01 11:16 Alan Schmitt
2025-06-24 14:02 Alan Schmitt
2025-06-17  6:44 Alan Schmitt
2025-06-10 13:36 Alan Schmitt
2025-06-03  9:19 Alan Schmitt
2025-05-27  9:22 Alan Schmitt
2025-05-20 11:52 Alan Schmitt
2025-05-13  9:40 Alan Schmitt
2025-05-06  7:24 Alan Schmitt
2025-04-29  8:39 Alan Schmitt
2025-04-22 11:50 Alan Schmitt
2025-04-15  9:51 Alan Schmitt
2025-04-08 13:14 Alan Schmitt
2025-04-01  9:12 Alan Schmitt
2025-03-25  8:06 Alan Schmitt
2025-03-18 10:18 Alan Schmitt
2025-03-11 15:00 Alan Schmitt
2025-03-04 14:01 Alan Schmitt
2025-02-25 10:36 Alan Schmitt
2025-02-18 14:33 Alan Schmitt
2025-02-11  7:17 Alan Schmitt
2025-02-04 12:05 Alan Schmitt
2025-01-28 13:24 Alan Schmitt
2025-01-21 15:47 Alan Schmitt
2025-01-14  8:20 Alan Schmitt
2025-01-07 17:26 Alan Schmitt
2024-12-31  8:03 Alan Schmitt
2024-12-24  8:55 Alan Schmitt
2024-12-17 13:05 Alan Schmitt
2024-12-10 13:48 Alan Schmitt
2024-12-03 14:44 Alan Schmitt
2024-11-26  8:30 Alan Schmitt
2024-11-19  6:52 Alan Schmitt
2024-11-12 15:00 Alan Schmitt
2024-11-05 13:22 Alan Schmitt
2024-10-29 13:30 Alan Schmitt
2024-10-22 12:42 Alan Schmitt
2024-10-15 13:31 Alan Schmitt
2024-10-08 10:56 Alan Schmitt
2024-10-01 13:37 Alan Schmitt
2024-09-24 13:18 Alan Schmitt
2024-09-17 14:02 Alan Schmitt
2024-09-10 13:55 Alan Schmitt
2024-09-03  8:24 Alan Schmitt
2024-08-27  9:02 Alan Schmitt
2024-08-20  9:29 Alan Schmitt
2024-08-13 13:21 Alan Schmitt
2024-08-06  9:00 Alan Schmitt
2024-07-30 13:26 Alan Schmitt
2024-07-23 13:30 Alan Schmitt
2024-07-16  6:24 Alan Schmitt
2024-07-09  9:19 Alan Schmitt
2024-07-02  7:30 Alan Schmitt
2024-06-25 13:58 Alan Schmitt
2024-06-18 13:05 Alan Schmitt
2024-06-11 15:04 Alan Schmitt
2024-06-04 13:26 Alan Schmitt
2024-05-28  9:07 Alan Schmitt
2024-05-21 13:07 Alan Schmitt
2024-05-14 13:25 Alan Schmitt
2024-05-07  7:30 Alan Schmitt
2024-04-30  7:22 Alan Schmitt
2024-04-23 12:17 Alan Schmitt
2024-04-16 12:00 Alan Schmitt
2024-04-09  9:15 Alan Schmitt
2024-04-02 14:31 Alan Schmitt
2024-03-26  6:32 Alan Schmitt
2024-03-19 15:09 Alan Schmitt
2024-03-12 10:31 Alan Schmitt
2024-03-05 14:50 Alan Schmitt
2024-02-27 13:53 Alan Schmitt
2024-02-20  9:12 Alan Schmitt
2024-02-13  8:42 Alan Schmitt
2024-02-06 15:14 Alan Schmitt
2024-01-30 14:16 Alan Schmitt
2024-01-23  9:45 Alan Schmitt
2024-01-16 10:01 Alan Schmitt
2024-01-09 13:40 Alan Schmitt
2024-01-02  8:59 Alan Schmitt
2023-12-26 10:12 Alan Schmitt
2023-12-19 10:10 Alan Schmitt
2023-12-12 10:20 Alan Schmitt
2023-12-05 10:13 Alan Schmitt
2023-11-28  9:09 Alan Schmitt
2023-11-21  7:47 Alan Schmitt
2023-11-14 13:42 Alan Schmitt
2023-11-07 10:31 Alan Schmitt
2023-10-31 10:43 Alan Schmitt
2023-10-24  9:17 Alan Schmitt
2023-10-17  7:46 Alan Schmitt
2023-10-10  7:48 Alan Schmitt
2023-10-03 13:00 Alan Schmitt
2023-09-19  8:54 Alan Schmitt
2023-09-12 13:21 Alan Schmitt
2023-09-05  9:00 Alan Schmitt
2023-08-29 13:04 Alan Schmitt
2023-08-22  9:20 Alan Schmitt
2023-08-15 16:33 Alan Schmitt
2023-08-08  8:53 Alan Schmitt
2023-08-01  7:13 Alan Schmitt
2023-07-25  8:45 Alan Schmitt
2023-07-11  8:45 Alan Schmitt
2023-07-04  9:18 Alan Schmitt
2023-06-27  8:38 Alan Schmitt
2023-06-20  9:52 Alan Schmitt
2023-06-13  7:09 Alan Schmitt
2023-06-06 14:22 Alan Schmitt
2023-05-30 15:43 Alan Schmitt
2023-05-23  9:41 Alan Schmitt
2023-05-16 13:05 Alan Schmitt
2023-05-09 11:49 Alan Schmitt
2023-05-02  8:01 Alan Schmitt
2023-04-25  9:25 Alan Schmitt
2023-04-18  8:50 Alan Schmitt
2023-04-11 12:41 Alan Schmitt
2023-04-04  8:45 Alan Schmitt
2023-03-28  7:21 Alan Schmitt
2023-03-21 10:07 Alan Schmitt
2023-03-14  9:52 Alan Schmitt
2023-03-07  9:02 Alan Schmitt
2023-02-28 14:38 Alan Schmitt
2023-02-21 10:19 Alan Schmitt
2023-02-14  8:12 Alan Schmitt
2023-02-07  8:16 Alan Schmitt
2023-01-31  6:44 Alan Schmitt
2023-01-24  8:57 Alan Schmitt
2023-01-17  8:37 Alan Schmitt
2022-11-29 14:53 Alan Schmitt
2022-09-27  7:17 Alan Schmitt
2022-09-20 14:01 Alan Schmitt
2022-09-13  8:40 Alan Schmitt
2022-08-23  8:06 Alan Schmitt
2022-08-16  8:51 Alan Schmitt
2022-08-09  8:02 Alan Schmitt
2022-08-02  9:51 Alan Schmitt
2022-07-26 17:54 Alan Schmitt
2022-07-19  8:58 Alan Schmitt
2022-07-12  7:59 Alan Schmitt
2022-07-05  7:42 Alan Schmitt
2022-06-28  7:37 Alan Schmitt
2022-06-21  8:06 Alan Schmitt
2022-06-14  9:29 Alan Schmitt
2022-06-07 10:15 Alan Schmitt
2022-05-31 12:29 Alan Schmitt
2022-05-24  8:04 Alan Schmitt
2022-05-17  7:12 Alan Schmitt
2022-05-10 12:30 Alan Schmitt
2022-05-03  9:11 Alan Schmitt
2022-04-26  6:44 Alan Schmitt
2022-04-19  5:34 Alan Schmitt
2022-04-12  8:10 Alan Schmitt
2022-04-05 11:50 Alan Schmitt
2022-03-29  7:42 Alan Schmitt
2022-03-22 13:01 Alan Schmitt
2022-03-15  9:59 Alan Schmitt
2022-03-01 13:54 Alan Schmitt
2022-02-22 12:43 Alan Schmitt
2022-02-08 13:16 Alan Schmitt
2022-02-01 13:00 Alan Schmitt
2022-01-25 12:44 Alan Schmitt
2022-01-11  8:20 Alan Schmitt
2022-01-04  7:56 Alan Schmitt
2021-12-28  8:59 Alan Schmitt
2021-12-21  9:11 Alan Schmitt
2021-12-14 11:02 Alan Schmitt
2021-11-30 10:51 Alan Schmitt
2021-11-16  8:41 Alan Schmitt
2021-11-09 10:08 Alan Schmitt
2021-11-02  8:50 Alan Schmitt
2021-10-19  8:23 Alan Schmitt
2021-09-28  6:37 Alan Schmitt
2021-09-21  9:09 Alan Schmitt
2021-09-07 13:23 Alan Schmitt
2021-08-24 13:44 Alan Schmitt
2021-08-17  6:24 Alan Schmitt
2021-08-10 16:47 Alan Schmitt
2021-07-27  8:54 Alan Schmitt
2021-07-20 12:58 Alan Schmitt
2021-07-06 12:33 Alan Schmitt
2021-06-29 12:24 Alan Schmitt
2021-06-22  9:04 Alan Schmitt
2021-06-01  9:23 Alan Schmitt
2021-05-25  7:30 Alan Schmitt
2021-05-11 14:47 Alan Schmitt
2021-05-04  8:57 Alan Schmitt
2021-04-27 14:26 Alan Schmitt
2021-04-20  9:07 Alan Schmitt
2021-04-06  9:42 Alan Schmitt
2021-03-30 14:55 Alan Schmitt
2021-03-23  9:05 Alan Schmitt
2021-03-16 10:31 Alan Schmitt
2021-03-09 10:58 Alan Schmitt
2021-02-23  9:51 Alan Schmitt
2021-02-16 13:53 Alan Schmitt
2021-02-02 13:56 Alan Schmitt
2021-01-26 13:25 Alan Schmitt
2021-01-19 14:28 Alan Schmitt
2021-01-12  9:47 Alan Schmitt
2021-01-05 11:22 Alan Schmitt
2020-12-29  9:59 Alan Schmitt
2020-12-22  8:48 Alan Schmitt
2020-12-15  9:51 Alan Schmitt
2020-12-01  8:54 Alan Schmitt
2020-11-03 15:15 Alan Schmitt
2020-10-27  8:43 Alan Schmitt
2020-10-20  8:15 Alan Schmitt
2020-10-06  7:22 Alan Schmitt
2020-09-29  7:02 Alan Schmitt
2020-09-22  7:27 Alan Schmitt
2020-09-08 13:11 Alan Schmitt
2020-09-01  7:55 Alan Schmitt
2020-08-18  7:25 Alan Schmitt
2020-07-28 16:57 Alan Schmitt
2020-07-21 14:42 Alan Schmitt
2020-07-14  9:54 Alan Schmitt
2020-07-07 10:04 Alan Schmitt
2020-06-30  7:00 Alan Schmitt
2020-06-16  8:36 Alan Schmitt
2020-06-09  8:28 Alan Schmitt
2020-05-19  9:52 Alan Schmitt
2020-05-12  7:45 Alan Schmitt
2020-05-05  7:45 Alan Schmitt
2020-04-28 12:44 Alan Schmitt
2020-04-21  8:58 Alan Schmitt
2020-04-14  7:28 Alan Schmitt
2020-04-07  7:51 Alan Schmitt
2020-03-31  9:54 Alan Schmitt
2020-03-24  9:31 Alan Schmitt
2020-03-17 11:04 Alan Schmitt
2020-03-10 14:28 Alan Schmitt
2020-03-03  8:00 Alan Schmitt
2020-02-25  8:51 Alan Schmitt
2020-02-18  8:18 Alan Schmitt
2020-02-04  8:47 Alan Schmitt
2020-01-28 10:53 Alan Schmitt
2020-01-21 14:08 Alan Schmitt
2020-01-14 14:16 Alan Schmitt
2020-01-07 13:43 Alan Schmitt
2019-12-31  9:18 Alan Schmitt
2019-12-17  8:52 Alan Schmitt
2019-12-10  8:21 Alan Schmitt
2019-12-03 15:42 Alan Schmitt
2019-11-26  8:33 Alan Schmitt
2019-11-12 13:21 Alan Schmitt
2019-11-05  6:55 Alan Schmitt
2019-10-15  7:28 Alan Schmitt
2019-09-03  7:35 Alan Schmitt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m2v7jzb1bu.fsf@petitepomme.net \
    --to=alan.schmitt@polytechnique.org \
    --cc=caml-list@inria.fr \
    --cc=lwn@lwn.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox