From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id sJNFJpw7A2byZwEA62LTzQ:P1 (envelope-from ) for ; Tue, 26 Mar 2024 22:18:20 +0100 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1.migadu.com with LMTPS id sJNFJpw7A2byZwEA62LTzQ (envelope-from ) for ; Tue, 26 Mar 2024 22:18:20 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=posteo.net header.s=2017 header.b=HOkaWGoV; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.net (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1711487900; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post: dkim-signature; bh=rmHG/UQigtFIGSu/sfXBpabTySyqWV/fB6iIvCiRoYE=; b=KV7NpB/2PTmeNtlha6oUpDbGtkcgNVBNa4lrYsXtp9xzRE0UfDf4BKH1crogPaZqYcao5t E6oSLKwx24giJNZ4Acj+rA2KugLwHUOpTrOQ4iYA8XKjtFDVmDxl4rANfbCOXmnfd57DpR DtN2Tulj97q4gAOicS2k+OT+lVbRanSlDulXTnBBUI60CK8xk5qsgcXhiSCFc8kT5MW6Ws AWoDBNTjRc4ZxnjuQDWT1FGwCrtICy0MkaNmyLqjoli+9nxRZNrF9NWj91wyVmgTqr/Nz/ In2VF6roa47n311lKyPuSbWBHEiWkLS3txA+Ipg6478eRjHLpwRk7eBoxD/gfQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=posteo.net header.s=2017 header.b=HOkaWGoV; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.net (policy=none) ARC-Seal: i=1; s=key1; d=yhetil.org; t=1711487900; a=rsa-sha256; cv=none; b=luT5dYj7odlkLJmgi3EAsZiSVXNcI7ZDsoNaMZmsxbE+kb0QtX9rKam6IIe7yree0V2wMR hYvoh9Xb+40IFenmqPVH9VEFibjbpuNqqKwWYYpFgC0QhlJKjPzHTFucAR1u5wbVMnPfNB 3jTdrBb7X1aOgAQozW3PwTUkvrG0mEn2YVdfdWtNwuJ8mKOav3lCkZqw813Jw5SzRYmXQp pKbHLXuqbNjLR30kl02ivNXPkR8sGB+O9fu6cB/Pp5Qp1Xc7RjLsknpdmLdNV9ymk25gml +4gdxlcHYLf3yPByKtIHzyJz/L0KNqSFb+A8uVYmAk8DqAtW/VcTmZ5nXKr0JQ== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 1771E27D1B for ; Tue, 26 Mar 2024 22:18:20 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rpEBJ-0000LJ-35; Tue, 26 Mar 2024 17:18:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rpEBG-0000Kz-HD for guix-patches@gnu.org; Tue, 26 Mar 2024 17:18:03 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rpEBG-0007Bm-5q for guix-patches@gnu.org; Tue, 26 Mar 2024 17:18:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rpEBF-0008UZ-P5 for guix-patches@gnu.org; Tue, 26 Mar 2024 17:18:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#69185] [PATCH master] gnu: ocaml: Update to 5.1.1 Resent-From: pukkamustard Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 26 Mar 2024 21:18:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 69185 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Marc Coquand Cc: 69185@debbugs.gnu.org Received: via spool by 69185-submit@debbugs.gnu.org id=B69185.171148787932628 (code B ref 69185); Tue, 26 Mar 2024 21:18:01 +0000 Received: (at 69185) by debbugs.gnu.org; 26 Mar 2024 21:17:59 +0000 Received: from localhost ([127.0.0.1]:35279 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rpEBC-0008U7-DO for submit@debbugs.gnu.org; Tue, 26 Mar 2024 17:17:59 -0400 Received: from mout02.posteo.de ([185.67.36.66]:50573) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rpEB9-0008Tc-Pl for 69185@debbugs.gnu.org; Tue, 26 Mar 2024 17:17:57 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 4C791240101 for <69185@debbugs.gnu.org>; Tue, 26 Mar 2024 22:17:48 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1711487869; bh=IYzpRHNX/diJIjV5XvrLi5gva+CVvZS9MN6yTFU2OKE=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type: From; b=HOkaWGoVknew4lvpUO+Nb8DQ5DtG8FCR5CPZ5fsyiw7ZutsgIVNS/5yDGKgivov0a jGSJhG6Cjw/FSB/GvUvXU84wVPtubg/KkN9fzvD72I5+KJzwMtN99eu/PMWhthle73 X0LJBSaVFeClSGU8Z8X+2sqCIhykQAfG+w3TRM23Vq8k25hBFwICYLYKgL2H5aOj33 GkTXQNm5X205qU6k5X6moxwTiQ0Pv5U8epxxlBSE6EuBsPdyiVKmQ1PA2a6QfxeKYQ D6Ktv1/NmKozAIh1gQbdKZ1S22uWEuPdJaAt3jc/7XGfNA0CEVuUwrSXret4R28fv+ +8EKqlWVBAyFg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4V42hD2QLtz6txd; Tue, 26 Mar 2024 22:17:48 +0100 (CET) References: <861q806r8g.fsf@posteo.net> <87edby3uac.fsf@mccd.space> From: pukkamustard Date: Tue, 26 Mar 2024 21:03:49 +0000 In-reply-to: <87edby3uac.fsf@mccd.space> Message-ID: <86zfukofrg.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Queue-Id: 1771E27D1B X-Spam-Score: -5.44 X-Migadu-Spam-Score: -5.44 X-Migadu-Scanner: mx10.migadu.com X-TUID: nbjiaE7gBWbD Marc Coquand writes: >> Do you think it would make sense to add a >> `package-with-ocaml5.1` transformation in `(guix build-system ocaml)`? > > Absolutely, or replace the ocaml5.0 one. > >> Maybe even better we can replace the OCaml 5.0 compiler with a newer >> version. The only packages depending on ocaml-5.0 are ocaml5.0-merlin >> and ocaml5.0-eio. They could be updated to use a newer OCaml >> version. Maybe no point in keeping OCaml 5.0 around. What do you think? > > I see there is also in packages/ocaml.scm: > > - ocaml5.0-merlin-reader > - ocaml5.0-ppx-expect > - ocaml5.0-dune-bootstrap > - ocaml5.0-crowbar > - ocaml5.0-findlib > > I assume that if we replace the old 5.0 version, we would need to bump > these packages as well, since they use Ocaml 5.0? Yes. > I am relatively new to software packaging, so I do not know what best > practice is here: if it is best to replace the old version or create an > entry for the new version. Hm, I'd say it's good to keep versions around that are being used by other packages in Guix or it is a version where we can assume that significant amount of people are using it from Guix for things outside of Guix. I think OCaml 5.0 is neither: - The ocaml5.0-* packages are mostly to get a working development environment (ocaml5.0-merlin and dependencies). - Our ocaml5.0-eio is outdated and the recently released Eio 1.0.0 only supports OCaml 5.1.1 or later. - There's not much reason to use OCaml 5.0 when OCaml 5.1 is available. I'd suggest replacing OCaml 5.0 with OCaml 5.1 in Guix. Happy hacking! -pukkamustard > pukkamustard writes: > >> Thanks! >> >> I wonder how useful the OCaml compiler itself is without a >> `package-with-ocaml5.1` transformation? The `ocaml` package itself just >> provides the compiler but no nice way (afaik) of using the compiler with >> dependencies and all. Do you think it would make sense to add a >> `package-with-ocaml5.1` transformation in `(guix build-system ocaml)`? >> >> Maybe even better we can replace the OCaml 5.0 compiler with a newer >> version. The only packages depending on ocaml-5.0 are ocaml5.0-merlin >> and ocaml5.0-eio. They could be updated to use a newer OCaml >> version. Maybe no point in keeping OCaml 5.0 around. What do you think? >> >> -pukkamustard >> >> >> Marc Coquand writes: >> >>> * gnu/packages/ocaml.scm (ocaml): Update to 5.1.1 >>> >>> Change-Id: Ie95f2e31185a5f5ef345839d357d5768e4299fcc >>> --- >>> gnu/packages/ocaml.scm | 56 ++++++++++++++++++++++++++++++++++++++++++ >>> 1 file changed, 56 insertions(+) >>> >>> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm >>> index 0f4c351141..f7b9f9b81a 100644 >>> --- a/gnu/packages/ocaml.scm >>> +++ b/gnu/packages/ocaml.scm >>> @@ -191,6 +191,62 @@ (define-public camlboot >>> This package produces a native @command{ocamlc} and a bytecode @command{ocamllex}.") >>> (license license:expat)))) >>> >>> +(define-public ocaml-5.1 >>> + (package >>> + (name "ocaml") >>> + (version "5.1.1") >>> + (source >>> + (origin >>> + (method git-fetch) >>> + (uri (git-reference >>> + (url "https://github.com/ocaml/ocaml") >>> + (commit version))) >>> + (file-name (git-file-name name version)) >>> + (sha256 >>> + (base32 "19sjc8r2c78y7g47jjxb1c30zzvkdhgy8yp3i1kkz1hm6nj96adr")))) >>> + (build-system gnu-build-system) >>> + (native-search-paths >>> + (list (search-path-specification >>> + (variable "OCAMLPATH") >>> + (files (list "lib/ocaml" "lib/ocaml/site-lib"))) >>> + (search-path-specification >>> + (variable "CAML_LD_LIBRARY_PATH") >>> + (files (list "lib/ocaml/site-lib/stubslibs" >>> + "lib/ocaml/site-lib/stublibs"))))) >>> + (native-inputs (list perl pkg-config)) >>> + (inputs (list libx11 libiberty ;needed for objdump support >>> + zlib)) ;also needed for objdump support >>> + (arguments >>> + `(#:configure-flags '("--enable-ocamltest") >>> + #:test-target "tests" >>> + #:make-flags '("defaultentry") >>> + #:phases (modify-phases %standard-phases >>> + (add-after 'unpack 'patch-/bin/sh-references >>> + (lambda* (#:key inputs #:allow-other-keys) >>> + (let* ((sh (search-input-file inputs "/bin/sh")) >>> + (quoted-sh (string-append "\"" sh "\""))) >>> + (with-fluids ((%default-port-encoding #f)) >>> + (for-each (lambda (file) >>> + (substitute* file >>> + (("\"/bin/sh\"") >>> + (begin >>> + (format (current-error-port) >>> + "patch-/bin/sh-references: ~a: changing `\"/bin/sh\"' to `~a'~%" >>> + file quoted-sh) >>> + quoted-sh)))) >>> + (find-files "." "\\.ml$"))))))))) >>> + (home-page "https://ocaml.org/") >>> + (synopsis "The OCaml programming language") >>> + (description >>> + "OCaml is a general purpose industrial-strength programming language with >>> +an emphasis on expressiveness and safety. Developed for more than 20 years at >>> +Inria it benefits from one of the most advanced type systems and supports >>> +functional, imperative and object-oriented styles of programming.") >>> + ;; The compiler is distributed under qpl1.0 with a change to choice of >>> + ;; law: the license is governed by the laws of France. The library is >>> + ;; distributed under lgpl2.0. >>> + (license (list license:qpl license:lgpl2.0)))) >>> + >>> (define-public ocaml-5.0 >>> (package >>> (name "ocaml") >>> >>> base-commit: 3cf199dbcf85a44fa8370e786e568fc3feb7067c