From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 19 10:11:50 2020 Received: (at 44032) by debbugs.gnu.org; 19 Oct 2020 14:11:50 +0000 Received: from localhost ([127.0.0.1]:41938 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kUVt7-000748-En for submit@debbugs.gnu.org; Mon, 19 Oct 2020 10:11:49 -0400 Received: from lepiller.eu ([89.234.186.109]:47692) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kUVt4-00073w-0H for 44032@debbugs.gnu.org; Mon, 19 Oct 2020 10:11:47 -0400 Received: from lepiller.eu (localhost [127.0.0.1]) by lepiller.eu (OpenSMTPD) with ESMTP id 71726932; Mon, 19 Oct 2020 14:11:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=lepiller.eu; h=date :in-reply-to:references:mime-version:content-type :content-transfer-encoding:subject:to:cc:from:message-id; s= dkim; bh=16nJVeporjs120L7J8qEEKpHHPRP3uaypEckj2lWqTc=; b=kKv4yZa VjJ5N4fS+nENyQQTTkNwMlcP17NP5ihJKhXQStUhjbCLXRa9xLDkj9FT6KMELUgx tVkb7g5lbh7pWezs1JSgTGxF0MUYhlct2HF/J8CIqeAAU8VGf+vz69g5aqkJZPS1 rVQdnbgCUc4qNFlZD5LT1HlX7rSm+dDCssuBMTmGZq8qrjUeF08G37foAwqi062m QVmviIRYUI/hLfzQz5rmpejCjB7RHSLsA2oSqhh167yJu0tzGaulMg8YA9NyjKZL nwNAk16pELdUTlf/RUupmdBMeAW5auaTo0X76oUuamHZqHshnpHJPRO5QCzIrB8a LlPajfkvcXOE/BA== Received: by lepiller.eu (OpenSMTPD) with ESMTPSA id 18d6c2f0 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); Mon, 19 Oct 2020 14:11:43 +0000 (UTC) Date: Mon, 19 Oct 2020 10:11:32 -0400 User-Agent: K-9 Mail for Android In-Reply-To: <87y2k2fikr.fsf@gmail.com> References: <20201016171436.5f642654@tachikoma> <87y2k2fikr.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [bug#44032] [PATCH] gnu: ocaml: Update to 4.11.1 To: zimoun From: Julien Lepiller Message-ID: <26294C8B-1271-4ED9-8B1C-9A6DDF7E9AEA@lepiller.eu> X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 44032 Cc: 44032@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Le 19 octobre 2020 09:31:32 GMT-04:00, zimoun a =C3=A9crit : >Hi! > >On Fri, 16 Oct 2020 at 17:14, Julien Lepiller >wrote: > >> Note that with that, previously unreproducible packages are >> reproducible! > >I have not checked yet this point=2E :-) Thanks for the review! > > >>>From 2dc52a0077ffe1f0b416032fb1dfbf035f82c34e Mon Sep 17 00:00:00 >2001 >> From: Julien Lepiller >> Date: Thu, 15 Oct 2020 22:02:56 +0200 >> Subject: [PATCH 1/7] gnu: ocaml: Update to 4=2E11=2E1=2E >> >> * gnu/packages/ocaml=2Escm (ocaml): Update to 4=2E11=2E1=2E >> --- >> gnu/packages/ocaml=2Escm | 20 +++++++++++++++++--- >> 1 file changed, 17 insertions(+), 3 deletions(-) > >LTGM! > > >>>From 2b5fa1b7f30e7ff0315a752e10e87930e72dbb8e Mon Sep 17 00:00:00 >2001 >> From: Julien Lepiller >> Date: Thu, 15 Oct 2020 22:04:36 +0200 >> Subject: [PATCH 2/7] gnu: Add ocaml4=2E09-findlib=2E >> >> * gnu/packages/ocaml=2Escm (ocaml4=2E09-findlib): New variable=2E >> --- >> gnu/packages/ocaml=2Escm | 8 ++++++++ >> 1 file changed, 8 insertions(+) >> >> diff --git a/gnu/packages/ocaml=2Escm b/gnu/packages/ocaml=2Escm >> index be2f486179=2E=2E84daa8afca 100644 >> --- a/gnu/packages/ocaml=2Escm >> +++ b/gnu/packages/ocaml=2Escm >> @@ -1007,6 +1007,14 @@ compilers that can directly deal with >packages=2E") >> `(("m4" ,m4) >> ("ocaml" ,ocaml-4=2E07))))) >> =20 >> +(define-public ocaml4=2E09-findlib >> + (package >> + (inherit ocaml-findlib) >> + (name "ocaml4=2E09-findlib") >> + (native-inputs >> + `(("m4" ,m4) >> + ("ocaml" ,ocaml-4=2E09))))) >> + >> ;; note that some tests may hang for no obvious reason=2E >> (define-public ocaml-ounit >> (package >> --=20 >> 2=2E28=2E0 > >LGTM! Even if I was confused at first by: :-) The goal is to switcg to ocaml 4=2E11 by default, so after the switcg we n= eed a way to express pcakages with ocaml 4=2E09 :) > >--8<---------------cut here---------------start------------->8--- >$ =2E/pre-inst-env guix build ocaml4=2E09-findlib >/gnu/store/p49l1cr1wmf53szd5k4s2nx9n3p3qfc3-ocaml4=2E09-findlib-1=2E8=2E1 > >$ guix build ocaml-findlib >/gnu/store/n791rs3wvbm0fpmd0bqfhb3f4ysjwqia-ocaml-findlib-1=2E8=2E1 > >$ =2E/pre-inst-env guix build ocaml-findlib >/gnu/store/n791rs3wvbm0fpmd0bqfhb3f4ysjwqia-ocaml-findlib-1=2E8=2E1 >--8<---------------cut here---------------end--------------->8--- > > >>>From a810e6647ba30aba02b58840101ee66b7fbcd792 Mon Sep 17 00:00:00 >2001 >> From: Julien Lepiller >> Date: Thu, 15 Oct 2020 22:34:38 +0200 >> Subject: [PATCH 3/7] guix: ocaml: Add package-with-ocaml4=2E09=2E >> >> * guix/build-system/ocaml=2Escm (package-with-ocaml4=2E09) >> (strip-ocaml4=2E09-variant): New variables=2E >> * gnu/packages/ocaml=2Escm (ocaml4=2E09-result, ocaml4=2E09-csexp) >> (ocaml4=2E09-dune-configurator, ocaml4=2E09-dune): New variables=2E >> --- >> gnu/packages/ocaml=2Escm | 46 >++++++++++++++++++++++++++++++++++++- >> guix/build-system/ocaml=2Escm | 27 ++++++++++++++++++++++ >> 2 files changed, 72 insertions(+), 1 deletion(-) > >[=2E=2E=2E] > =20 >> +(define-public ocaml4=2E09-dune-configurator >> + (package >> + (inherit dune-configurator) >> + (name "ocaml4=2E09-dune-configurator") >> + (arguments >> + `(#:package "dune-configurator" >> + #:tests? #f >> + #:dune ,(package-with-ocaml4=2E09 dune-bootstrap) >> + #:ocaml ,ocaml-4=2E09 >> + #:findlib ,ocaml4=2E09-findlib)) >> + (propagated-inputs >> + `(("ocaml-csexp" ,(package-with-ocaml4=2E09 ocaml-csexp)))))) > >As I wrote in the other thread about updating Dune, it looks ackward to >me the use the 'package-with-ocaml4=2E09' inside and not wrap outside=2E= =2E=2E I understand this is confusing=2E The issue is that package-with-ocaml4=2E= 09 uses ocaml4=2E09-dune, but ocaml4=2E09-dune-configurator (as well as cse= xp and result) are dependencies of dune=2E So I define them separately, and use the properties field, so I can use pa= ckage-with-ocaml4=2E09, and use the variant I define, instead of the defaul= t=2E > >> (define-public dune >> (package >> (inherit dune-bootstrap) >> (propagated-inputs >> `(("dune-configurator" ,dune-configurator))) >> - (properties `((ocaml4=2E07-variant =2E ,(delay ocaml4=2E07-dune)))= ))) >> + (properties `((ocaml4=2E07-variant =2E ,(delay ocaml4=2E07-dune)) >> + (ocaml4=2E09-variant =2E ,(delay ocaml4=2E09-dune)))= ))) > >=2E=2E=2Eespecially these 'delay' in properties=2E But I got your >arguments=2E :-)=20 > > >> +(define-public ocaml4=2E09-dune >> + (package >> + (inherit (package-with-ocaml4=2E09 dune-bootstrap)) >> + (propagated-inputs >> + `(("dune-configurator" ,dune-configurator))))) > >[=2E=2E=2E] Uh oh this is an issue I think :) > >> +(define-public ocaml4=2E09-csexp >> + (package >> + (inherit ocaml-csexp) >> + (name "ocaml4=2E09-csexp") >> + (arguments >> + `(#:ocaml ,ocaml-4=2E09 >> + #:findlib ,ocaml4=2E09-findlib >> + ,@(substitute-keyword-arguments (package-arguments >ocaml-csexp) >> + ((#:dune _) (package-with-ocaml4=2E09 dune-bootstrap))))) >> + (propagated-inputs >> + `(("ocaml-result" ,(package-with-ocaml4=2E09 ocaml-result)))))) > >You do not use the one you define below=2E Why? Other said, do you >really need 'ocaml4=2E09=2Eresult' defined below? Actually, the properties ensure that I actually use the one below :) > >> + >> (define-public ocaml-migrate-parsetree >> (package >> (name "ocaml-migrate-parsetree") >> @@ -1494,12 +1528,22 @@ powerful=2E") >> (arguments >> `(#:test-target "=2E" >> #:dune ,dune-bootstrap)) >> + (properties `((ocaml4=2E09-variant =2E ,(delay ocaml4=2E09-result)= ))) > >Does it fail if instead > >(properties `((ocaml4=2E09-variant =2E ,(package-with-ocaml4=2E09 >ocaml-result))) Ah no, that should be fine, thanks=2E > >? > > >> +(define-public ocaml4=2E09-result >> + (package >> + (inherit ocaml-result) >> + (arguments >> + `(#:test-target "=2E" >> + #:dune ,(package-with-ocaml4=2E09 dune-bootstrap) >> + #:ocaml ,ocaml-4=2E09 >> + #:findlib ,ocaml4=2E09-findlib)))) > >Since the name is not changed after inheritance, this package is >ambiguous=2E And possibly do not compile=2E Ah right, thanks! > > >Otherwise, LGTM=2E > > >>>From 447de03a51a39fa7a7d8c5216c8ba23e632d0b88 Mon Sep 17 00:00:00 >2001 >> From: Julien Lepiller >> Date: Fri, 16 Oct 2020 17:01:40 +0200 >> Subject: [PATCH 4/7] gnu: laby: Update to 0=2E7=2E0=2E >> >> * gnu/packages/games=2Escm (laby): Update to 0=2E7=2E0=2E >> --- >> gnu/packages/games=2Escm | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) > >I am not sure to get why this one needs update instead of replacing >'ocaml' by 'ocaml4=2E09'=2E And the update in other patch set=2E Well, >bikeshed=2E :-) > >LGTM=2E > > >>>From cb1c4f34d558b3b0b3cfc2d21d77c3d703f6013c Mon Sep 17 00:00:00 >2001 >> From: Julien Lepiller >> Date: Fri, 16 Oct 2020 17:02:56 +0200 >> Subject: [PATCH 5/7] gnu: ocaml-ppx-tools-versioned: Use release >profile=2E >> >> * gnu/packages/ocaml=2Escm (ocaml-ppx-tools-versioned): Use release >> profile=2E >> --- >> gnu/packages/ocaml=2Escm | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) > >LGTM! > > >> From 6b08d42d9ebaa3ee6da4a9f8aa9cc6d70cf19231 Mon Sep 17 00:00:00 >2001 >> From: Julien Lepiller >> Date: Fri, 16 Oct 2020 17:06:53 +0200 >> Subject: [PATCH 6/7] gnu: ocamlify: Perform bootstrap build=2E >> >> * gnu/packages/ocaml=2Escm (ocamlify): Perform bootstrap build=2E >> --- >> gnu/packages/ocaml=2Escm | 29 ++++++++++++++++++----------- >> 1 file changed, 18 insertions(+), 11 deletions(-) >> >> diff --git a/gnu/packages/ocaml=2Escm b/gnu/packages/ocaml=2Escm >> index 15ca326376=2E=2E660aeef25a 100644 >> --- a/gnu/packages/ocaml=2Escm >> +++ b/gnu/packages/ocaml=2Escm >> @@ -2433,21 +2433,28 @@ radix-64 representation=2E It is specified in >RFC 4648=2E") >> (base32 >"1f0fghvlbfryf5h3j4as7vcqrgfjb4c8abl5y0y5h069vs4kp5ii")))) >> (build-system ocaml-build-system) >> (arguments >> - `(#:phases >> + `(#:tests? #f; no tests > >Why? Because the tests are run during the build? If yes, does it make >sense to move the comment there? No, the comment might have come from a previous version or just copied by = mistake=2E There is really no test in this package (unless there's somethin= g weird going on with oasis scripts)=2E > >> + #:phases > >[=2E=2E=2E] > >> #t)) >> - (delete 'check) ; tests are run during the >build > >[=2E=2E=2E] > >> (home-page "https://forge=2Eocamlcore=2Eorg/projects/ocamlify") >> (synopsis "Include files in OCaml code") >> (description "OCamlify creates OCaml source code by including > >Otherwise, LGTM! > > >>>From 0c2ba2bf29d4a72fe05710a84ca2ca548801702a Mon Sep 17 00:00:00 >2001 >> From: Julien Lepiller >> Date: Fri, 16 Oct 2020 17:07:45 +0200 >> Subject: [PATCH 7/7] gnu: ocaml: Switch to 4=2E11 by default=2E >> >> * gnu/packages/ocaml=2Escm (ocaml): Switch to 4=2E11 by default=2E >> --- >> gnu/packages/ocaml=2Escm | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/gnu/packages/ocaml=2Escm b/gnu/packages/ocaml=2Escm >> index 660aeef25a=2E=2Ee486a09fbb 100644 >> --- a/gnu/packages/ocaml=2Escm >> +++ b/gnu/packages/ocaml=2Escm >> @@ -243,7 +243,7 @@ functional, imperative and object-oriented styles >of programming=2E") >> "--prefix" out >> "--mandir" mandir)))))))))) >> =20 >> -(define-public ocaml ocaml-4=2E09) >> +(define-public ocaml ocaml-4=2E11) >> =20 >> (define-public ocamlbuild >> (package > >Cool! LGTM! > > >All the best, >simon