From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Authentication-Results: plum.tunbury.org; dkim=pass (1024-bit key; unprotected) header.d=inria.fr header.i=@inria.fr header.a=rsa-sha256 header.s=dc header.b=Ibgqz29M; dkim-atps=neutral Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=192.134.164.83; helo=mail2-relais-roc.national.inria.fr; envelope-from=caml-list-owner@inria.fr; receiver=tunbury.org Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by plum.tunbury.org (Postfix) with ESMTP id E0EC3400C8 for ; Tue, 3 Nov 2026 11:03:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=inria.fr; s=dc; h=from:to:date:message-id:mime-version:subject:reply-to: sender:list-id:list-help:list-subscribe:list-unsubscribe: list-post:list-owner:list-archive; bh=grjHIQnwJ7R2+v5aN8S9pgEBrs3aXXhHhUpmBDZ4BoU=; b=Ibgqz29Mvs01JTWcuJJ2Z9K2Dt0EaMGoREDSMKQGDpQn+da24OYjG5U9 w03AeHu2g82mMpTPTIrSUepmJnx7YXQoB23RyWAzuNwpoukMOENOCwTTa MB/kdzH53W6ygwA6Fba6tX2fnjO9qvfQmEnBQLcvKOmxO10W4wjg9gjCC 8=; X-CSE-ConnectionGUID: kbP61cljRaGQu7d74iI3ng== X-CSE-MsgGUID: WJHplqVPQOqNo3b/k4QdWw== Authentication-Results: mail2-relais-roc.national.inria.fr; dkim=none (message not signed) header.i=none; spf=Pass smtp.mailfrom=caml-list-owner@inria.fr; spf=None smtp.helo=postmaster@prod-sympa-app.inria.fr Received-SPF: Pass (mail2-relais-roc.national.inria.fr: domain of caml-list-owner@inria.fr designates 128.93.162.27 as permitted sender) identity=mailfrom; client-ip=128.93.162.27; receiver=mail2-relais-roc.national.inria.fr; envelope-from="caml-list-owner@inria.fr"; x-sender="caml-list-owner@inria.fr"; x-conformance=spf_only; x-record-type="v=spf1"; x-record-text="v=spf1 ip4:128.93.142.0/24 ip4:192.134.164.0/24 ip4:128.93.162.160 ip4:128.93.162.3 ip4:128.93.162.88 ip4:128.93.162.27 mx ~all" Received-SPF: None (mail2-relais-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@prod-sympa-app.inria.fr) identity=helo; client-ip=128.93.162.27; receiver=mail2-relais-roc.national.inria.fr; envelope-from="caml-list-owner@inria.fr"; x-sender="postmaster@prod-sympa-app.inria.fr"; x-conformance=spf_only X-IronPort-AV: E=Sophos;i="6.27,193,1787004000"; d="asc'?scan'208,217";a="303544084" Received: from prod-sympa-app.inria.fr ([128.93.162.27]) by mail2-relais-roc.national.inria.fr with ESMTP; 03 Nov 2026 12:03:50 +0100 Received: by prod-sympa-app.inria.fr (Postfix, from userid 990) id 1CE9C81F60; Tue, 3 Nov 2026 12:03:49 +0100 (CET) Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by prod-sympa-app.inria.fr (Postfix) with ESMTP id 09DB681A54 for ; Tue, 3 Nov 2026 12:03:39 +0100 (CET) X-CSE-ConnectionGUID: 21AeKe/ITbSK1492bhFzrg== X-CSE-MsgGUID: WIAJ9WdJTHGES8obHHu4nw== IronPort-SDR: 6ae9bf8a_ATpT0v3DEn3BHe/Q+6IqwKyeaGmYjZphD97eXK3YBuSEzFi 3581qNKC1bR5CVJrZAcpt1BU3DM8W2u9bQOZDJw== X-ThreatScanner-Verdict: Negative X-IPAS-Result: =?us-ascii?q?A0GaAQDrvulqjyIeaIFaglmBPYEEGwFpBmEzBwhJhBw8g?= =?us-ascii?q?0+FK4h6nE2BVRSBEAMuIQIOBwEDAQgFLgEbBAECBAEBAQIBAgGEfgIWjgcCH?= =?us-ascii?q?wYBBDIHDgECBAMCAwEBAQEBAQEBAQEBCwEBAQQBAQECAQECBAMBAQEBAhABA?= =?us-ascii?q?QEBAQE5BUmGTw2LfVFxgSUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBA?= =?us-ascii?q?QEBAQEBAQEBAQEBAQECBAgBGRBnFwoTAQE4GCMDEAQBBgMCBA0BNQMBEwESG?= =?us-ascii?q?oIkRAGCIgJQAwQBDAafVZskeoEygQGCDAEBBoEJPgMLAgUPL9obgR9DCQmBN?= =?us-ascii?q?RiBWIQaglEPDQErSWoCAQKEMSAJgz57Jw+BVUSDPlFvgmECAQEYgQwRBwEBT?= =?us-ascii?q?QmDJoJqgiaBDIJYAQQJhTSOeIFmA1ksAVUTFwsHBWCBCAMqLy1uMh2BIz4XL?= =?us-ascii?q?1gbBgWBHYEegRKBB12BKyheIYEIgXYCglGCAAIBSUEOB0VTCSVDEkckIggSC?= =?us-ascii?q?QETGiwKgRo1PAkmPxUMZgsaBWEIAg0MdDkQMB4kLwUcJkAQbT03FRkEkFAQI?= =?us-ascii?q?Q2BUEkZgkEOgTMHDgUBBwwIDgIgAisCAQgbHgcDGR0XBAFFCwIpDwOSVxADF?= =?us-ascii?q?YEinH+UZTQHhCKBYAcMiQqBJpYHhASBV5JBklQimGYjiV6BL4Fva5VhCAuFR?= =?us-ascii?q?oFvCimBKx4MBzMaMEOCMwEBATEJRxwPV41XFoFogXiBPoEmgXQ7yShDNQIBA?= =?us-ascii?q?TsHAgcBDASFTh0BAQRlix00gUwBAQ?= IronPort-PHdr: A9a23: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 IronPort-Data: A9a23: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 IronPort-HdrOrdr: A9a23:sL3vR6jHUDTpxfN2jIRC67zhxHBQX+l13DAbv31ZSRFFG/Fw9/ rCoB17726RtN91Yh0dcL+7VpVoPkmsgaKdjbNwAV6JZniShILQFvAR0WK6+UySJ8SczJ856U 4DScdD4YbLfChHZK/BiWHSeerIpuP3k5xA7t2+854Cd3AJV4hQqylfJ0KwGlFtSGB9dOwEPa vZyO1r4wCrf28aB/7LcUUtbqzsgPCOro/vfBJuPW9v1OE45QnYmYIS5CLooCs2Ynd0ybYwtU LMlxXw5qul9826x3bnphDuxqUTotPh2Z9oGNaQjMwYMXHDigvAXvUcZ5Sy+Ao8ofLqwkoxjd /JrwxlA8R/gkmhA12dkF/W0wjylBsj7n/8xUSJxUHirKXCNUgHIvsEv4pZYV/0wHBIhqAG7I t7m1iQtokSKRvBmSjnjuK4Ly1Cpw6PqXsw1dQOhGZUSosUZKQUkYwTlXklaasoLWbB4IE1VN R0BMvf5PFZNX6bYhnizw9SKIzFZAVVIiu7 X-Talos-CUID: 9a23:glIbwW0JHGhiNIhQbwSzyrxfQJkMf17Qi1bsKXSbUDo4EreVZ02K9/Yx X-Talos-MUID: 9a23:1GP+mQaYGeS+fOBTiB7FpmBdOOVUw4uDMxAKm7UmppWCKnkl X-IronPort-Anti-Spam-Filtered: true X-IronPort-AV: E=Sophos;i="6.27,193,1787004000"; d="asc'?scan'208,217";a="303543953" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown X-MGA-submission: =?us-ascii?q?MDHLt40igMavp1VgCLlxkwn0waI3SO02iGVb5H?= =?us-ascii?q?XhQri4kFiWkB+LBGoaZfnJbUELQI040PNEyukBycVze3r+tHtCgqxQPx?= =?us-ascii?q?aAi/8cr04N6ECKgRffflI9lCkVZnt1CsHz06vxTjWOOpkJDvgHMUVgyO?= =?us-ascii?q?R2/0q5HAoDkfugjeDMk6BesQ=3D=3D?= Received: from mx1.polytechnique.org ([129.104.30.34]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Nov 2026 12:03:38 +0100 Received: from tm2.home (82-66-240-41.subs.proxad.net [82.66.240.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ssl.polytechnique.org (Postfix) with ESMTPSA id 9BB401A479; Tue, 3 Nov 2026 12:03:37 +0100 (CET) From: Alan Schmitt To: "lwn" , caml-list@inria.fr Date: Tue, 03 Nov 2026 12:03:35 +0100 Message-ID: MIME-Version: 1.0 Content-Type: multipart/signed; boundary="===-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" X-AV-Checked: ClamAV using ClamSMTP at svoboda.polytechnique.org (Tue Nov 3 12:03:37 2026 +0100 (CET)) X-Spam-Flag: Unsure, tests=bogofilter, spamicity=0.498943, queueID=C0AF71A48B X-Org-Mail: alan.schmitt.1995@polytechnique.org Subject: [Caml-list] Attn: Development Editor, Latest OCaml Weekly News Reply-To: Alan Schmitt X-Loop: caml-list@inria.fr X-Sequence: 19601 Errors-To: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Help: , List-Subscribe: , List-Unsubscribe: , List-Post: List-Owner: List-Archive: Archived-At: --===-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: multipart/alternative; boundary="==-=-=" --==-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 SGVsbG8NCg0KSGVyZSBpcyB0aGUgbGF0ZXN0IE9DYW1sIFdlZWtseSBOZXdzLCBmb3IgdGhlIHdl ZWsgb2YgT2N0b2JlciAyNyB0bw0KTm92ZW1iZXIgMDMsIDIwMjYuDQoNClRhYmxlIG9mIENvbnRl bnRzDQrilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAN Cg0KazcgMC45LjA6IHJlY29yZCBhbmQgcmVwbGF5IENMSSBvdXRwdXRzDQpkdW5lIHRyYWNpbmcN CmNvbnNvbGU6IG1ha2luZyBPQ2FtbCBDTEkgdG9vbHMgbG9vayBnb29kIQ0KaW1ndWltbCAxLjkz LjANCkludHJvY2FtbCA1LjUuMg0Kb2NhbWwtc3NsIDAuOC4xDQpPbGQgQ1dODQoNCg0KazcgMC45 LjA6IHJlY29yZCBhbmQgcmVwbGF5IENMSSBvdXRwdXRzDQrilZDilZDilZDilZDilZDilZDilZDi lZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDi lZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZANCg0KICBBcmNoaXZlOg0KICA8 aHR0cHM6Ly9kaXNjdXNzLm9jYW1sLm9yZy90L2Fubi1rNy0wLTktMC1yZWNvcmQtYW5kLXJlcGxh eS1jbGktb3V0cHV0cy8xODY2MC8xPg0KDQoNClRob21hcyBHYXphZ25haXJlIGFubm91bmNlZA0K 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSADQoNCiAgSSdtIGhhcHB5IHRvIGFubm91bmNlIHRoZSBy ZWxlYXNlIG9mIFtrNyAwLjkuMF0gYSBzbWFsbCB0b29sIHRvIHJlY29yZA0KICBhbmQgcmVwbGF5 IENMSSBhbmltYXRpb25zLg0KDQogIEl0J3MgYXZhaWxhYmxlIG9uIE1hY09TIGFuZCBMaW51eCB3 aXRoIGBicmV3JzoNCg0KICDilIzilIDilIDilIDilIANCiAg4pSCIGJyZXcgaW5zdGFsbCBzYW1v aHQvdGFwL2s3DQogIOKUlOKUgOKUgOKUgOKUgA0KDQogIG9yIGluIG9wYW06DQoNCiAg4pSM4pSA 4pSA4pSA4pSADQogIOKUgiBvcGFtIGluc3RhbGwgazcNCiAg4pSU4pSA4pSA4pSA4pSADQoNCiAg VGhlIG1haW4gZmVhdHVyZSB2cy4gb3RoZXIgc2ltaWxhciB0b29scyBpcyB0aGF0IGl0IGNhbiB1 c2UgY3JhbSB0ZXN0cw0KICBhcyBpbnB1dCBvciBvdXRwdXQsIHNvIHlvdSBjYW4gMS8gY29udmVy dCBhbnkgY3JhbSB0ZXN0IGludG8gYW4gc3ZnDQogIGZpbGU7IGFuZCAyLyBlbnN1cmUgdGhlIHN2 ZyB0aGF0IHlvdSB1c2UgaW4geW91ciBSRUFETUUgZmlsZXMgc3RheXMNCiAgdXAtdG8tZGF0ZSB3 aXRoIHlvdXIgY29kZS4NCg0KICBBcGFydCBmcm9tIHRoaXMgaXQncyBpbiBwdXJlIE9DYW1sIHdp dGggbm8gYnJvd3NlciBvciBmZm1wZWcgaW52b2x2ZWQ7DQogIGl0IHBsYXlzIGAuY2FzdCcgYW5k IGAudGFwZScgZmlsZXMgKGZyb20gYGFzY2lpbmVtYScgYW5kIGB2aHMnKSBhbmQNCiAgd3JpdGUg YC5jYXN0JyBmaWxlcywgYnV0IHByb2JhYmx5IGhhcyBmZXdlciBvcHRpb25zIHRoYW4gdGhvc2Ug dG9vbHMsDQogIHNvIGZlZWwgZnJlZSB0byBvcGVuIFthbiBpc3N1ZV0gaWYgeW91IGZpbmQgYW55 dGhpbmcgbWlzc2luZyBvciBub3QNCiAgd29ya2luZy4NCg0KICBTZWUgbW9yZSBkZXRhaWxzIGlu IG15IHBvc3Q6DQogIDxodHRwczovL2dhemFnbmFpcmUub3JnL2Jsb2cvMjAyNi0xMC0yNi1rNy5o dG1sPg0KDQoNCltrNyAwLjkuMF0gPGh0dHBzOi8vZ2l0aHViLmNvbS9zYW1vaHQvb2NhbWwtazc+ DQoNClthbiBpc3N1ZV0gPGh0dHBzOi8vZ2l0aHViLmNvbS9zYW1vaHQvb2NhbWwtazcvaXNzdWVz Pg0KDQoNCmR1bmUgdHJhY2luZw0K4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ DQoNCiAgQXJjaGl2ZTogPGh0dHBzOi8vZGlzY3Vzcy5vY2FtbC5vcmcvdC9ibG9nLWR1bmUtdHJh Y2luZy8xODY3MC8xPg0KDQoNClJhcGhhw6tsIFByb3VzdCBhbm5vdW5jZWQNCuKUgOKUgOKUgOKU gOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU gOKUgA0KDQogIE92ZXIgdGhlIHN1bW1lciwgQE5hdEthcm1pb3Mgd29ya2VkIG9uIGBkdW5lJyBm b3IgaGlzIGludGVybnNoaXAgYXQNCiAgW0FocmVmc10oYWhyZWZzLmNvbSkuICBIZSBnb3QgW2Eg Y291cGxlIG9mIFBScyBtZXJnZWQgaW50byBkdW5lXS4gVGhlbg0KICBoZSB3cm90ZSBhIG5ldyBi YWNrZW5kIGZvciB0cmFjZXMgYW5kIGEgbWF0Y2hpbmcgcGVyZmV0dG8gZXh0ZW5zaW9uLg0KDQog IEFsbCBvZiB0aGUgZGV0YWlscyBpbiBoaXMgYmxvZyBwb3N0OiBbVHJhY2luZyBEdW5lLCB3aXRo IGEgc2lkZSBvZg0KICBncmFwaHNdDQoNCiAgVEw7RFI6IHlvdSBnZXQgYSBncmFwaCB2aWV3IG9m IHRoZSBidWlsZCwgc29tZSBTUUwgcXVlcnlpbmcNCiAgY2FwYWJpbGl0aWVzLCBpdCBzY2FsZXMg dG8gaGFuZGxlIEFocmVmcycgbW9ub3JlcG8NCg0KICBXZSdyZSB1c2luZyB0aGUgbmV3IHRyYWNp bmcgY2FwYWJpbGl0eSBpbnRlcm5hbGx5LiBBbmQgd2UncmUgcGxhbm5pbmcNCiAgb24gdXBzdHJl YW1pbmcgaXQgdG9vLg0KDQoNClthIGNvdXBsZSBvZiBQUnMgbWVyZ2VkIGludG8gZHVuZV0NCjxo dHRwczovL2dpdGh1Yi5jb20vb2NhbWwvZHVuZS9wdWxscz9xPWlzJTNBcHIrYXV0aG9yJTNBTmF0 S2FybWlvcz4NCg0KW1RyYWNpbmcgRHVuZSwgd2l0aCBhIHNpZGUgb2YgZ3JhcGhzXQ0KPGh0dHBz Oi8vdGVjaC5haHJlZnMuY29tL3RyYWNpbmctZHVuZS13aXRoLWEtc2lkZS1vZi1ncmFwaHMtNTY2 MDNkNzc5NGJjPg0KDQoNCmNvbnNvbGU6IG1ha2luZyBPQ2FtbCBDTEkgdG9vbHMgbG9vayBnb29k IQ0K4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ 4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ 4pWQ4pWQ4pWQ4pWQ4pWQDQoNCiAgQXJjaGl2ZToNCiAgPGh0dHBzOi8vZGlzY3Vzcy5vY2FtbC5v cmcvdC9hbm4tY29uc29sZS1tYWtpbmctb2NhbWwtY2xpLXRvb2xzLWxvb2stZ29vZC8xODY3MS8x Pg0KDQoNClRob21hcyBHYXphZ25haXJlIGFubm91bmNlZA0K4pSA4pSA4pSA4pSA4pSA4pSA4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA 4pSADQoNCiAgSSdtIGhhcHB5IHRvIGFubm91bmNlIHRoZSByZWxlYXNlIG9mIFtjb25zb2xlIDAu OS4wXSwgYSBzZXQgb2Ygd2lkZ2V0cw0KICBmb3IgYnVpbGRpbmcgbmljZS1sb29raW5nIGNvbW1h bmQtbGluZSB0b29scy4gVGhlIG1haW4gZGVzaWduDQogIGNvbnN0cmFpbnQgSSB0cmllZCB0byBm b2xsb3cgaXMgdGhhdCB0aGUgb3V0cHV0IHNob3VsZCBsb29rIGdvb2QgYm90aA0KICBmb3IgYSBo dW1hbiBhdCBhbiBpbnRlcmFjdGl2ZSB0ZXJtaW5hbCBhbmQgZm9yIHNjcmlwdHMgcnVuIGluIENJ IG9yDQogIG90aGVyIG5vbi1pbnRlcmFjdGl2ZSBsb29wcyAobGlrZSBMTE0gYWdlbnRzKS4gTGl2 ZSByb3dzIGFyZSByZWRyYXduDQogIGluIHBsYWNlIGFuZCBldmVyeXRoaW5nIHVzZWZ1bCB0aGUg cHJvZ3JhbSBwcmludGVkIGlzIHN0aWxsIHRoZXJlIHdoZW4NCiAgaXQgZW5kczsgcGlwZWQgb3V0 cHV0IHRyaWVzIHRvIGJlIHJlbGF0aXZlbHkgY2xlYW4uDQoNCiAgPGh0dHBzOi8vdXMxLmRpc2Nv dXJzZS1jZG4uY29tL2ZsZXgwMjAvdXBsb2Fkcy9vY2FtbC9vcmlnaW5hbC8yWC8yLzIxYjIwMmE2 OWFiNmZmMjE5ZmE1ZmVlMjQxNmQ0MzhiYmFlNzhkMTQuZ2lmPg0KDQogIFlvdSBjYW4gdXNlIGl0 IHdpdGg6DQoNCiAg4pSM4pSA4pSA4pSA4pSADQogIOKUgiBvcGFtIGluc3RhbGwgY29uc29sZSBj b25zb2xlLWVpbw0KICDilJTilIDilIDilIDilIANCg0KICBUaGUgd2lkZ2V0cyBpbiBgY29uc29s ZScgYXJlIHB1cmU7IGBjb25zb2xlLWVpbycgaXMgdGhlIGRyaXZlciB0aGF0DQogIHJ1bnMgYW5p bWF0aW9ucy4gVGhlcmUgYXJlIGEgZmV3IGxpbWl0YXRpb24gKGluY2x1ZGluZyBsaW1pdGVkIFdp bmRvd3MNCiAgc3VwcG9ydCkgYnV0IHlvdSBjYW4gYWxyZWFkeSB1c2UgaXQgdG8gZW5jb2RlIHF1 aXRlIGNvbXBsZXggVVguIEZvcg0KICBpbnN0YW5jZSwgaGVyZSBhIGZldyBpbWl0YXRpb25zIG9m IHBhY2thZ2UgbWFuYWdlciBmcm9udGVuZHMgdXNpbmcNCiAgY29uc29sZSAocmVjb3JkZWQgdXNp bmcgW2s3XSk6DQoNCiAgPGh0dHBzOi8vdXMxLmRpc2NvdXJzZS1jZG4uY29tL2ZsZXgwMjAvdXBs b2Fkcy9vY2FtbC9vcmlnaW5hbC8yWC9iL2IxOGMyNjdlZWEwMzFjZmI3NzBmOTJmYWIxNWY5MzU1 ODgyYzk2ZDQuZ2lmPg0KDQogIDxodHRwczovL3VzMS5kaXNjb3Vyc2UtY2RuLmNvbS9mbGV4MDIw L3VwbG9hZHMvb2NhbWwvb3JpZ2luYWwvMlgvZS9lZDcxMmRkNzJlYmE1NDIxZGM4MjViODg0ZTBk YmI3MzliMmJlZmRjLmdpZj4NCg0KICA8aHR0cHM6Ly91czEuZGlzY291cnNlLWNkbi5jb20vZmxl eDAyMC91cGxvYWRzL29jYW1sL29yaWdpbmFsLzJYL2QvZDdhOGM1NmQ0MmM4NDMwZjI4MmU3YWZh OTQyNmJiMzE1YjUyOTY1Zi5naWY+DQoNCiAgPGh0dHBzOi8vdXMxLmRpc2NvdXJzZS1jZG4uY29t L2ZsZXgwMjAvdXBsb2Fkcy9vY2FtbC9vcmlnaW5hbC8yWC83LzdlY2MzZDkxOGY5OTY4ZjYxYTE1 ZWY2NmU1NjM0ODdjZDcwMzM1ZWUuZ2lmPg0KDQogIFlvdSBjYW4gcmVhZCBtb3JlIChpbmNsdWRp bmcgaG93IGl0IGNvbXBhcmVzIHdpdGggbm90dHksIHByb2dyZXNzIGFuZA0KICBwcmludGJveCwg aGVyZSk6DQogIDxodHRwczovL2dhemFnbmFpcmUub3JnL2Jsb2cvMjAyNi0xMS0wMi1jb25zb2xl Lmh0bWw+Lg0KDQogIEZlZWRiYWNrIGlzIHZlcnkgd2VsY29tZSBiZWZvcmUgMS4wLCBvbiB0aGUg W2lzc3VlIHRyYWNrZXJdIG9yIGhlcmUuDQoNCg0KW2NvbnNvbGUgMC45LjBdIDxodHRwczovL2dp dGh1Yi5jb20vc2Ftb2h0L29jYW1sLWNvbnNvbGU+DQoNCltrN10gPGh0dHBzOi8vZ2F6YWduYWly ZS5vcmcvYmxvZy8yMDI2LTEwLTI2LWs3Lmh0bWw+DQoNCltpc3N1ZSB0cmFja2VyXSA8aHR0cHM6 Ly9naXRodWIuY29tL3NhbW9odC9vY2FtbC1jb25zb2xlL2lzc3Vlcz4NCg0KDQppbWd1aW1sIDEu OTMuMA0K4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQDQoNCiAgQXJj aGl2ZTogPGh0dHBzOi8vZGlzY3Vzcy5vY2FtbC5vcmcvdC9hbm4taW1ndWltbC0xLTkzLTAvMTg2 NzIvMT4NCg0KDQpGcsOpZMOpcmljIEJvdXIgYW5ub3VuY2VkDQrilIDilIDilIDilIDilIDilIDi lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIANCg0KICBJ J20gaGFwcHkgdG8gYW5ub3VuY2UgYSBuZXcgcmVsZWFzZSBvZiBpbWd1aW1sLCB0aGUgT0NhbWwg YmluZGluZ3MgdG8NCiAgRGVhciBJbUd1aS4NCg0KICDigKIgUHJvamVjdCBwYWdlOiA8aHR0cHM6 Ly9naXRodWIuY29tL2xldC1kZWYvaW1ndWltbD4NCiAg4oCiIERvY3VtZW50YXRpb246IDxodHRw czovL2xldC1kZWYuZ2l0aHViLmlvL2ltZ3VpbWw+DQoNCiAgSSBhbSB0YWtpbmcgb3ZlciBtYWlu dGVuYW5jZSBvZiB0aGUgcHJvamVjdCBmcm9tIGl0cyBvcmlnaW5hbCBhdXRob3IsDQogIEVtaWxp ZW4gTGVtYWlyZS4NCg0KICBXaGF0J3MgbmV3Og0KDQogIOKAoiBVcGRhdGVkIHRvICpEZWFyIElt R3VpIDEuOTMuMCosIHdpdGggZG9ja2luZyBzdXBwb3J0Lg0KICDigKIgVGhlIGJpbmRpbmdzIG5v dyB3b3JrIG9uICphcm02NCogKGFuZCBwcm9iYWJseSBzMzkwKS4NCiAg4oCiIEZvbnRzIGFyZSBu b3cgcmVuZGVyZWQgd2l0aCB0aGUgc3lzdGVtICpGcmVlVHlwZSogaW5zdGVhZCBvZg0KICAgIGBz dGJfdHJ1ZXR5cGUnLCBwcm92aWRpbmcgaGlnaGVyLXF1YWxpdHkgcmVuZGVyaW5nIGFuZCBiZXR0 ZXINCiAgICBjb21wYXRpYmlsaXR5IHdpdGggbW9kZXJuIGZvbnQgZm9ybWF0cy4NCiAg4oCiIElt R3VpIGlzIG5vdyBidWlsdCB3aXRoIHN1cHBvcnQgZm9yIDMyLWJpdCBjaGFyYWN0ZXJzLCBzbyAq RW1vamlzKg0KICAgIGFyZSBzdXBwb3J0ZWQuDQoNCiAgRGlzY2xhaW1lcjogIkNsYXVkZSIgd2Fz IHVzZWQgaW4gdGhpcyBwb3J0LCBub3RhYmx5IHRvIHJlYmFzZSBvbnRvIHRoZQ0KICBsYXRlc3Qg dmVyc2lvbiBvZiBJbUd1aSBhbmQgdG8gZml4IHRoZSBidWlsZCBvbiBhcm02NC4NCg0KDQpJbnRy b2NhbWwgNS41LjINCuKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKV kA0KDQogIEFyY2hpdmU6IDxodHRwczovL2Rpc2N1c3Mub2NhbWwub3JnL3QvaW50cm9jYW1sLTUt NS0yLzE4NjczLzE+DQoNCg0KRnLDqWTDqXJpYyBCb3VyIGFubm91bmNlZA0K4pSA4pSA4pSA4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA DQoNCiAgV2UncmUgaGFwcHkgdG8gYW5ub3VuY2UgYSBuZXcgYWxwaGEgcmVsZWFzZSBvZiBJbnRy b2NhbWwsIGFuIGV4dGVuc2lvbg0KICBvZiBPQ2FtbCB0aGF0IGJyaW5ncyBwb2x5bW9ycGhpYyBw cmludGluZy4gSXQgYWxsb3dzIHByaW50aW5nIGFuZA0KICBpbnNwZWN0aW5nIHZhbHVlcyBvZiBh bnkgdHlwZSwgd2l0aG91dCB3cml0aW5nIHByaW50ZXIgZnVuY3Rpb25zLiBTZWUNCiAgdGhlIFtm aXJzdCBhbm5vdW5jZW1lbnRdIGZvciBhbiBpbnRyb2R1Y3Rpb24uDQoNCiAgSW50cm9jYW1sIGlz IGRldmVsb3BlZCBhdCBbU2hvZ2FuLmFpXS4NCg0KICBUaGlzIHJlbGVhc2UgcG9ydHMgSW50cm9j YW1sIHRvIE9DYW1sIDUuNS4yLiBUbyB0cnkgaXQ6DQoNCiAg4pSM4pSA4pSA4pSA4pSADQogIOKU giBvcGFtIHN3aXRjaCBjcmVhdGUgNS41LjIraW50cm9jYW1sDQogIOKUlOKUgOKUgOKUgOKUgA0K DQoNCltmaXJzdCBhbm5vdW5jZW1lbnRdDQo8aHR0cHM6Ly9kaXNjdXNzLm9jYW1sLm9yZy90L2Fu bi1pbnRyb2NhbWwtYWxwaGEtcG9seW1vcnBoaWMtcHJpbnRpbmctYW5kLWludHJvc3BlY3Rpb24t Zm9yLW9jYW1sLzE4NDA3Pg0KDQpbU2hvZ2FuLmFpXSA8aHR0cHM6Ly9zaG9nYW4uYWk+DQoNCldo YXQncyBuZXcNCuKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjA0KDQril4ogSlNPTiBwcmlu dGVyDQoNCiAgQSBnZW5lcmljIEpTT04gcHJpbnRlciBpcyBhdmFpbGFibGUgaW4gYEludHJvc3Bl Y3QuSnNvbi4qJywgaW50ZW5kZWQNCiAgZm9yIGRlYnVnZ2luZyAoYW5kIHBpcGluZyB0aHJvdWdo IFtqcV0gOnN3ZWF0X3NtaWxlOik6DQoNCiAg4pSM4pSA4pSA4pSA4pSADQogIOKUgiAjIEludHJv c3BlY3QuSnNvbi50b19jaGFubmVsIHN0ZG91dCBbDQogIOKUgiAgICAgYFBvaW50IHt4ID0gNTsg eSA9IDB9Ow0KICDilIIgICAgIGBTdHJpbmcgImZvbyI7DQogIOKUgiAgICAgYExpc3QgW1Jlc3Vs dC5PayB0cnVlOyBSZXN1bHQuRXJyb3IgZmFsc2VdDQogIOKUgiAgIF07Ow0KICDilIIgW3siUG9p bnQiOnsieCI6NSwieSI6MH19LHsiU3RyaW5nIjoiZm9vIn0seyJMaXN0IjpbeyJPayI6dHJ1ZX0s eyJFcnJvciI6ZmFsc2V9XX1dDQogIOKUgiAtIDogdW5pdCA9ICgpDQogIOKUgiAjIA0KICDilJTi lIDilIDilIDilIANCg0KDQogIFtqcV0gPGh0dHBzOi8vanFsYW5nLm9yZy8+DQoNCg0K4peKIERl YnVnZ2luZyBmbGFncw0KDQogIOKAoiBgLWRibG9jay1kZXNjJyBzaG93cyBkZXNjcmlwdG9ycyBp biBgLWRsYW1iZGEnIGFuZCBzaW1pbGFyIG91dHB1dC4NCiAg4oCiIGAtdmVyYm9zZScgcmVwb3J0 cyBkZXNjcmlwdG9yIGNvbGxpc2lvbnMgYXQgbGluayB0aW1lLg0KDQoNCkNvbXBhdGliaWxpdHkN CuKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjA0KDQogIE9iamVjdCBmaWxl cyBhbmQgZXhlY3V0YWJsZXMgKGV4ZWMsIGNtbywgY21hLCBjbXgsIGNteGEsIGNteHMpIG5vdyB1 c2UNCiAgSW50cm9jYW1sLXNwZWNpZmljIG1hZ2ljIG51bWJlcnMgKGBDYW1sMTk5OT85MDEnKS4g Y21pLCBjbXQgYW5kIGFzdA0KICBmaWxlcyBrZWVwIHRoZSB1cHN0cmVhbSBmb3JtYXQuDQoNCg0K 4peKIGpzX29mX29jYW1sIHN1cHBvcnQNCg0KICBBbHRob3VnaCB0aGlzIHdhcyBkb25lIGluIHRo ZSBqc19vZl9vY2FtbCByZXBvc2l0b3J5LCBJIHRoaW5rIGl0IGlzDQogIHJlbGV2YW50IHRvIHBv aW50IHRoZSB3b3JrIHdlIGRpZCBAaGh1Z28gdG8gYnJpbmcgZnVsbCBjb21wYXRpYmlsaXR5DQog IHdpdGggSW50cm9jYW1sLiBqc19vZl9vY2FtbCBjYW4gbm93IGJlIGluc3RhbGxlZCBpbiBJbnRy b2NhbWwgc3dpdGNoZXMNCiAgYW5kIGphdmFzY3JpcHQgYnVpbGRzIGNhbiBub3cgYmUgaW5zdHJ1 bWVudGVkLiBUaGlzIGJyaW5ncyBwb2x5bW9ycGhpYw0KICBwcmludGluZyB0byBPQ2FtbCBwcm9n cmFtcyBjb21waWxlZCB3aXRoIGpzX29mX29jYW1sLCBhdCBubyBvYnNlcnZhYmxlDQogIHJ1bnRp bWUgY29zdCAoaW4gb3VyIGV4cGVyaW1lbnRzKS4NCg0KICBUaGVyZSBpcyBhbHNvIG9wdC1pbiBp bnRlZ3JhdGlvbiB3aXRoIHRoZSBicm93c2VyJ3MgSmF2YVNjcmlwdCBjb25zb2xlDQogIChgY29u c29sZS5sb2cnKSBhbmQgZGVidWdnZXIsIHRob3VnaCB0aGlzIGFwcGVhcnMgdG8gYmUgQ2hyb21l LW9ubHkgYXMNCiAgZmFyIGFzIEkgY2FuIHRlbGwuIFNlZSBbaG93IHRvIGVuYWJsZSBpdF0uDQoN Cg0KICBbaG93IHRvIGVuYWJsZSBpdF0NCiAgPGh0dHBzOi8vZGlzY3Vzcy5vY2FtbC5vcmcvdC9h bm4tanMtb2Ytb2NhbWwtd2FzbS1vZi1vY2FtbC02LTUvMTg2MzIvMz4NCg0KDQpCdWcgZml4ZXMN CuKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjOKVjA0KDQogIOKAoiAqRGVzY3JpcHRvciBjb2xsaXNp b25zOiogZGVzY3JpcHRvcnMgYXJlIGhhc2hlZCBiZXR0ZXIsIHJlZHVjaW5nDQogICAgIGNvbGxp c2lvbnMuIFdoZW4gdGhleSBzdGlsbCBjb2xsaWRlLCB2YWx1ZXMgYXJlIHByaW50ZWQgcmF3IGlu c3RlYWQNCiAgICAgb2Ygd2l0aCB0aGUgd3JvbmcgbmFtZXMuDQogIOKAoiAqRGVzY3JpcHRvciBy ZXByZXNlbnRhdGlvbjoqIHRoZSByZXByZXNlbnRhdGlvbiBpcyBzaW1wbGVyIGFuZCBtb3JlDQog ICAgIHBvcnRhYmxlLg0KICDigKIgKk1pc3NpbmcgZGVzY3JpcHRvcnM6KiBJIGZpeGVkIGEgZmV3 IGNhc2VzIHdoZXJlIGRlc2NyaXB0b3JzIHdlcmUNCiAgICAgb21pdHRlZCBvciBsb3N0IGR1cmlu ZyBjb21waWxhdGlvbiAobGFyZ2UgbmF0aXZlIGFsbG9jYXRpb25zLA0KICAgICBgI2xvYWQnIGlu IHRoZSB0b3BsZXZlbCkuDQogIOKAoiAqRmxvYXQgYXJyYXlzIGFuZCByZWNvcmRzOiogdGhpcyBm aXhlcyBidWdzIHJlcG9ydGVkIGJ5IEB2b3VpbGxvbg0KICAgICAoWyM1XSwgWyM2XSwgWyM3XSks IHBhdmluZyB0aGUgd2F5IHRvd2FyZCBjb21wYXRpYmlsaXR5IHdpdGgNCiAgICAgd2FzbV9vZl9v Y2FtbC4NCiAg4oCiICpQcmludGluZzoqIGB+c3RlcHMnIG5vdyBib3VuZHMgbG9uZyBsaXN0cyBh bmQgYXJyYXlzLCBhbmQgcHJpbnRpbmcNCiAgICAgaXMgZG9tYWluLXNhZmUuDQoNCiAgSW50cm9j YW1sIGFsc28gcmVjZWl2ZWQgdGhlICJDbGF1ZGUgdHJlYXRtZW50IiB0byBjYXRjaCBidWdzIEkg bWlzc2VkDQogIDpjbG93bl9mYWNlOi4NCg0KDQpbIzVdIDxodHRwczovL2dpdGh1Yi5jb20vbGV0 LWRlZi9vY2FtbC9pc3N1ZXMvNT4NCg0KWyM2XSA8aHR0cHM6Ly9naXRodWIuY29tL2xldC1kZWYv b2NhbWwvaXNzdWVzLzY+DQoNClsjN10gPGh0dHBzOi8vZ2l0aHViLmNvbS9sZXQtZGVmL29jYW1s L2lzc3Vlcy83Pg0KDQoNCm9jYW1sLXNzbCAwLjguMQ0K4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ 4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQDQoNCiAgQXJjaGl2ZTogPGh0dHBzOi8vZGlzY3Vzcy5vY2Ft bC5vcmcvdC9hbm4tb2NhbWwtc3NsLTAtOC0xLzE4Njc0LzE+DQoNCg0KUm9tYWluIEJlYXV4aXMg YW5ub3VuY2VkDQrilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDi lIDilIDilIDilIDilIDilIDilIDilIDilIANCg0KICBIaSBhbGwhDQoNCiAgYG9jYW1sLXNzbCcg dmVyc2lvbiBbMC44LjFdIHdhcyBqdXN0IHJlbGVhc2VkIGFuZCBhZGRlZCB0byB0aGUgYG9wYW0n DQogIHJlZ2lzdHJ5Lg0KDQogIFtWZXJzaW9uIDAuOC4wXSB3YXMgcmVsZWFzZWQgYSBmZXcgd2Vl a3MgYmFjayB3aXRoIGEgYnVuY2ggb2YgYnVnZml4ZXMNCiAgYW5kIGNsZWFudXBzIGFuZCAwLjgu MSBub3cgYWxzbyBhZGRzIHN1cHBvcnQgZm9yIFNTTCB2NC4NCg0KICBBbGwgcHJvamVjdHMgdXNp bmcgYG9jYW1sLXNzbCcgc2hvdWxkIG5vdyBjb25zaWRlciB1cGRhdGluZyB0byB0aGlzDQogIGxh dGVzdCB2ZXJzaW9uLg0KDQogIEFzIHVzdWFsLCBmZWVsIGZyZWUgdG8gc3VnZ2VzdCBwYXRjaGVz IGFuZCBldGMuIEFsc28sIHRoZSBwYWNrYWdlDQogIGNvdWxkIGRlZmluaXRlbHkgdXNlIG1vcmUg d29ya2ZvcmNlIGlzIHlvdSdyZSBpbnRlcmVzdGVkIGluIHN0ZXBwaW5nDQogIGluLg0KDQogIFRo YW5rcywNCg0KICAtIFJvbWFpbg0KDQoNClswLjguMV0gPGh0dHBzOi8vZ2l0aHViLmNvbS9zYXZv bmV0L29jYW1sLXNzbC9yZWxlYXNlcy90YWcvdjAuOC4xPg0KDQpbVmVyc2lvbiAwLjguMF0NCjxo dHRwczovL2dpdGh1Yi5jb20vc2F2b25ldC9vY2FtbC1zc2wvcmVsZWFzZXMvdGFnL3YwLjguMC8+ DQoNCg0KT2xkIENXTg0K4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQDQoNCiAgSWYgeW91IGhhcHBlbiB0 byBtaXNzIGEgQ1dOLCB5b3UgY2FuIFtzZW5kIG1lIGEgbWVzc2FnZV0gYW5kIEknbGwgbWFpbA0K ICBpdCB0byB5b3UsIG9yIGdvIHRha2UgYSBsb29rIGF0IFt0aGUgYXJjaGl2ZV0gb3IgdGhlIFtS U1MgZmVlZCBvZiB0aGUNCiAgYXJjaGl2ZXNdLg0KDQogIElmIHlvdSBhbHNvIHdpc2ggdG8gcmVj ZWl2ZSBpdCBldmVyeSB3ZWVrIGJ5IG1haWwsIHlvdSBtYXkgc3Vic2NyaWJlDQogIHRvIHRoZSBb Y2FtbC1saXN0XS4NCg0KICBbQWxhbiBTY2htaXR0XQ0KDQoNCltzZW5kIG1lIGEgbWVzc2FnZV0g PG1haWx0bzphbGFuLnNjaG1pdHRAcG9seXRlY2huaXF1ZS5vcmc+DQoNClt0aGUgYXJjaGl2ZV0g PGh0dHBzOi8vYWxhbi5wZXRpdGVwb21tZS5uZXQvY3duLz4NCg0KW1JTUyBmZWVkIG9mIHRoZSBh cmNoaXZlc10gPGh0dHBzOi8vYWxhbi5wZXRpdGVwb21tZS5uZXQvY3duL2N3bi5yc3M+DQoNCltj YW1sLWxpc3RdIDxodHRwczovL3N5bXBhLmlucmlhLmZyL3N5bXBhL2luZm8vY2FtbC1saXN0Pg0K DQpbQWxhbiBTY2htaXR0XSA8aHR0cHM6Ly9hbGFuLnBldGl0ZXBvbW1lLm5ldC8+DQoNCg== --==-=-= Content-Type: text/html; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable OCaml Weekly News

OCaml Weekly News

Previous Week<= /a> Up Next Week

Hello

Here is the latest OCaml Weekly News, for the week of October 27 to Novembe= r 03, 2026.

k7 0.9.0: record and replay CLI outputs

Thomas Gazagnaire announced

I'm happy to announce the release of k7 0.9.0 a small tool to record and replay CLI animations.

It's available on MacOS and Linux with brew:

brew install samoht/tap/k7

or in opam:

opam install k7

The main feature vs. other similar tools is that it can use cram tests as i= nput or output, so you can 1/ convert any cram test into an svg file; and 2= / ensure the svg that you use in your README files stays up-to-date with yo= ur code.

Apart from this it's in pure OCaml with no browser or ffmpeg involved; it p= lays .cast and .tape files (from asciinema<= /code> and vhs) and write .cast files, but probab= ly has fewer options than those tools, so feel free to open an issue if you find anything mi= ssing or not working.

See more details in my post: https://gazagnaire.org/blog/2026-10-26-k7.html

dune tracing

Rapha=C3=ABl Proust announced

Over the summer, @NatKarmios worked on dune for his internship= at [Ahrefs](ahrefs.com). He got a couple of PRs merged into dune. Then he wrote a new backe= nd for traces and a matching perfetto extension.

All of the details in his blog post:=20=20 Tracing Dune, with a side of graphs

TL;DR: you get a graph view of the build, some SQL querying capabilities, i= t scales to handle Ahrefs' monorepo

We're using the new tracing capability internally. And we're planning on up= streaming it too.

console: making OCaml CLI tools look good!

Thomas Gazagnaire announced

I'm happy to announce the release of console 0.9.0, a set of widgets for building nice-looking= command-line tools. The main design constraint I tried to follow is that t= he output should look good both for a human at an interactive terminal and = for scripts run in CI or other non-interactive loops (like LLM agents). Liv= e rows are redrawn in place and everything useful the program printed is st= ill there when it ends; piped output tries to be relatively clean.

3D"21b202a69ab6ff21=

You can use it with:

opam install console console-eio

The widgets in console are pure; console-eio is t= he driver that runs animations. There are a few limitation (including limit= ed Windows support) but you can already use it to encode quite complex UX. = For instance, here a few imitations of package manager frontends using cons= ole (recorded using k7):

3D"b18c267eea031cfb=

3D"ed712dd72eba5421=

3D"d7a8c56d42c8430f=

3D"7ecc3d918f9968f6=

You can read more (including how it compares with notty, progress and print= box, here): https://gazagnaire.org/blog/2026-11-02-console.html.

Feedback is very welcome before 1.0, on the issue tracker or here.

imguiml 1.93.0

Fr=C3=A9d=C3=A9ric Bour announced

I'm happy to announce a new release of imguiml, the OCaml bindings to Dear = ImGui.

I am taking over maintenance of the project from its original author, Emili= en Lemaire.

What's new:

  • Updated to Dear ImGui 1.93.0, with docking support.
  • The bindings now work on arm64 (and probably s390).
  • Fonts are now rendered with the system FreeType instead of stb_truetype, providing higher-quality rendering and better compati= bility with modern font formats.
  • ImGui is now built with support for 32-bit characters, so Emojis= are supported.

Disclaimer: "Claude" was used in this port, notably to rebase onto the late= st version of ImGui and to fix the build on arm64.

Introcaml 5.5.2

Fr=C3=A9d=C3=A9ric Bour announced

We're happy to announce a new alpha release of Introcaml, an extension of O= Caml that brings polymorphic printing. It allows printing and inspecting va= lues of any type, without writing printer functions. See the first announcement for an introduction.

Introcaml is developed at Shogan.ai.

This release ports Introcaml to OCaml 5.5.2. To try it:

opam switch create 5.5.2+introcaml

What's new

Compatibility

Object files and executables (exec, cmo, cma, cmx, cmxa, cmxs) now use Intr= ocaml-specific magic numbers (Caml1999?901). cmi, cmt and ast = files keep the upstream format.

  • js_of_ocaml support

    Although this was done in the js_of_ocaml repository, I think it is relevan= t to point the work we did @hhugo to bring full compatibility with Introcam= l. js_of_ocaml can now be installed in Introcaml switches and javascript bu= ilds can now be instrumented. This brings polymorphic printing to OCaml pro= grams compiled with js_of_ocaml, at no observable runtime cost (in our expe= riments).

    There is also opt-in integration with the browser's JavaScript console (console.log) and debugger, though this appears to be Chrome-only = as far as I can tell. See how to enable it.

Bug fixes

  • Descriptor collisions: descriptors are hashed better, reducing c= ollisions. When they still collide, values are printed raw instead of with = the wrong names.
  • Descriptor representation: the representation is simpler and mor= e portable.
  • Missing descriptors: I fixed a few cases where descriptors were = omitted or lost during compilation (large native allocations, #load in the toplevel).
  • Float arrays and records: this fixes bugs reported by @vouillon = (#5, #6, #7), paving the way toward compatibility w= ith wasm_of_ocaml.
  • Printing: ~steps now bounds long lists and arrays, = and printing is domain-safe.

Introcaml also received the "Claude treatment" to catch bugs I missed :clow= n_face:.

ocaml-ssl 0.8.1

Romain Beauxis announced

Hi all!

ocaml-ssl version 0.8.1 was just released and added to the opam registry.

Versi= on 0.8.0 was released a few weeks back with a bunch of bugfixes and cle= anups and 0.8.1 now also adds support for SSL v4.

All projects using ocaml-ssl should now consider updating to t= his latest version.

As usual, feel free to suggest patches and etc. Also, the package could def= initely use more workforce is you're interested in stepping in.

Thanks,

­- Romain

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 loo= k at the archive or the <= a href=3D"https://alan.petitepomme.net/cwn/cwn.rss">RSS feed of the archive= s.

If you also wish to receive it every week by mail, you may subscribe to the= caml-list.

--==-=-=-- --=-=-=-- --===-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQFvBAEBCABZFiEE6lXof/BsSVW56ZmGBA0KO07S5ccFAmrpv4cbFIAAAAAABAAO bWFudTIsMi41KzEuMTIsMCwzHxxhbGFuLnNjaG1pdHRAcG9seXRlY2huaXF1ZS5v cmcACgkQBA0KO07S5ccxSQgAg0J/ZiYGH2bS+jqOt2GCEfvVh5/j/a0oFm7tx7Qc dQUR3MeolsHpTofank+dtyFi3CKwilIXjRCkyBkMWJB1ymWLXWKNKGGWtuGVCaAl jnNAlOVkgUybbCjPpx2GQekWqDrZua2zmZlJNoVP9MJbTvipVIhFlmODUKxtisv8 zxCCcly/WLpADLQ/A1XGX/fDo0AsT8mvTHourCUZQdNfsg53/jA0PcXR3/z0AKdf wzLJsLgDH77fRdbl+Qx4ijLnzf1504elbRFVp/PTsoaMuvH88stZSeq8AicSOTPX 5dmxSfc7t1veMB/L/OcMOkeQ1k+7thixAR82IKqAvJHnpA== =/Eqa -----END PGP SIGNATURE----- --===-=-=--