Received: (at 73197) by debbugs.gnu.org; 14 Feb 2025 21:12:22 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 14 16:12:22 2025 Received: from localhost ([127.0.0.1]:52061 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tj2z0-0000TV-4W for submit <at> debbugs.gnu.org; Fri, 14 Feb 2025 16:12:22 -0500 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]:51610) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <zimon.toutoune@HIDDEN>) id 1tj2yu-0000TC-Tp for 73197 <at> debbugs.gnu.org; Fri, 14 Feb 2025 16:12:19 -0500 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-4395b367329so16243065e9.3 for <73197 <at> debbugs.gnu.org>; Fri, 14 Feb 2025 13:12:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739567530; x=1740172330; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to; bh=M0cyyeWE6HT5v9Ifah9gNmp576W83b2uHR2MNXchmVA=; b=UsHqAjza9qXxZUDTZb+GlpjB9IMbIYU5rXKiqseRXNjN81uhYYu5ACkFzsVzeclqxW 2aCLgffiNDFM1IiHjJYcL/6vgZQHHQ7xNqOKJpB5iFabZryYUXTstHw2SjzWn0Ec3pe7 PBJn+bkhBJNM1I8WiGBaMQXPSITN4FvNtGWq6xFlk0tL1vaV+/DHV2bvr7QabepcnOpM IFAHxMJxgDKItaRlKm+9HCTVk7tuWsBzKCdehknSivaajDuDVuqX/xdYS7o0n98//rQK jqDNzWyxngI6qepf20NISV6H+uRamzAcpqL4rVWGcMR+weFcdDBkslVMOtEHaQSaJylZ +/Rw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739567530; x=1740172330; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=M0cyyeWE6HT5v9Ifah9gNmp576W83b2uHR2MNXchmVA=; b=I6BbmAzGVVA/TL+6/3I6lQJgend8W6cqRLrnWpCTRjswGikQMCItglEn84zJqsEuZA PmwE64GBNM7aOhLG+R7d6Ng7+ICXVE0K9wKE3B0LoYBLJFIRcNmzs25Krs4ByNf/gqIG 1ENa3yczzkqimnn6DjiqK6V4kekAP2lTqVTQd+YCHRmj3P4N+w96eR6+od8upImdq2/Q 23esrSiphJ7hrNEeTxZyw9eqRPVyvCEOgVflUqhOFx+XDbCWxX8mU8VjlcKLEh5drkGr JMY3ETVhuFnvFo93RErUqKMajmDEcITigGSxEHt/1lSuXC/OLcZvNlizKsoMu0Bh1jrM 8WAA== X-Gm-Message-State: AOJu0YzeNaUHw5Eaeeo9LkuEp8LpPIQX+XVzgGfDGnRn0VsnmJln3u2I RoBX/DFDBg3hK8KssBnehlUBGbZbVGjSfRBL7n3t8GXfKdVmWCjt X-Gm-Gg: ASbGncu760j5ZY0B7H6WUVWL2xlS6wgyHfPI+Prv4Pb5+UbS713LHEvDxd5uAA9MBah TUPwx5KKNSR4LO9+nm3fy0fk+BFF4699G1jsDA4AthwY++aMImXT4ENdVkWRYowyS3xzAJkXPz6 +1UxecelCR7MZLxLA2IX87PJNm9hOAz9ft8jsGeb6WGdu3rnIA8rm5OjRN728ECRamE8IHYhnc2 D/cKiVNwROS/FF1bTE1xXkNdN4EP3fhpZHNfRuPcw+DwmWCvjG+DsegDOaWD+HpHfUtDYfo8c0j YyvVUGNBE0yKBEM= X-Google-Smtp-Source: AGHT+IEHHi59KIELalKVi0SSpu22IzJ/OqzRB9H5Sn/pka41WXHDQ+FVRGII1g3V4/C/ecKCfg9cPQ== X-Received: by 2002:a05:600c:4f86:b0:439:4499:54de with SMTP id 5b1f17b1804b1-4396e77a052mr11257485e9.31.1739567529581; Fri, 14 Feb 2025 13:12:09 -0800 (PST) Received: from pfiuh07 ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43959d3d5f3sm85733455e9.0.2025.02.14.13.12.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Feb 2025 13:12:09 -0800 (PST) From: zimoun <zimon.toutoune@HIDDEN> To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludovic.courtes@HIDDEN> Subject: Status wip-julia-update (was Re: bug#73197: [PATCH] gnu: julia: Update to 1.9.3.) References: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> <ZufjPjnj4aZbjxiV@3900XT> <87ed5k7wx5.fsf@HIDDEN> <87a5g2tkbe.fsf@HIDDEN> <Zu_GE2mleWP15xOO@3900XT> <87frlw3q3o.fsf@HIDDEN> <87cygxvb47.fsf@HIDDEN> <87bjwa4lcb.fsf@HIDDEN> <87ikpc5z6g.fsf@HIDDEN> Date: Fri, 14 Feb 2025 22:10:07 +0100 In-Reply-To: <87ikpc5z6g.fsf@HIDDEN> (Simon Tournier's message of "Fri, 14 Feb 2025 16:22:15 +0100") Message-ID: <865xlcgrm8.fsf_-_@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 73197 Cc: 73197 <at> debbugs.gnu.org, Efraim Flashner <efraim@HIDDEN>, Philippe Virouleau <philippe.virouleau@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Hi, On Fri, 14 Feb 2025 at 16:22, Simon Tournier <zimon.toutoune@HIDDEN> wro= te: > Well, I=E2=80=99ll (force) push shortly a trivial fix to the branch > wip-julia-upgrade. I did. \o/ And waiting the rebuild by ci.guix, I=E2=80=99m rebuilding some on my own. = And I obverse weird behaviour=E2=80=A6 For example, on the top of 5f31ce18b3. --8<---------------cut here---------------start------------->8--- $ ./pre-inst-env guix build --no-grafts \ --without-tests=3Djulia-argcheck \ --without-tests=3Djulia-documenter \ --without-tests=3Djulia-genericschur \ --without-tests=3Djulia-static \ --without-tests=3Djulia-statsbase \ --without-tests=3Djulia-infinity \ --without-tests=3Djulia-pycall \ --without-tests=3Djulia-http \ --without-tests=3Djulia-staticarrays \ --without-tests=3Djulia-finitedifferences \ julia-benchmarktools /gnu/store/pdj7ilvyh4i96jd5av97vrlghpxc25ni-julia-benchmarktools-1.3.2 --8<---------------cut here---------------end--------------->8--- So far, so good! Here all =E2=80=99without-tests=E2=80=99 are packages tha= t need to be updated or need a fix in their test suite=E2=80=93e.g., one test fails beca= use hardware or other as it happens time to time with Julia packages. Now, let do the same but using the =E2=80=99julia=E2=80=99 package without = its own tests. It should be pass, no? --8<---------------cut here---------------start------------->8--- $ ./pre-inst-env guix build --no-grafts \ --without-tests=3Djulia-argcheck \ --without-tests=3Djulia-documenter \ --without-tests=3Djulia-genericschur \ --without-tests=3Djulia-static \ --without-tests=3Djulia-statsbase \ --without-tests=3Djulia-infinity \ --without-tests=3Djulia-pycall \ --without-tests=3Djulia-http \ --without-tests=3Djulia-staticarrays \ --without-tests=3Djulia-finitedifferences \ --without-tests=3Djulia \ julia-benchmarktools=20 starting phase `precompile' ERROR: LoadError: ArgumentError: Package Parsers [69de0a69-1ddd-5017-9359-2= bf0b02dc9f0] is required but does not seem to be installed: - Run `Pkg.instantiate()` to install all recorded dependencies. --8<---------------cut here---------------end--------------->8--- Euh, I=E2=80=99m probably doing wrong something somewhere=E2=80=A6 But it = does not jump to my eyes what. Any idea? For the record, here the path: $ guix graph --path julia-benchmarktools julia-parsers julia-benchmarktools@HIDDEN julia-json@HIDDEN julia-parsers@HIDDEN And note that julia-parsers is propagated by julia-json then julia-benchmarktools propagates julia-json. Therefore, the full =E2=80=99julia=E2=80=99 package finds julia-parsers but= not all the same except running the =E2=80=99check=E2=80=99 phase of julia=E2=80=99. What do I miss about package transformation? That=E2=80=99s said, it=E2=80=99s weird behaviour because I also observe th= e converse: something that passes using --without-tests=3Djulia but fails with full =E2=80=99julia=E2=80=99. Bah=E2=80=A6 my creativity starts to be lacking=E2=80=A6 Cheers, simon PS: What about Nix? 1. I don=E2=80=99t clearly understand what they do. 2. So much Julia code=E2=80=A6 Hum, I=E2=80=99m not convinced that=E2=80=99= s the way=E2=80=A6 https://github.com/NixOS/nixpkgs/tree/master/pkgs/development/julia-modules https://github.com/NixOS/nixpkgs/tree/master/pkgs/development/compilers/jul= ia
guix-patches@HIDDEN
:bug#73197
; Package guix-patches
.
Full text available.Received: (at 73197) by debbugs.gnu.org; 14 Feb 2025 18:08:39 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 14 13:08:39 2025 Received: from localhost ([127.0.0.1]:51655 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tj07C-0008El-TR for submit <at> debbugs.gnu.org; Fri, 14 Feb 2025 13:08:39 -0500 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]:58851) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <zimon.toutoune@HIDDEN>) id 1tj079-0008ES-W8 for 73197 <at> debbugs.gnu.org; Fri, 14 Feb 2025 13:08:37 -0500 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-4362bae4d7dso15104155e9.1 for <73197 <at> debbugs.gnu.org>; Fri, 14 Feb 2025 10:08:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739556510; x=1740161310; darn=debbugs.gnu.org; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=4qbvQhTIUAdQaxLAIQVw1oH0LlnRiHm38OMwTvLVnRY=; b=TEP8cE236USUg2MKhaBOjcEg9WqMhtpq0PKpEQMrS5DW3B6lukeNPxy6Vk19fGGTIW FSNOlMXAS1FiquSPYZ15iQA9Wd6P2ryORMqLFXGaqSUWtnnWBtyniaXdVAwsJCoCFZrM pQWtUg9OBRyWSnp0ox+ILNYB9uDpkCoySqjMRvftYanRMO3wnu6fQyewE9CkUUegVYK8 E9N48R6hebF+5Yw0oz+W0MFyhVqTWp1dTVWOu4qH6xHKHwSnFjyr1X14dyFpNE+GR6RP EreTltn6lZ/80N3zLr89hc7j42atrV+lRuTKxUG38CRcsWbX6FZR/7ivfhaQeSGlqNMo EeIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739556510; x=1740161310; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=4qbvQhTIUAdQaxLAIQVw1oH0LlnRiHm38OMwTvLVnRY=; b=bh4NcH18fvzkv/S/Eyl9L5NtXMRl5szVxl7w1ZMORzOrlCmCiYrimKddNGSX3KJWQr oaNnZLmaOX9pAvfD0RG359Q7snUlQnsro+XjW0qOIIWlU6fmgu8NK/hfrkp8OVuf00qC KKDbxvkTKR1ePff+nydvIwm7zJ8r9yP/oHHSBybrSWwOTHO3RDXePn2eOfAk/6NL7Exz H5eX/IMQcvxxC5uTTWBCDr4gfI2sHaC3tbqbVUm9YZXavgOKOfNZQamp0HBozZbnJ//c iSGAWbUproBGKqY+9qc0yCVtw0gkZ5Fb/xbvWdsyDnH40/Fx91avkod54QHFvaI2stZ3 zKqA== X-Gm-Message-State: AOJu0Yyu0O3/JqQdEYxwBoQME9LMV1XnFtw7UosHteSeMlaVqygLpomr umFXJJxxycj+Pzmvs2Pd+kYJtypjtFWqTIfEw2OsOQU9RPUKAF5q X-Gm-Gg: ASbGncvX6OSSoWFBCO7OfRB3zY89cxpU9bJkca2Me6lvwmeCReJNXMwhqvW5oP1UE5z kH/Tz80AEgMOc/UQ+W8l2k1QxWsnDBr2cIUJLojN/cbiMlzzGM8iCt2setcmO/LRGqytEWaJFPn ydNy56jgHglARCNPxTD78lN4KSfVf3mdO1ehHVb+6/n3MbBy3P7Stz3BSq5scBAQzshmQ1JqXla luN2gfBbbavomi3o8l37rBhjKgHjul7dRxDVaxEocGZHwZ+e2kV5X577T0V7IJTn/uJK6qbP7QB h3Oq4uTQBhE2GGM= X-Google-Smtp-Source: AGHT+IFtsF00qd2jHCze3E0bQuKJBl3rUgktmvxu8ThGC+g8spHtwcq+pzHNZBXXNjmPWTYx0606PA== X-Received: by 2002:a05:600c:3593:b0:439:6dfc:232 with SMTP id 5b1f17b1804b1-4396e6ca465mr3064605e9.8.1739556509280; Fri, 14 Feb 2025 10:08:29 -0800 (PST) Received: from pfiuh07 ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4396180f199sm49907875e9.15.2025.02.14.10.08.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Feb 2025 10:08:28 -0800 (PST) From: Simon Tournier <zimon.toutoune@HIDDEN> To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludovic.courtes@HIDDEN> Subject: Re: [bug#73197] [PATCH] gnu: julia: Update to 1.9.3. In-Reply-To: <87bjwa4lcb.fsf@HIDDEN> References: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> <ZufjPjnj4aZbjxiV@3900XT> <87ed5k7wx5.fsf@HIDDEN> <87a5g2tkbe.fsf@HIDDEN> <Zu_GE2mleWP15xOO@3900XT> <87frlw3q3o.fsf@HIDDEN> <87cygxvb47.fsf@HIDDEN> <87bjwa4lcb.fsf@HIDDEN> Date: Fri, 14 Feb 2025 16:22:15 +0100 Message-ID: <87ikpc5z6g.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 73197 Cc: 73197 <at> debbugs.gnu.org, Efraim Flashner <efraim@HIDDEN>, Philippe Virouleau <philippe.virouleau@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi, On Mon, 13 Jan 2025 at 19:31, Simon Tournier <zimon.toutoune@HIDDEN> wro= te: > For the record, it=E2=80=99s about base/loading.jl: > > --8<---------------cut here---------------start------------->8--- > try > toplevel_load[] =3D false > # perform the search operation to select the module file require= intends to load > - path =3D locate_package(pkg) > + path =3D locate_package(pkg, env) > if path =3D=3D=3D nothing > throw(ArgumentError(""" > Package $pkg is required but does not seem to be install= ed: > --8<---------------cut here---------------end--------------->8--- Welcome to a debugging session using the most advanced technique: print! :-) Attached the base/loading.jl with many =E2=80=99println=E2=80=99. Well, that=E2=80=99s very interesting because it seems related to some Julia internals. Somehow, the order of LOAD_PATH matters! In all the dance, the code enters once and it founds it! --8<---------------cut here---------------start------------->8--- ENTRY _require: Call locate_package( ConstructionBase [187b0558-2788-49d3-a= be0-74a17ed4e7c9] , /gnu/store/garmz1dz382ib25p2ckl0kj9rjay4xd4-julia-unitf= ul-1.12.2/share/julia/loadpath/ ) [...] RESULT _require: path =3D /gnu/store/yg4bz2kb7dqb6haaj0v7hj4mrd8rn27l-julia= -constructionbase-1.3.0/share/julia/loadpath/ConstructionBase/src/Construct= ionBase.jl --8<---------------cut here---------------end--------------->8--- Then, it enters later with the same call=E2=80=A6 And bang! --8<---------------cut here---------------start------------->8--- ENTRY _require: Call locate_package( ConstructionBase [187b0558-2788-49d3-a= be0-74a17ed4e7c9] , /gnu/store/garmz1dz382ib25p2ckl0kj9rjay4xd4-julia-unitf= ul-1.12.2/share/julia/loadpath/ ) [...] RESULT _require: path =3D nothing ERROR: LoadError: ArgumentError: Package ConstructionBase [187b0558-2788-49= d3-abe0-74a17ed4e7c9] is required but does not seem to be installed: - Run `Pkg.instantiate()` to install all recorded dependencies. --8<---------------cut here---------------end--------------->8--- What=E2=80=99s different? The call loops over load_path(), something like: --8<---------------cut here---------------start------------->8--- locate_package_env: START LOOP; over load_path() =3D ["/gnu/store/garmz1dz3= 82ib25p2ckl0kj9rjay4xd4-julia-unitful-1.12.2/share/julia/environments/v1.9/= Project.toml", "/gnu/store/cp0fbzd4j1znnp4fjpsknap0ksnp2xk1-julia-1.9.3/sha= re/julia/stdlib/v1.9", "/gnu/store/yg4bz2kb7dqb6haaj0v7hj4mrd8rn27l-julia-c= onstructionbase-1.3.0/share/julia/loadpath/", "/gnu/store/garmz1dz382ib25p2= ckl0kj9rjay4xd4-julia-unitful-1.12.2/share/julia/loadpath/"] locate_package_env: loop =3D 1 locate_package_env: env =3D /gnu/store/garmz1dz382ib25p2ckl0kj9rjay4xd4-jul= ia-unitful-1.12.2/share/julia/environments/v1.9/Project.toml locate_package_env: path =3D nothing locate_package_env: loop =3D 2 locate_package_env: env =3D /gnu/store/cp0fbzd4j1znnp4fjpsknap0ksnp2xk1-jul= ia-1.9.3/share/julia/stdlib/v1.9 locate_package_env: path =3D nothing locate_package_env: loop =3D 3 locate_package_env: env =3D /gnu/store/yg4bz2kb7dqb6haaj0v7hj4mrd8rn27l-jul= ia-constructionbase-1.3.0/share/julia/loadpath/ locate_package_env: path =3D /gnu/store/yg4bz2kb7dqb6haaj0v7hj4mrd8rn27l-ju= lia-constructionbase-1.3.0/share/julia/loadpath/ConstructionBase/src/Constr= uctionBase.jl --8<---------------cut here---------------end--------------->8--- And for the second case, tandam! --8<---------------cut here---------------start------------->8--- locate_package_env: START LOOP; over load_path() =3D ["/tmp/.julia/environm= ents/v1.9/Project.toml", "/gnu/store/cp0fbzd4j1znnp4fjpsknap0ksnp2xk1-julia= -1.9.3/share/julia/stdlib/v1.9", "/gnu/store/garmz1dz382ib25p2ckl0kj9rjay4x= d4-julia-unitful-1.12.2/share/julia/loadpath/", "/gnu/store/yg4bz2kb7dqb6ha= aj0v7hj4mrd8rn27l-julia-constructionbase-1.3.0/share/julia/loadpath/"] locate_package_env: loop =3D 1 locate_package_env: env =3D /tmp/.julia/environments/v1.9/Project.toml locate_package_env: path =3D nothing locate_package_env: loop =3D 2 locate_package_env: env =3D /gnu/store/cp0fbzd4j1znnp4fjpsknap0ksnp2xk1-jul= ia-1.9.3/share/julia/stdlib/v1.9 locate_package_env: path =3D nothing locate_package_env: loop =3D 3 locate_package_env: env =3D /gnu/store/garmz1dz382ib25p2ckl0kj9rjay4xd4-jul= ia-unitful-1.12.2/share/julia/loadpath/ locate_package_env: path =3D nothing locate_package_env: BREAK: /gnu/store/garmz1dz382ib25p2ckl0kj9rjay4xd4-juli= a-unitful-1.12.2/share/julia/loadpath/ =3D=3D /gnu/store/garmz1dz382ib25p2c= kl0kj9rjay4xd4-julia-unitful-1.12.2/share/julia/loadpath/ locate_package_env: : loading_extension =3D false locate_package_env: : precompiling_extension =3D false locate_package_env: END LOOP locate_package_env: pkg =3D ConstructionBase [187b0558-2788-49d3-abe0-74a17= ed4e7c9] locate_package_env: Sys.STDLIB =3D /gnu/store/cp0fbzd4j1znnp4fjpsknap0ksnp2= xk1-julia-1.9.3/share/julia/stdlib/v1.9 locate_package_env: Call manifest_uuid_path( /gnu/store/cp0fbzd4j1znnp4fjps= knap0ksnp2xk1-julia-1.9.3/share/julia/stdlib/v1.9 , ConstructionBase [187b0= 558-2788-49d3-abe0-74a17ed4e7c9] ) locate_package_env: mbypath =3D nothing String? false locate_package_env: RETURN: path =3D nothing ; env =3D /gnu/store/garmz1dz3= 82ib25p2ckl0kj9rjay4xd4-julia-unitful-1.12.2/share/julia/loadpath/ locate_package: RETURN: nothing _require: Post locate_package( ConstructionBase [187b0558-2788-49d3-abe0-74= a17ed4e7c9] , /gnu/store/garmz1dz382ib25p2ckl0kj9rjay4xd4-julia-unitful-1.1= 2.2/share/julia/loadpath/ ) RESULT _require: path =3D nothing --8<---------------cut here---------------end--------------->8--- The attentive reader notes that load_path() is a list of 4 elements =E2=80= =93the last contains what we want=E2=80=93 but a test breaks the loop. Well, I do not know the details about the reasons of all that. Maybe something worth to ask upstream. :-) Well, I=E2=80=99ll (force) push shortly a trivial fix to the branch wip-julia-upgrade.=20 Cheers, simon PS: For the record, some elements: 1. Checkout wip-julia-upgrade 2. cp $(./pre-inst-env guix build julia -S) /tmp/ 3. Uncompress the source and copy (e.g., /home/simon/tmp/julia-1.9.3) 4. Tweak the base/loading.jl file (and other as base/initdefs.jl) 5. Use this source with: (source (local-file "/home/simon/tmp/julia-1.9.3" #:recursive? #t)) 6. guix shell -CPNWD guix --expose=3D/home/simon/tmp/=3D/home/simon/tmp/ 7. Build: ./pre-inst-env guix build --no-grafts --without-tests=3Djulia jul= ia 8. Tweak guix/build-system/julia-build-system.scm 9. Loop ./pre-inst-env guix build --no-grafts --without-tests=3Djulia julia= -unitful Hope that helps. -- --=-=-= Content-Type: text/x-diff; charset=utf-8 Content-Disposition: inline; filename=loading.diff Content-Transfer-Encoding: quoted-printable Content-Description: loading.diff --- /tmp/julia-1.9.3/base/loading.jl 1970-01-01 01:00:01.000000000 +0100 +++ /home/simon/tmp/julia-1.9.3/base/loading.jl 2025-02-14 15:38:59.8790479= 68 +0100 @@ -391,6 +391,7 @@ identify_package(name::String) =3D _nothing_or_first(identi= fy_package_env(name)) =20 function locate_package_env(pkg::PkgId, stopenv::Union{String, Nothing}=3D= nothing) + println("locate_package_env: ARGS: ", pkg, " , ", stopenv) cache =3D LOADING_CACHE[] if cache !=3D=3D nothing pathenv =3D get(cache.located, (pkg, stopenv), nothing) @@ -399,6 +400,7 @@ path =3D nothing env=E2=80=B2 =3D nothing if pkg.uuid =3D=3D=3D nothing + println("locate_package_env: Case: nothing... TODO") for env in load_path() env=E2=80=B2 =3D env # look for the toplevel pkg `pkg.name` in this entry @@ -418,9 +420,18 @@ end end else + println("locate_package_env: pkg =3D ", pkg) + println("locate_package_env: START LOOP; over load_path() =3D ", l= oad_path()) + #println("locate_package_env: number of loop", length(load_path)) + loop =3D 1 for env in load_path() + println("locate_package_env: loop =3D ", loop) + println("locate_package_env: env =3D ", env) env=E2=80=B2 =3D env + println("locate_package_env: Call manifest_uuid_path( ", env, = " , ", pkg, " )") path =3D manifest_uuid_path(env, pkg) + println("locate_package_env: Post path =3D manifest_uuid_path= ( ", env, " , ", pkg, " )") + println("locate_package_env: path =3D ", path) # missing is used as a sentinel to stop looking further down i= n envs if path =3D=3D=3D missing path =3D nothing @@ -431,14 +442,27 @@ @goto done end if !(loading_extension || precompiling_extension) + stopenv =3D=3D env && println("locate_package_env: BREAK: = ", stopenv, " =3D=3D ", env) + stopenv =3D=3D env && println("locate_package_env: : = loading_extension =3D ", loading_extension) + stopenv =3D=3D env && println("locate_package_env: : = precompiling_extension =3D ", precompiling_extension) stopenv =3D=3D env && break end + loop =3D loop + 1 end + println("locate_package_env: END LOOP; No more env") # Allow loading of stdlibs if the name/uuid are given # e.g. if they have been explicitly added to the project/manifest + println("locate_package_env: pkg =3D ", pkg) + println("locate_package_env: Sys.STDLIB =3D ", Sys.STDLIB) + println("locate_package_env: Call manifest_uuid_path( ", Sys.STDLI= B, " , ", pkg, " )") mbypath =3D manifest_uuid_path(Sys.STDLIB, pkg) + println("locate_package_env: Post mbypath =3D manifest_uuid_path( = ", Sys.STDLIB, " , ", pkg, " )") + println("locate_package_env: mbypath =3D ", mbypath, " String? ", = mbypath isa String) if mbypath isa String + println("locate_package_env: Call entry_path( ", mbypath, " , = ", pkg.name, " )") path =3D entry_path(mbypath, pkg.name) + println("locate_package_env: Post path =3D entry_path( ", mbyp= ath, " , ", pkg.name, " )") + println("locate_package_env: path =3D ", path) @goto done end end @@ -446,6 +470,7 @@ if cache !=3D=3D nothing cache.located[(pkg, stopenv)] =3D path, env=E2=80=B2 end + println("locate_package_env: RETURN: path =3D ", path, " ; env =3D ", = env=E2=80=B2) return path, env=E2=80=B2 end =20 @@ -464,7 +489,11 @@ ``` """ function locate_package(pkg::PkgId, stopenv::Union{String, Nothing}=3Dnoth= ing)::Union{Nothing,String} - _nothing_or_first(locate_package_env(pkg, stopenv)) + println("locate_package: ARGS: ", pkg, " , ", stopenv) + println("locate_package: Call locate_package_env(", pkg, " , ", stopen= v, " )") + ret =3D _nothing_or_first(locate_package_env(pkg, stopenv)) + println("locate_package: RETURN: ", ret) + return ret end =20 """ @@ -581,9 +610,14 @@ # - `path`: the path of an explicit project file function env_project_file(env::String)::Union{Bool,String} @lock require_lock begin + println("env_project_file: ARGS: ", env) cache =3D LOADING_CACHE[] if cache !=3D=3D nothing + println("env_project_file: cache =3D ", cache) + println("env_project_file: cache.env_project_file =3D ", cache.env= _project_file) project_file =3D get(cache.env_project_file, env, nothing) + println("env_project_file: project_file =3D ", project_file) + project_file =3D=3D=3D nothing || println("env_project_file: RETUR= N: ", project_file) project_file =3D=3D=3D nothing || return project_file end if isdir(env) @@ -596,6 +630,7 @@ if cache !=3D=3D nothing cache.env_project_file[env] =3D project_file end + println("env_project_file: RETURN: ", project_file) return project_file end end @@ -651,20 +686,31 @@ end =20 function manifest_uuid_path(env::String, pkg::PkgId)::Union{Nothing,String= ,Missing} + println("manifest_uuid_path: ARGS: ", env, " , ", pkg) + println("manifest_uuid_path: Call env_project_file( ", env, " )") project_file =3D env_project_file(env) + println("manifest_uuid_path: Post project_file =3D env_project_file( "= , env, " )") + println("manifest_uuid_path: project_file =3D ", project_file, " Strin= g? ", project_file isa String) if project_file isa String proj =3D project_file_name_uuid(project_file, pkg.name) if proj =3D=3D pkg # if `pkg` matches the project, return the project itself - return project_file_path(project_file) + ret =3D project_file_path(project_file) + println("manifest_uuid_path: RETURN: (1) ", ret) + return end mby_ext =3D project_file_ext_path(project_file, pkg.name) + mby_ext =3D=3D=3D nothing || println("manifest_uuid_path: RETURN: = (2) ", mby_ext) mby_ext =3D=3D=3D nothing || return mby_ext # look for manifest file and `where` stanza - return explicit_manifest_uuid_path(project_file, pkg) + ret =3D explicit_manifest_uuid_path(project_file, pkg) + println("manifest_uuid_path: RETURN: (3) ", ret) + return ret elseif project_file # if env names a directory, search it - return implicit_manifest_uuid_path(env, pkg) + ret =3D implicit_manifest_uuid_path(env, pkg) + println("manifest_uuid_path: RETURN: (4) ", ret) + return ret end return nothing end @@ -1758,6 +1804,7 @@ =20 # Returns `nothing` or the new(ish) module function _require(pkg::PkgId, env=3Dnothing) + println("_require: ARGS: ", pkg, " , ", env) assert_havelock(require_lock) # handle recursive calls to require loading =3D get(package_locks, pkg, false) @@ -1772,7 +1819,10 @@ try toplevel_load[] =3D false # perform the search operation to select the module file require i= ntends to load + println("ENTRY _require: Call locate_package( ", pkg, " , ", env, = " )") path =3D locate_package(pkg, env) + println("_require: Post locate_package( ", pkg, " , ", env, " )") + println("RESULT _require: path =3D ", path) if path =3D=3D=3D nothing throw(ArgumentError(""" Package $pkg is required but does not seem to be installed: --=-=-=--
guix-patches@HIDDEN
:bug#73197
; Package guix-patches
.
Full text available.Received: (at 73197) by debbugs.gnu.org; 13 Jan 2025 18:31:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 13 13:31:31 2025 Received: from localhost ([127.0.0.1]:52834 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tXPDm-0004ER-OB for submit <at> debbugs.gnu.org; Mon, 13 Jan 2025 13:31:31 -0500 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]:52477) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <zimon.toutoune@HIDDEN>) id 1tXPDi-0004E9-Jc for 73197 <at> debbugs.gnu.org; Mon, 13 Jan 2025 13:31:27 -0500 Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-4363ae65100so48860745e9.0 for <73197 <at> debbugs.gnu.org>; Mon, 13 Jan 2025 10:31:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1736793080; x=1737397880; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id :reply-to; bh=AWmpX5oog6Im/ywgdyZtx5GztcbY/1j/EWwXyWBq9dM=; b=C4dqRrhlONwtlahzfjLbKl25oesGlom8e6MHKrH8JCUJ8flOInrvXwK2iK/u6tyUWA oPrBSgYIZmNsPsF0GteKPR5SmVXx8lM+Y5FHDkEFvlNPvv1dg6wb79KGLbHpxvDR1wFF DhpPIpcJBQMoWcQUTuBe8wr3ICSdRrhZMwc6xJw5c1bXQoxaZM3p59spHFDi6LTP8zN2 5Pq+22V+GE1m+hxkIYeiQYUu7iYiBpmazVyVofCuceHZAVIGvOYWAc2P5BTQ3eEYOSgR aejWjmtRLWZAUc0xmS4c1dAo/MkZttr8S9e+Sd4sQFjRDVqCUoyRiWkBW+FnSTPpj3js 3JiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736793080; x=1737397880; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AWmpX5oog6Im/ywgdyZtx5GztcbY/1j/EWwXyWBq9dM=; b=D1sAI3OWcCDg2S2ecXomvZPhdkkTRHKN1giSqRKbZQ0CDVDlb5EoxYS6sC2sZXNaRI VZR+B98SWqtjTI+0hSi59QNznKdfYLS6AygKaxBlkeDMjwf9cPlAkehD0MdQLbLAYXPN Mhvyg761oWOANJg2sR6PEwUT27TKtTwv16ExRhWSqzNeMPOYxrySFZLQkZrLfinEhA8J WaOiGrJKHBpkYoFdSGQPMt+mKtNw47s6mqf+KYttebgWQ2nR2ZCuC3z7QDT19ReO2LCm CQ4xr0OjyOMIAXTgpKcqpmmQCFroRFD1+ou92AmIXANPd+cyCUWbIUQ04DhCmKyGdZyj I4VA== X-Gm-Message-State: AOJu0YwVogD9Neta01ToCxSNJ+2o31G1lMJ3eolHab5ocx8SYU1e2tct F2Ysgep5Lu75tAtuuq3F/DqtycxrLTvqqYvnrk72Ytft3N8c1dWY X-Gm-Gg: ASbGncs1dIiK+xPwY24ZQhcLcm5Df8Nv8UWImkgQUl3Juh1XaJRp0eU/HPz23x11SH0 uhnpmHMcUL2JAem9ArcUlEEuXMJXuKfqF7A2AufzlMmEwDTqP8pDuVAFqsxq3iICo58jq9ZcTM5 MnB8/S6TDshylzVU6QFOBVI8JxKcwzJy1tcw9KcR9Fc28ufC3bMAJcWz+XeJFjAYLVwKnx95K6J DS+a9uQz9DNTE1rzH8KSVJmoiMXAD7VDrK87ASejL9cZI2KugfCkqRU X-Google-Smtp-Source: AGHT+IEtx0W/vhqR/Pri/JUAzwi6VgTh0HhG7DDs2aL5MQb6dYPmX2229gwQziReqyv/8MJjHw64FQ== X-Received: by 2002:a05:600c:1e02:b0:434:f131:1e71 with SMTP id 5b1f17b1804b1-436f04e048cmr122860005e9.8.1736793079704; Mon, 13 Jan 2025 10:31:19 -0800 (PST) Received: from pfiuh07 ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-436e9dc895esm149707805e9.13.2025.01.13.10.31.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 13 Jan 2025 10:31:19 -0800 (PST) From: Simon Tournier <zimon.toutoune@HIDDEN> To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludovic.courtes@HIDDEN> Subject: Re: [bug#73197] [PATCH] gnu: julia: Update to 1.9.3. In-Reply-To: <87cygxvb47.fsf@HIDDEN> References: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> <ZufjPjnj4aZbjxiV@3900XT> <87ed5k7wx5.fsf@HIDDEN> <87a5g2tkbe.fsf@HIDDEN> <Zu_GE2mleWP15xOO@3900XT> <87frlw3q3o.fsf@HIDDEN> <87cygxvb47.fsf@HIDDEN> Date: Mon, 13 Jan 2025 19:31:16 +0100 Message-ID: <87bjwa4lcb.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 73197 Cc: 73197 <at> debbugs.gnu.org, Efraim Flashner <efraim@HIDDEN>, Philippe Virouleau <philippe.virouleau@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Hi Ludo, On Wed, 08 Jan 2025 at 11:44, Ludovic Court=C3=A8s <ludovic.courtes@HIDDEN= r> wrote: > This branch is built already: > <https://ci.guix.gnu.org/jobset/julia-upgrade>. Thanks, cool! >>> The problem is that the julia-build-system needs to be adapted to the >>> newer versions of Julia. > > To be clear, the build failures here have to do with JULIA_LOAD_PATH or > JULIA_DEPOT_PATH somehow not being set to the right value. (That=E2=80= =99s why > roughly packages with no dependency other than Julia build fine, while > those that depend on other julia-* packages fails to build.) It appears to me more complicated than only JULIA_LOAD_PATH and/or JULIA_DEPOT_PATH. When I sent the email, I also was thinking something in this area. Then it took me some time to understand what=E2=80=99s wrong= . :-) For the record, it=E2=80=99s about base/loading.jl: --8<---------------cut here---------------start------------->8--- try toplevel_load[] =3D false # perform the search operation to select the module file require i= ntends to load - path =3D locate_package(pkg) + path =3D locate_package(pkg, env) if path =3D=3D=3D nothing throw(ArgumentError(""" Package $pkg is required but does not seem to be installed: --8<---------------cut here---------------end--------------->8--- My debugging session if someone has a good fix for that. :-) Well, I instructed the =E2=80=99precompile=E2=80=99 phase of the julia-build-system= in order to better see; here the trace: --8<---------------cut here---------------start------------->8--- starting phase `precompile' (init)JULIA_DEPOT_PATH: "/gnu/store/acvkqdyipdrsa5jrzb185ch37iyliw13-julia-= 1.9.3/share/julia/:/gnu/store/iiykv7r9ckygxlz0qb9aag5zv317ffz9-julia-constr= uctionbase-1.3.0/share/julia/" (init)JULIA_LOAD_PATH: "/gnu/store/iiykv7r9ckygxlz0qb9aag5zv317ffz9-julia-c= onstructionbase-1.3.0/share/julia/loadpath/" JULIA_DEPOT_PATH: "/gnu/store/acvkqdyipdrsa5jrzb185ch37iyliw13-julia-1.9.3/= share/julia/:/gnu/store/iiykv7r9ckygxlz0qb9aag5zv317ffz9-julia-construction= base-1.3.0/share/julia/:/gnu/store/p6iq6pkc04lj8c43n5a2s058s3ng6rkc-julia-u= nitful-1.12.2/share/julia/" JULIA_LOAD_PATH: "/gnu/store/p6iq6pkc04lj8c43n5a2s058s3ng6rkc-julia-unitful= -1.12.2/share/julia/loadpath/:/gnu/store/iiykv7r9ckygxlz0qb9aag5zv317ffz9-j= ulia-constructionbase-1.3.0/share/julia/loadpath/" (before)DEPOT_PATH: ["/homeless-shelter/.julia", "/gnu/store/acvkqdyipdrsa5= jrzb185ch37iyliw13-julia-1.9.3/local/share/julia", "/gnu/store/acvkqdyipdrs= a5jrzb185ch37iyliw13-julia-1.9.3/share/julia", "/gnu/store/acvkqdyipdrsa5jr= zb185ch37iyliw13-julia-1.9.3/share/julia/", "/gnu/store/iiykv7r9ckygxlz0qb9= aag5zv317ffz9-julia-constructionbase-1.3.0/share/julia/", "/gnu/store/p6iq6= pkc04lj8c43n5a2s058s3ng6rkc-julia-unitful-1.12.2/share/julia/"] (before)LOAD_PATH: ["@", "@v#.#", "@stdlib", "/gnu/store/p6iq6pkc04lj8c43n5= a2s058s3ng6rkc-julia-unitful-1.12.2/share/julia/loadpath/", "/gnu/store/iiy= kv7r9ckygxlz0qb9aag5zv317ffz9-julia-constructionbase-1.3.0/share/julia/load= path/"] IDENTIFY_PACKAGE_ENV: (ConstructionBase [187b0558-2788-49d3-abe0-74a17ed4e7= c9], "/gnu/store/iiykv7r9ckygxlz0qb9aag5zv317ffz9-julia-constructionbase-1.= 3.0/share/julia/loadpath/") LOCATE_PACKAGE: /gnu/store/iiykv7r9ckygxlz0qb9aag5zv317ffz9-julia-construct= ionbase-1.3.0/share/julia/loadpath/ConstructionBase/src/ConstructionBase.jl DEPOT_PATH: ["/gnu/store/p6iq6pkc04lj8c43n5a2s058s3ng6rkc-julia-unitful-1.1= 2.2/share/julia/", "/homeless-shelter/.julia", "/gnu/store/acvkqdyipdrsa5jr= zb185ch37iyliw13-julia-1.9.3/local/share/julia", "/gnu/store/acvkqdyipdrsa5= jrzb185ch37iyliw13-julia-1.9.3/share/julia", "/gnu/store/acvkqdyipdrsa5jrzb= 185ch37iyliw13-julia-1.9.3/share/julia/", "/gnu/store/iiykv7r9ckygxlz0qb9aa= g5zv317ffz9-julia-constructionbase-1.3.0/share/julia/"] LOAD_PATH: ["/gnu/store/p6iq6pkc04lj8c43n5a2s058s3ng6rkc-julia-unitful-1.12= .2/share/julia/environments/v1.9/Project.toml", "/gnu/store/acvkqdyipdrsa5j= rzb185ch37iyliw13-julia-1.9.3/share/julia/stdlib/v1.9", "/gnu/store/p6iq6pk= c04lj8c43n5a2s058s3ng6rkc-julia-unitful-1.12.2/share/julia/loadpath/", "/gn= u/store/iiykv7r9ckygxlz0qb9aag5zv317ffz9-julia-constructionbase-1.3.0/share= /julia/loadpath/"] PKG: Unitful [1986cc42-f94f-5a68-af5c-568840ba703d] ENV: /gnu/store/p6iq6pkc04lj8c43n5a2s058s3ng6rkc-julia-unitful-1.12.2/share= /julia/loadpath/ PATH: /gnu/store/p6iq6pkc04lj8c43n5a2s058s3ng6rkc-julia-unitful-1.12.2/shar= e/julia/loadpath/Unitful/src/Unitful.jl PKG: ConstructionBase [187b0558-2788-49d3-abe0-74a17ed4e7c9] ENV: /gnu/store/p6iq6pkc04lj8c43n5a2s058s3ng6rkc-julia-unitful-1.12.2/share= /julia/loadpath/ PATH: nothing ERROR: LoadError: ArgumentError: Package ConstructionBase [187b0558-2788-49= d3-abe0-74a17ed4e7c9] is required but does not seem to be installed: - Run `Pkg.instantiate()` to install all recorded dependencies. --8<---------------cut here---------------end--------------->8--- Indeed, it cannot find =E2=80=99ConstructionBase=E2=80=99 under the =E2=80= =9Cenvironment=E2=80=9D of =E2=80=99Unitful=E2=80=99 although it clearly appears both via LOAD_PATH (JULIA_LOAD_PATH) and DEPOT_PATH (JULIA_DEPOT_PATH). Well, Julia package management is designed to have one central place (usually ~/.julia), arf! I will try to be creative if no one beats me. :-) To be continued=E2=80=A6 Cheers, simon
guix-patches@HIDDEN
:bug#73197
; Package guix-patches
.
Full text available.Received: (at 73197) by debbugs.gnu.org; 8 Jan 2025 10:44:25 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jan 08 05:44:25 2025 Received: from localhost ([127.0.0.1]:46103 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tVTY0-0003jz-LC for submit <at> debbugs.gnu.org; Wed, 08 Jan 2025 05:44:24 -0500 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:14623) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <ludovic.courtes@HIDDEN>) id 1tVTXx-0003jh-HV for 73197 <at> debbugs.gnu.org; Wed, 08 Jan 2025 05:44:23 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=inria.fr; s=dc; h=from:to:cc:subject:in-reply-to:references:date: message-id:mime-version:content-transfer-encoding; bh=hjzZrcJr299HdEmhTwsVs8EOIjwxaPhC5AkPQnVkjFI=; b=mJSB+/2hNXfL2inGAps8baorbCryOMddIAn727yK8zxvz3MxPr4E1bhg HVuoQLYvxgbgR/NTNOukWRY+tlhBbyTpZpkl4zKs7JB+f1pVqlb2ue3YV JsQ6NNpd4KK3DSDu9XcznRm6Y5la++9s6mTcXo29+NKkU3h69H+w9BijZ g=; Authentication-Results: mail2-relais-roc.national.inria.fr; dkim=none (message not signed) header.i=none; spf=SoftFail smtp.mailfrom=ludovic.courtes@HIDDEN; dmarc=fail (p=none dis=none) d=inria.fr X-IronPort-AV: E=Sophos;i="6.12,298,1728943200"; d="scan'208";a="202018472" Received: from 91-160-117-201.subs.proxad.net (HELO ribbon) ([91.160.117.201]) by mail2-relais-roc.national.inria.fr with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jan 2025 11:44:14 +0100 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludovic.courtes@HIDDEN> To: Simon Tournier <zimon.toutoune@HIDDEN> Subject: Re: [bug#73197] [PATCH] gnu: julia: Update to 1.9.3. In-Reply-To: <87frlw3q3o.fsf@HIDDEN> (Simon Tournier's message of "Mon, 06 Jan 2025 16:43:23 +0100") References: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> <ZufjPjnj4aZbjxiV@3900XT> <87ed5k7wx5.fsf@HIDDEN> <87a5g2tkbe.fsf@HIDDEN> <Zu_GE2mleWP15xOO@3900XT> <87frlw3q3o.fsf@HIDDEN> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: Nonidi 19 =?utf-8?Q?Niv=C3=B4se?= an 233 de la =?utf-8?Q?R=C3=A9volution=2C?= jour du Marbre X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Wed, 08 Jan 2025 11:44:08 +0100 Message-ID: <87cygxvb47.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 73197 Cc: 73197 <at> debbugs.gnu.org, Efraim Flashner <efraim@HIDDEN>, Philippe Virouleau <philippe.virouleau@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) Hello, Simon Tournier <zimon.toutoune@HIDDEN> skribis: > I am resuming this patch. And I would like to have it merge before the > end of this month. In other words, I would like to mention this update > in the Guix HPC annual report. Excellent. :-) > Could we have a julia-team branch and that branch built by CI? It would > help by saving some resources. This branch is built already: <https://ci.guix.gnu.org/jobset/julia-upgrade>. > From my numbers, ~230 Julia packages fail. Over ~300 packages. [...] >> The problem is that the julia-build-system needs to be adapted to the >> newer versions of Julia. To be clear, the build failures here have to do with JULIA_LOAD_PATH or JULIA_DEPOT_PATH somehow not being set to the right value. (That=E2=80=99s= why roughly packages with no dependency other than Julia build fine, while those that depend on other julia-* packages fails to build.) I=E2=80=99ve rebased the branch and added debugging helpers I was using. Protip: when fiddling with the =E2=80=98julia=E2=80=99 package, use =E2=80=98--without-tests=3Djulia=E2=80=99. :-) HTH! Ludo=E2=80=99.
guix-patches@HIDDEN
:bug#73197
; Package guix-patches
.
Full text available.Received: (at 73197) by debbugs.gnu.org; 6 Jan 2025 15:44:32 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 06 10:44:31 2025 Received: from localhost ([127.0.0.1]:39720 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tUpHL-0003MF-F6 for submit <at> debbugs.gnu.org; Mon, 06 Jan 2025 10:44:31 -0500 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]:61678) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <zimon.toutoune@HIDDEN>) id 1tUpHJ-0003M2-5X for 73197 <at> debbugs.gnu.org; Mon, 06 Jan 2025 10:44:30 -0500 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-43675b1155bso137893325e9.2 for <73197 <at> debbugs.gnu.org>; Mon, 06 Jan 2025 07:44:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1736178268; x=1736783068; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id :reply-to; bh=GAomBWfHGH/E2jG+DOhTv1GbO8C61QUu33KPXLerHzM=; b=GP8tidYozIzIebZQPGY0EY70sv4/M2yEH/ATTVgm97JV0a7Djf9RXvKQqZbyP3D9RS P1xcVzaDhxR4taV9Fb1nNSGuPxwXw9TvxIib7NRWMxpjrTrJQ6tZzczWjlub18jaGlZb Sx3IZbuehM1i3WTjbPozpC9SOFPqOP20v9v/GkQly3fGwVVVj0CvxYRnm4p195rosiym NAsioKbvTCBG1tqIIHl/c7IjcCZO6hXly0hdpCOaJB7glWUrutNyGe6NvDMsC2k3eyCi FhrZzfuYeESnATbeKLJvJkO/SW3FnbtCnLee3gztSlTx90o+qXIwfTV3zbF1LWDDi6f3 aquw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736178268; x=1736783068; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=GAomBWfHGH/E2jG+DOhTv1GbO8C61QUu33KPXLerHzM=; b=qRkY/wq6pdmrDWlONAR2MfkGYFicqgq56PMLoiDO9qpE8impeQeem+fafT2CTENcgL 2ZA9lQVlmjVf2jV5Bs5rp0TjIKwXHRRdhIK8YzHSSqoOteoZH4F9UpKcnaAKo2rejb0S FXM7pRN1Eqk/cj2QkQiNxtbYP3blZHADGQKwjQn3cruOtKlylMBSY10PrwSAiYoCSNrH TigG9Uq7R7agNIlRNsy+3RqTSc1JgWK/0bn+KtXUUp8UI+/J/4yBfIHNO0464ZcQ3+9A dUQh/Uqzoao8uyIYQ6f9WbUONY6q7rJJ6bnKaFuX06iYHzKvhjGb91JhJsuEJwF8v4MT /I/A== X-Gm-Message-State: AOJu0YyS/THh+8yXZHBr/nkp0zA5Sd9UtHIc0uBFgAFopmGCp0Qeelam TR4N936+FBBOKds70azL3BON1b2aLFoZW4gajT6LoJeG5NYAa4ql X-Gm-Gg: ASbGncsIYJx8REa9x6FkZgeqN2zv35CHJ0zcGL4KJcVoTEKh2PSrqlfuLeKY7SA3hvT B6RYZYHQZEDkrCCUAzVjAUertdaB5cDUvgfo9h8PTxlUWIWdT6xc0djlFC22yyZgK2HofX0kb9j 7NOtYb0yZgcwb3LgocfC10T9B38paBGdWh+kLl/MJQTHAVAU7khUlWfo1GmwKTVR22rWlictBfG hJK3yRlxuOa96SrJvqRr7MAoBfyTMCx0Vh9nY9AwgT+wnlKdnXvB88c X-Google-Smtp-Source: AGHT+IEvpOR/s1Kx3YuAGM4KFF6SFwNgK2IVVn25+yAyzTbi84qaqGr3CAd80kcvbfoEm+aiuwrnzg== X-Received: by 2002:a05:600c:154a:b0:434:fd15:3adc with SMTP id 5b1f17b1804b1-43668b786bamr442297455e9.25.1736178267598; Mon, 06 Jan 2025 07:44:27 -0800 (PST) Received: from pfiuh07 ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4366127c488sm571090085e9.27.2025.01.06.07.44.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Jan 2025 07:44:27 -0800 (PST) From: Simon Tournier <zimon.toutoune@HIDDEN> To: Efraim Flashner <efraim@HIDDEN> Subject: Re: [bug#73197] [PATCH] gnu: julia: Update to 1.9.3. In-Reply-To: <Zu_GE2mleWP15xOO@3900XT> References: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> <ZufjPjnj4aZbjxiV@3900XT> <87ed5k7wx5.fsf@HIDDEN> <87a5g2tkbe.fsf@HIDDEN> <Zu_GE2mleWP15xOO@3900XT> Date: Mon, 06 Jan 2025 16:43:23 +0100 Message-ID: <87frlw3q3o.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 73197 Cc: 73197 <at> debbugs.gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, Philippe Virouleau <philippe.virouleau@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Hi, I am resuming this patch. And I would like to have it merge before the end of this month. In other words, I would like to mention this update in the Guix HPC annual report. On Sun, 22 Sep 2024 at 10:24, Efraim Flashner <efraim@HIDDEN> wrote: >> > Let me take a look at those failure to see how bad it is. Could we have a julia-team branch and that branch built by CI? It would help by saving some resources. From my numbers, ~230 Julia packages fail. Over ~300 packages. >> I would suggest to have julia-next. [...] >> Users willing stable just install =E2=80=99julia=E2=80=99 and =E2=80=99j= ulia-=E2=80=99 packages. >> Adventurous users install =E2=80=99julia-next=E2=80=99 and =E2=80=99juli= a-*-next=E2=80=99. > The problem is that the julia-build-system needs to be adapted to the > newer versions of Julia. Yes, you have the same with all *-next =E2=80=9Ccompilers=E2=80=9D applied = to their packages: emacs-next, ghc-next, guile-next or python-next. Somehow, there is no guarantee that the python-build-system works equally for both python and python-next, and there is no guarantee neither that python-* packages build with python-next as Python =E2=80=9Ccompiler=E2=80= =9D. Somehow, there is the stable and the adventurous. :-) Well, let keep that aside and let rediscuss it again for Julia 1.10 or 1.11 and let focus on making Julia 1.9.3 the default. Please note that we already have a Julia package that=E2=80=99s half packag= ed: julia-precompiletools. The test suite fails because the julia-build-system has not been adapted yet. :-) Cheers, simon
guix-patches@HIDDEN
:bug#73197
; Package guix-patches
.
Full text available.Received: (at 73197) by debbugs.gnu.org; 22 Sep 2024 07:25:36 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 22 03:25:36 2024 Received: from localhost ([127.0.0.1]:40775 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ssGyO-0008De-92 for submit <at> debbugs.gnu.org; Sun, 22 Sep 2024 03:25:36 -0400 Received: from mail-wm1-f48.google.com ([209.85.128.48]:57789) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <efraim.flashner@HIDDEN>) id 1ssGyL-00088Q-P8 for 73197 <at> debbugs.gnu.org; Sun, 22 Sep 2024 03:25:34 -0400 Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-42e5e1e6d37so32550185e9.3 for <73197 <at> debbugs.gnu.org>; Sun, 22 Sep 2024 00:25:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726989846; x=1727594646; darn=debbugs.gnu.org; h=in-reply-to:content-disposition:mime-version:references :mail-followup-to:message-id:subject:cc:to:from:date:sender:from:to :cc:subject:date:message-id:reply-to; bh=9qHbfqgTICcRjvNzoZhXlxjr7dshN8sS1AXxF+vWcwo=; b=fwUMe5t8cwocJfavZHoo9Qgq1lsiOLuLw8vELXVXBcqfPOAlXyvtVq44E3iNagc10O KzjRg5kVaijUmSUI8HZaQ6wGgtd+UgE/xb4SWxJ4fHhd2yiDkXYqe7DI3+VE6Wzpmacy AIbKDIQd6r3U2ly6kUV8Z59Rck3QpsRsp3AfocGgfktZavOtEJrp7YRdvlcDRr2iPRJl cKY4gZnA7P4S2HIVptoWQ1Slt97OKhoB5qu6UrzyDQziPp+0T+R9cijxCtPDZE12h19r GrVvE7icVoGRABa0xbP/dQZrFnVVHc8mkA+FtRrsSaYGNhw7+Cx+ddkn4IwuKgfsDM11 0PHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726989846; x=1727594646; h=in-reply-to:content-disposition:mime-version:references :mail-followup-to:message-id:subject:cc:to:from:date:sender :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=9qHbfqgTICcRjvNzoZhXlxjr7dshN8sS1AXxF+vWcwo=; b=TFWWtU6rU+xFCHRhC9bpoibu3agNz40/IY8y+zngxEQtEEj9opjnzdqB5M7bfYWwlj aEtuQcLPyJWeoIpcfqLMXl3ZKgod8y32posnl3Wv4gtEkW9gifaen05nNontWNb/cLXQ fxaQU1+PKjZid2NwyHMaWmy6LBTGQtt0btgCpwxEDErzFVu6mR7H02Cs8OUhHxIlnLKE n60XVEqARdv0fw14Q0XfW94QlEoQsbcgjc0uEWY822zsutkzdsoBBjLUgnr0HiUJpYNX DKvZMXCLtcW4IJwK+L0Kr/qqv6PvXIuXp8Ce0YyAt2btPiQUaiePg6vJnFrvrUt/vJrV XbhQ== X-Forwarded-Encrypted: i=1; AJvYcCWAS53AQRKnj7ED36EGW9s0OZhwgw6eitigJYiFPhbLmuu4JK6Mr7swLB/UFN1iKO3elTZtkQ==@debbugs.gnu.org X-Gm-Message-State: AOJu0YyUyG7mTXsLMpa01U4+D/J4nI9/gRt4NnroUkrkKODatj5hXmbb gb7X5/p6vMYHsuNFTDov4kBMxLfdRjGHRU/ts/vcWYvR3kJw825a X-Google-Smtp-Source: AGHT+IGjsFQL6oxpDwDx8g3wxiZvmJQF2W0ePnSB6f2p0GKu++AfomVRKLZVG58yAaNKxQEgTUYHew== X-Received: by 2002:a05:600c:1c01:b0:42c:b9c8:2bb0 with SMTP id 5b1f17b1804b1-42e7c159c17mr49548025e9.4.1726989845852; Sun, 22 Sep 2024 00:24:05 -0700 (PDT) Received: from localhost ([141.226.162.35]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-42e754c643csm93730925e9.45.2024.09.22.00.24.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 22 Sep 2024 00:24:04 -0700 (PDT) Date: Sun, 22 Sep 2024 10:24:03 +0300 From: Efraim Flashner <efraim@HIDDEN> To: Simon Tournier <zimon.toutoune@HIDDEN> Subject: Re: [bug#73197] [PATCH] gnu: julia: Update to 1.9.3. Message-ID: <Zu_GE2mleWP15xOO@3900XT> Mail-Followup-To: Efraim Flashner <efraim@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN>, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, 73197 <at> debbugs.gnu.org, Philippe Virouleau <philippe.virouleau@HIDDEN> References: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> <ZufjPjnj4aZbjxiV@3900XT> <87ed5k7wx5.fsf@HIDDEN> <87a5g2tkbe.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="oGqg2jESDE9FkaA8" Content-Disposition: inline In-Reply-To: <87a5g2tkbe.fsf@HIDDEN> X-PGP-Key-ID: 0x41AAE7DCCA3D8351 X-PGP-Key: https://flashner.co.il/~efraim/efraim_flashner.asc X-PGP-Fingerprint: A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 X-Spam-Score: 0.2 (/) X-Debbugs-Envelope-To: 73197 Cc: 73197 <at> debbugs.gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, Philippe Virouleau <philippe.virouleau@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.8 (/) --oGqg2jESDE9FkaA8 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Sep 20, 2024 at 05:29:41PM +0200, Simon Tournier wrote: > Hi Ludo, >=20 > On lun., 16 sept. 2024 at 11:47, Ludovic Court=C3=A8s <ludo@HIDDEN> wrot= e: >=20 > > I would hope we can migrate straight to 1.9, but if that=E2=80=99s too = tricky, I > > agree we should follow the plan you describe. > > > > Let me take a look at those failure to see how bad it is. >=20 > I would suggest to have julia-next. >=20 > And some =E2=80=99package-with-julia=E2=80=99 transformation similar as > package-with-python or package-with-ocaml. >=20 > Somehow, that=E2=80=99s always painful to upgrade Julia because of the Ju= lia > world rebuild and some (more than some?) package breakages. >=20 > That way it would easier to have the CI following the branch team-julia > where regular package would go, as well as julia-next upgrade. And the > manifest could build both set of packages (julia and julia-next) using > the transformation. >=20 > Users willing stable just install =E2=80=99julia=E2=80=99 and =E2=80=99ju= lia-=E2=80=99 packages. > Adventurous users install =E2=80=99julia-next=E2=80=99 and =E2=80=99julia= -*-next=E2=80=99. >=20 > WDYT? The problem is that the julia-build-system needs to be adapted to the newer versions of Julia. IMO the benefit of having Julia and Julia-next is that the julia-* packages are packaged, but those needing a newer version of Julia can still get it from Guix. Then when we adapt the julia-build-system we can deprecate julia-next, or have it point to the next release. --=20 Efraim Flashner <efraim@HIDDEN> =D7=A8=D7=A0=D7=A9=D7=9C=D7=A4 = =D7=9D=D7=99=D7=A8=D7=A4=D7=90 GPG key =3D A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted --oGqg2jESDE9FkaA8 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAmbvxg8ACgkQQarn3Mo9 g1FfbRAAkAFeZXujUPsuzrX4nT5GuBvupX+VXjyfkEX7GFQMAa8cYFmFepzISYkz asN8hucYvBeqpqQAq99BCpwN0BCZ7japoaZg8Qtf6PS11VYOTrhzWKTqnUyIhG7d tixTPu66sg4tDhoUMxhWvzC8JIP7jux0IPAMl9ffE0cnmCkUrEiRacY96YCoVIgH m5I8UU5O+8yybfAIcT03T1tQJIP7MqlabEjQ3+9pTpOdFeiyXGoRGfXGwy14EmMo w0UaFgUhCdjaT4r8mw1w7/Yr4tyulxz35M45jt+uNbojta83/YyNBaKIQBmhQOby xdCNgooqdSgqpQXbdEGqz9CJ6j0HAM11WaiGEJKRKT/T4RSYfUp2Uuluy1mUxFAo bM7QIbzp6FQbjsZofcuEZorXcnDsZETV0ab085zmpjPM4qW1fyjKpL81qgleClMd tKLS56Qt4pUThLwggwzXVfCTwvEJ7lHWPfwigw0tbP96r8iEojss54wQxjnKPTM6 CrPDYi2jwtanwbPH5uARra5tbXvQr9e42ill0TF6P4yPfVcf4wDETin6xlsR8ieG 9aGWQ2ryJdw+oQCP7ySn5yTLigDTiQvplp2eooTtie4sz62BX2Hd3hrst7PusNBX Vg0k3D6EjLQtWkB56/pJkXXbBIE9M3PMEYyta6hF/Z14Nzbe+gU= =OmET -----END PGP SIGNATURE----- --oGqg2jESDE9FkaA8--
guix-patches@HIDDEN
:bug#73197
; Package guix-patches
.
Full text available.Received: (at 73197) by debbugs.gnu.org; 20 Sep 2024 16:11:44 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Sep 20 12:11:43 2024 Received: from localhost ([127.0.0.1]:36148 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1srgER-000414-GS for submit <at> debbugs.gnu.org; Fri, 20 Sep 2024 12:11:43 -0400 Received: from mail-wm1-f44.google.com ([209.85.128.44]:47205) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <zimon.toutoune@HIDDEN>) id 1srgEE-0003zY-Tp for 73197 <at> debbugs.gnu.org; Fri, 20 Sep 2024 12:11:31 -0400 Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-42cc8782869so19827555e9.2 for <73197 <at> debbugs.gnu.org>; Fri, 20 Sep 2024 09:11:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726848606; x=1727453406; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id :reply-to; bh=vJDj0x2MjrCCgPQD6GZhJo9jxx2TMb7MgHsGmg7EEGQ=; b=LZf3Avo70F9YAjxkxBWArMe58KeQ57tmHmCMFrez4WQdEfpO9abGcGZ1MBLA/+Dgqe +YLk+TOIBOdo3kHCVtVIhr8lNttwzo/WX408JwEdU/1HKgxEv7uFTKJ6N6BbujsdlW3X 9mIZXlwmoe5quujWsr7InXExmDTtBIXrGYOUpOIbcTXHgx6CaxkMQw0g9sMqFVYEw0BR 8KjFAzQJx1rbkMlc3bnVDxqTpWme07kU04O/QatM3gLF5XysKn1SRCqPtuonlmgzyaov YIcBIHpe1M6rSHIWD6mzMQSBTHgCBB+2/eoqWp48qtdIK+syjxk3aJfUzel1dKIphc5f eIhQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726848606; x=1727453406; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=vJDj0x2MjrCCgPQD6GZhJo9jxx2TMb7MgHsGmg7EEGQ=; b=EqiVf0GalOEnlPc55viC6nis8ANB17P5piFlxWf1DUFsmFaSm9v8hdFgoBHMQMSwRN ualPbVyXuWqw2cNWTshjeE+3d2P28k3b1G9xh3R1x3Ur2+fr7AaOT5YvQxe2vOg3sLdf D09aVJMcqxCB/1psVkWUcFpxs4XOtWo6tcKaF/5AZ11Ndi9mwMzWYpQKhVjHN0C314VK mQlofQ1Oa+0KmmGefhRR8/chHC8OVv/YKUL+6XkpfsYAdBlVKeC9x59O6t8hhRIvER1s YOIsUv2LWxhDaZCnrYX9wKRyyP0WvL6wXn4IODf3Saa1VzUU0N/mmH6UbIeapktYru5a SIiw== X-Gm-Message-State: AOJu0YzbKZRMbWtdVAwK1BplpTVnrr72x9nCgbCfJmcLUSb4k8re3Ee2 8XgUS4ErjBGRBuKeOmEHVI1owvUhHUuHo8R98vMzyi0vcmDJ7FD3 X-Google-Smtp-Source: AGHT+IHGpaukBFvThKqpYLshT8X79JNefqIAQMFuOGT4FBoDFtERGA287eCPjdaOyrQgP6cUf9aTIA== X-Received: by 2002:a05:600c:3516:b0:42c:b9c7:f54b with SMTP id 5b1f17b1804b1-42e7ac32ea7mr28814155e9.16.1726848606015; Fri, 20 Sep 2024 09:10:06 -0700 (PDT) Received: from pfiuh07 ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-42e754a6d46sm55026735e9.36.2024.09.20.09.10.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Sep 2024 09:10:05 -0700 (PDT) From: Simon Tournier <zimon.toutoune@HIDDEN> To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, Efraim Flashner <efraim@HIDDEN> Subject: Re: [bug#73197] [PATCH] gnu: julia: Update to 1.9.3. In-Reply-To: <87ed5k7wx5.fsf@HIDDEN> References: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> <ZufjPjnj4aZbjxiV@3900XT> <87ed5k7wx5.fsf@HIDDEN> Date: Fri, 20 Sep 2024 17:29:41 +0200 Message-ID: <87a5g2tkbe.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 73197 Cc: 73197 <at> debbugs.gnu.org, Philippe Virouleau <philippe.virouleau@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Hi Ludo, On lun., 16 sept. 2024 at 11:47, Ludovic Court=C3=A8s <ludo@HIDDEN> wrote: > I would hope we can migrate straight to 1.9, but if that=E2=80=99s too tr= icky, I > agree we should follow the plan you describe. > > Let me take a look at those failure to see how bad it is. I would suggest to have julia-next. And some =E2=80=99package-with-julia=E2=80=99 transformation similar as package-with-python or package-with-ocaml. Somehow, that=E2=80=99s always painful to upgrade Julia because of the Julia world rebuild and some (more than some?) package breakages. That way it would easier to have the CI following the branch team-julia where regular package would go, as well as julia-next upgrade. And the manifest could build both set of packages (julia and julia-next) using the transformation. Users willing stable just install =E2=80=99julia=E2=80=99 and =E2=80=99juli= a-=E2=80=99 packages. Adventurous users install =E2=80=99julia-next=E2=80=99 and =E2=80=99julia-*= -next=E2=80=99. WDYT? Cheers, simon
guix-patches@HIDDEN
:bug#73197
; Package guix-patches
.
Full text available.Received: (at 73197) by debbugs.gnu.org; 16 Sep 2024 09:47:30 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Sep 16 05:47:30 2024 Received: from localhost ([127.0.0.1]:51133 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sq8KQ-0004Op-2B for submit <at> debbugs.gnu.org; Mon, 16 Sep 2024 05:47:30 -0400 Received: from eggs.gnu.org ([209.51.188.92]:37072) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <ludo@HIDDEN>) id 1sq8KN-0004OW-6R for 73197 <at> debbugs.gnu.org; Mon, 16 Sep 2024 05:47:28 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <ludo@HIDDEN>) id 1sq8K2-00029A-Nu; Mon, 16 Sep 2024 05:47:07 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=Ga92Z4RfufvDtmtoTdxynfYdg3vKVoIL523owd9JPnw=; b=dZJEfHzvM2BUIKXeUUMG SDdXZkyd1allLhNZi6sFkBx+VLzWDYX9/RWtH2obg3akzdopmSjvM3C2RaSpl8mGT3PazwQAM3v9o HMVYcWOaSWGElcIhS+9u4dKX4Z4LMSJUxt3Lea/IiKZqHWd+t2ZilbX7BMZjh6Q66+y7SbuLD4xVe fpZKLHpuZlAhcUMxeMpua4d6w/UxaZV255uHzbcdHfFX7UZJ7Uswld95831zrZD1wGVlYJHqYoAmf cJc22gYHnN/EjMRwwtGqcOdZb1fR75rehfltoXsOPtC6E2icIet5fDor/TGxtWEjvUqocFiID+OPH hVq5+SJU8IvQvA==; From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN> To: Efraim Flashner <efraim@HIDDEN> Subject: Re: [bug#73197] [PATCH] gnu: julia: Update to 1.9.3. In-Reply-To: <ZufjPjnj4aZbjxiV@3900XT> (Efraim Flashner's message of "Mon, 16 Sep 2024 10:50:22 +0300") References: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> <ZufjPjnj4aZbjxiV@3900XT> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: Primidi 1 jour =?utf-8?Q?compl=C3=A9mentaire?= an 232 de la =?utf-8?Q?R=C3=A9volution=2C?= jour de la Vertu X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Mon, 16 Sep 2024 11:47:02 +0200 Message-ID: <87ed5k7wx5.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73197 Cc: 73197 <at> debbugs.gnu.org, Philippe Virouleau <philippe.virouleau@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Hey Efraim, Efraim Flashner <efraim@HIDDEN> skribis: > I tested it out on my machines and it built without problems on x86_64 > and aarch64. However, I was unable to compile the julia packages we have > when there were some julia inputs. > > Do we want to add it in as julia-next, and then we can continue pushing > the version forward and working on the package build failures separately? Oh, good question. I was hoping to get some testing from ci.guix.gnu.org but it hasn=E2=80=99t happened yet (I added a jobset but apparently that didn=E2=80=99t work). I would hope we can migrate straight to 1.9, but if that=E2=80=99s too tric= ky, I agree we should follow the plan you describe. Let me take a look at those failure to see how bad it is. Thanks, Ludo=E2=80=99.
guix-patches@HIDDEN
:bug#73197
; Package guix-patches
.
Full text available.Received: (at 73197) by debbugs.gnu.org; 16 Sep 2024 07:51:46 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Sep 16 03:51:46 2024 Received: from localhost ([127.0.0.1]:51028 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sq6WP-0006bI-J3 for submit <at> debbugs.gnu.org; Mon, 16 Sep 2024 03:51:45 -0400 Received: from mail-wm1-f46.google.com ([209.85.128.46]:47452) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <efraim.flashner@HIDDEN>) id 1sq6WN-0006b4-It for 73197 <at> debbugs.gnu.org; Mon, 16 Sep 2024 03:51:44 -0400 Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-42cbb08a1a5so40625785e9.3 for <73197 <at> debbugs.gnu.org>; Mon, 16 Sep 2024 00:51:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726473025; x=1727077825; darn=debbugs.gnu.org; h=in-reply-to:content-disposition:mime-version:references :mail-followup-to:message-id:subject:cc:to:from:date:sender:from:to :cc:subject:date:message-id:reply-to; bh=HmJDZo1EVRgaZef7CAHkYsAOm0Je5CMAjvRpsHN8tN0=; b=Op08F+6LsN2U+zdbUw8DdWQJBSX4X1rFtDqaQTMSaafBe5NL42OCpci6cZb7IAlOs9 ZT8vbnkBstDj6uJ5Ghrk06Yb5Z8DOE4w4c5vFhqUhesq3wbfG8TfZHjtuDmPQuVp6aKz rzidnxQmf0AQbyGP8tLjg7DB5ccie4NtSPa/u/i5vOI7Qj5gBVHxCPa/jqr9gXZ28KdR b0pdeW1w64MvihdstlFf45OlI8lt013ar1cKyfsAV6erPunq0hZbfPD7lyr9Jto5dTRm IsM2+3muOUbV9tUh/odLIBki8/p7h836mKUJTJREb4pd1K2+yG/o/zuZPCk3TqpFX+jl +Ntg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726473025; x=1727077825; h=in-reply-to:content-disposition:mime-version:references :mail-followup-to:message-id:subject:cc:to:from:date:sender :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=HmJDZo1EVRgaZef7CAHkYsAOm0Je5CMAjvRpsHN8tN0=; b=ReYhEyE25nDMY+UTwK1jbMP54pesQhiJ8+Fdu4MbY6cfsr41BsGc3ODxP3bPtrlXd0 JktFG69348CNDEYOYOIVfSHSaquAZ/4EgOKICRRwtJRJbb6g1tLXe75lgBgmFzClViyr ea2Vc96Y2mVaKD6hVeNF01Mb+s7QGKBKkwYamXPVAwmg8+4vVVtcXtauJTlMaltyffSC Y8laG6QT0Aja7nUb9C/2oT5pibYvQk4VYVD8lq6WoQ+GjYxgFh7tGR/oOApapLqzI/RL 9OCY5t4WTR6u5WGYXSFbWjTqha+Z59r6pf+nqeuVJdM0bufQnu/c/p/+vaslqks8KXtH ZacA== X-Gm-Message-State: AOJu0YwAeCFuahaU3QtQxDLBO0jhUhE73KTzzMw9j6TEYpa2rOvXPfv2 U1+B08YDCNn4EnSijrSdSnSYFlsZuwk169uUOJL5tvIqKMlVRNss X-Google-Smtp-Source: AGHT+IEm9SpDjlsY6caZ7msWxQDWPuKa2fMnXct1kbdfbJAiW0BJIVAhgCiLT1ZuPa8hKTrnvzgLkg== X-Received: by 2002:a05:6000:12cb:b0:371:8c75:a085 with SMTP id ffacd0b85a97d-378c2d579aamr7158517f8f.58.1726473024402; Mon, 16 Sep 2024 00:50:24 -0700 (PDT) Received: from localhost ([141.226.162.35]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-42da22db2bdsm68721465e9.20.2024.09.16.00.50.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Sep 2024 00:50:23 -0700 (PDT) Date: Mon, 16 Sep 2024 10:50:22 +0300 From: Efraim Flashner <efraim@HIDDEN> To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN> Subject: Re: [bug#73197] [PATCH] gnu: julia: Update to 1.9.3. Message-ID: <ZufjPjnj4aZbjxiV@3900XT> Mail-Followup-To: Efraim Flashner <efraim@HIDDEN>, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, 73197 <at> debbugs.gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludovic.courtes@HIDDEN>, Philippe Virouleau <philippe.virouleau@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN> References: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="RDlqk/WpWgGx5knI" Content-Disposition: inline In-Reply-To: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> X-PGP-Key-ID: 0x41AAE7DCCA3D8351 X-PGP-Key: https://flashner.co.il/~efraim/efraim_flashner.asc X-PGP-Fingerprint: A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 X-Spam-Score: 0.2 (/) X-Debbugs-Envelope-To: 73197 Cc: 73197 <at> debbugs.gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludovic.courtes@HIDDEN>, Philippe Virouleau <philippe.virouleau@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.8 (/) --RDlqk/WpWgGx5knI Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Sep 12, 2024 at 03:22:50PM +0200, Ludovic Court=C3=A8s wrote: > From: Ludovic Court=C3=A8s <ludovic.courtes@HIDDEN> >=20 > * gnu/packages/julia.scm (julia): Update to 1.9.3. > [arguments]: Use gexps. > [inputs, native-inputs]: Remove labels. > * gnu/packages/llvm.scm (llvm-julia): Rename to=E2=80=A6 > (llvm-14-julia): =E2=80=A6 this. Upgrade to 14.0.6-3. > * gnu/packages/patches/julia-1.9-build-tweaks.patch: New file. > * gnu/packages/patches/julia-Use-MPFR-4.2.patch: Remove. > * gnu/local.mk (dist_patch_DATA): Adjust accordingly. >=20 > Co-authored-by: Philippe Virouleau <philippe.virouleau@HIDDEN> > Change-Id: I6ef35c6cd31741a7725b50364dd0f8fa6a0c6424 > --- > gnu/local.mk | 2 +- > gnu/packages/julia.scm | 862 ++++++++++-------- > gnu/packages/llvm.scm | 38 +- > .../patches/julia-1.9-build-tweaks.patch | 152 +++ > gnu/packages/patches/julia-Use-MPFR-4.2.patch | 228 ----- > 5 files changed, 651 insertions(+), 631 deletions(-) > create mode 100644 gnu/packages/patches/julia-1.9-build-tweaks.patch > delete mode 100644 gnu/packages/patches/julia-Use-MPFR-4.2.patch >=20 > Hello comrades! >=20 > Here is an update of Julia adapted from: >=20 > https://gitlab.inria.fr/guix-hpc/guix-hpc/-/commit/eb83e466fe0b9492216a= bc46da26ec3a89b0a946 >=20 > Version 1.9.3 has been in the guix-hpc channel for a while. It=E2=80=99s= not > the latest version, not even the latest series, but it=E2=80=99s an impro= vement > over what we have. >=20 > Thoughts? >=20 > Ludo=E2=80=99. I tested it out on my machines and it built without problems on x86_64 and aarch64. However, I was unable to compile the julia packages we have when there were some julia inputs. Do we want to add it in as julia-next, and then we can continue pushing the version forward and working on the package build failures separately? --=20 Efraim Flashner <efraim@HIDDEN> =D7=A8=D7=A0=D7=A9=D7=9C=D7=A4 = =D7=9D=D7=99=D7=A8=D7=A4=D7=90 GPG key =3D A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted --RDlqk/WpWgGx5knI Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAmbn4zoACgkQQarn3Mo9 g1GwfA//XljHqoXqbjGgiK5fLu5sK2ZUZvRcj+iAMhk+EQUZFXYk3qL0W0sJC+Mj J7ktRRyMz+6VxX68sXbWNhHUj3UOW+Uk6OdHdFAfeimYyXQmcG3bTAUo3k1858Ej wIiAIKRGZxd18ptTI/dUbvEbHgZXyzu7VcTdteB4mQYS6n/P33HC4J1Znx64qjT+ PNlaunzV48m/gSp8xx4dGsBE1AfnOfJak5SCkKetSimM4zWRgckWQFFZqXksm/LF 5RC7U69q8o7WIBUxyHKxs1PTA2TQODNv+nyvuYY+xBFF2z9XtPibswV3nO5b1e1u NirXNIKS70oaV3I2A3oq8phZBhjSIYdxgCIg0ZRjkNrWLVYVgwG70HaTOyCTVwRj jRrxx7+7CnPQfmki4pUXu3/gf25Meuy9fE4SnNjAWt3Vm9UjN11KY+Crc/yJGyN8 fGdDwzD33RhTuosfDxGbS3XmrLzN4V+gDPtky7NF5JyKg5jrpU5iEUq2K9XtJJQv MiOvtdRNUKzX/cLpnlGyKTXEYD7/sZ/h86bEHfEXeb1NuBkub/WHMEjjWhlU7o6d DatD4CcPShQMXpXvjw4jwM5WGQFdiDl4jYTcfp3xkAqK7lExeQYIRS6Gm7UX680y sZpX46IHZVZcj1qP4/MMsusQmd/aZ5C9zaBvy7hyxtQ/K++rYCI= =m4GT -----END PGP SIGNATURE----- --RDlqk/WpWgGx5knI--
guix-patches@HIDDEN
:bug#73197
; Package guix-patches
.
Full text available.Received: (at submit) by debbugs.gnu.org; 12 Sep 2024 13:23:21 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 12 09:23:21 2024 Received: from localhost ([127.0.0.1]:40403 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sojn4-0001F0-At for submit <at> debbugs.gnu.org; Thu, 12 Sep 2024 09:23:21 -0400 Received: from lists.gnu.org ([209.51.188.17]:41112) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <ludo@HIDDEN>) id 1sojn0-0001Eo-4R for submit <at> debbugs.gnu.org; Thu, 12 Sep 2024 09:23:17 -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 <ludo@HIDDEN>) id 1sojmr-0006GE-DH for guix-patches@HIDDEN; Thu, 12 Sep 2024 09:23:05 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <ludo@HIDDEN>) id 1sojmo-0006lm-4j; Thu, 12 Sep 2024 09:23:02 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:Subject:To:From:in-reply-to: references; bh=J+LumnNpAQ7dAOHgUWwG56Z07fQXTurzxQcKpeFIYw4=; b=giI/avu93qDe1k XJx4pu39lNNryOSuC/5my936R2jzWNKk+eyIVSsITbG/0+sRMWcW8o+IqgKV/0G2KzH84npBaokJJ he8ls2y15c+OgyF+9/RPJR8rwZToilr66ykxIwIlvQp/kk3lNg6LmGMAgpRILiSDtc7GrojRICFn0 LlR43ep4Zm9Rqp4t35N1LyvN5RaRd3zHbrjbB6Ku9j78Cnbm7iD86m51aOpAUX9zpnwge7oBko+6Z RBBOZ4aHnHSY5B2YZW3HWN2oVWxatCOVPFUAzGr/MVZGvvFKOzJ7lvbkRDgR9HBI3FI2O1G23MKvC T3MMO1lZUqgZPoiWMDtA==; From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN> To: guix-patches@HIDDEN Subject: [PATCH] gnu: julia: Update to 1.9.3. Date: Thu, 12 Sep 2024 15:22:50 +0200 Message-ID: <d9e54f64579b184f4715713101f13f01c809873a.1726147051.git.ludo@HIDDEN> X-Mailer: git-send-email 2.46.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Debbugs-Cc: Efraim Flashner <efraim@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN> Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: submit Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludovic.courtes@HIDDEN>, Philippe Virouleau <philippe.virouleau@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.6 (--) From: Ludovic Courtès <ludovic.courtes@HIDDEN> * gnu/packages/julia.scm (julia): Update to 1.9.3. [arguments]: Use gexps. [inputs, native-inputs]: Remove labels. * gnu/packages/llvm.scm (llvm-julia): Rename to… (llvm-14-julia): … this. Upgrade to 14.0.6-3. * gnu/packages/patches/julia-1.9-build-tweaks.patch: New file. * gnu/packages/patches/julia-Use-MPFR-4.2.patch: Remove. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. Co-authored-by: Philippe Virouleau <philippe.virouleau@HIDDEN> Change-Id: I6ef35c6cd31741a7725b50364dd0f8fa6a0c6424 --- gnu/local.mk | 2 +- gnu/packages/julia.scm | 862 ++++++++++-------- gnu/packages/llvm.scm | 38 +- .../patches/julia-1.9-build-tweaks.patch | 152 +++ gnu/packages/patches/julia-Use-MPFR-4.2.patch | 228 ----- 5 files changed, 651 insertions(+), 631 deletions(-) create mode 100644 gnu/packages/patches/julia-1.9-build-tweaks.patch delete mode 100644 gnu/packages/patches/julia-Use-MPFR-4.2.patch Hello comrades! Here is an update of Julia adapted from: https://gitlab.inria.fr/guix-hpc/guix-hpc/-/commit/eb83e466fe0b9492216abc46da26ec3a89b0a946 Version 1.9.3 has been in the guix-hpc channel for a while. It’s not the latest version, not even the latest series, but it’s an improvement over what we have. Thoughts? Ludo’. diff --git a/gnu/local.mk b/gnu/local.mk index ed630041ff..76d58c8e38 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1586,8 +1586,8 @@ dist_patch_DATA = \ %D%/packages/patches/john-the-ripper-jumbo-with-gcc-11.patch \ %D%/packages/patches/json-c-0.13-CVE-2020-12762.patch \ %D%/packages/patches/json-c-0.12-CVE-2020-12762.patch \ + %D%/packages/patches/julia-1.9-build-tweaks.patch \ %D%/packages/patches/julia-SOURCE_DATE_EPOCH-mtime.patch \ - %D%/packages/patches/julia-Use-MPFR-4.2.patch \ %D%/packages/patches/libcall-ui-make-it-installable.patch \ %D%/packages/patches/libcamera-ipa_manager-disable-signature-verification.patch \ %D%/packages/patches/libcss-check-format.patch \ diff --git a/gnu/packages/julia.scm b/gnu/packages/julia.scm index 9668b3fd1e..5c7d900a09 100644 --- a/gnu/packages/julia.scm +++ b/gnu/packages/julia.scm @@ -28,6 +28,7 @@ (define-module (gnu packages julia) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix gexp) #:use-module (guix utils) #:use-module (guix git-download) #:use-module (guix build-system gnu) @@ -142,412 +143,493 @@ (define-public libwhich (define-public julia (package (name "julia") - (version "1.8.3") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/JuliaLang/julia/releases/download/v" - version "/julia-" version ".tar.gz")) - (sha256 - (base32 - "0jf8dr5j7y8cjnr65kn38xps5h9m2qvi8g1yd8qgiip5r87ld3ad")) - (patches (search-patches "julia-SOURCE_DATE_EPOCH-mtime.patch" - "julia-Use-MPFR-4.2.patch")))) + (version "1.9.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/JuliaLang/julia/releases/download/v" version + "/julia-" version ".tar.gz")) + (sha256 + (base32 "0788hbcr1v89crv2j3insy89lxs0zwjbxk9q73jpj4g7j26bszcd")) + (patches (search-patches "julia-SOURCE_DATE_EPOCH-mtime.patch" + "julia-1.9-build-tweaks.patch")))) (build-system gnu-build-system) (arguments - `(#:test-target "test" - #:modules ((ice-9 match) - (guix build gnu-build-system) - (guix build utils)) + (list #:test-target "test" + #:modules `((ice-9 match) + (guix build gnu-build-system) + (guix build utils)) - ;; The test suite takes many times longer than building and - ;; can easily fail on smaller machines when they run out of memory. - #:tests? ,(not (or (%current-target-system) - (target-aarch64?))) + ;; The test suite takes many times longer than building and + ;; can easily fail on smaller machines when they run out of memory. + #:tests? (not (or (%current-target-system) + (target-aarch64?))) - ;; Do not strip binaries to keep support for full backtraces. - ;; See https://github.com/JuliaLang/julia/issues/17831 - #:strip-binaries? #f + ;; Do not strip binaries to keep support for full backtraces. + ;; See https://github.com/JuliaLang/julia/issues/17831 + #:strip-binaries? #f - ;; The DSOs use $ORIGIN to refer to each other, but (guix build - ;; gremlin) doesn't support it yet, so skip this phase. - #:validate-runpath? #f + ;; The DSOs use $ORIGIN to refer to each other, but (guix build + ;; gremlin) doesn't support it yet, so skip this phase. + #:validate-runpath? #f - #:phases - (modify-phases %standard-phases - (delete 'configure) - (add-after 'unpack 'prepare-deps - (lambda* (#:key inputs #:allow-other-keys) - ;; needed by libwhich - (setenv "LD_LIBRARY_PATH" - (string-join (map (lambda (pkg) - (string-append (assoc-ref inputs pkg) - "/lib")) - '("curl" "dsfmt" - "gmp" "lapack" - "libssh2" "libnghttp2" "libgit2" - "libblastrampoline" - "mbedtls" "mpfr" - "openblas" "openlibm" "pcre2" - "suitesparse" "gfortran:lib")) - ":")))) - ;; FIXME: Building the documentation requires Julia packages that - ;; would be downloaded from the Internet. We should build them in a - ;; separate build phase. - (add-after 'unpack 'disable-documentation - (lambda _ - (substitute* "Makefile" - (("(install: .*) \\$\\(BUILDROOT\\)/doc/_build/html/en/index.html" _ line) - (string-append line "\n")) - (("src ui doc deps") - "src ui deps")))) - (add-after 'unpack 'activate-gnu-source-for-loader - (lambda _ - (substitute* "cli/Makefile" - (("LOADER_CFLAGS =") "LOADER_CFLAGS = -D_GNU_SOURCE")))) - ;; libquadmath is not available on all architectures. - ;; https://github.com/JuliaLang/julia/issues/41613 - (add-after 'unpack 'make-libquadmath-optional - (lambda _ - (substitute* "base/Makefile" - (("libquadmath,0") "libquadmath,0,ALLOW_FAILURE")))) - (add-before 'check 'set-home - ;; Some tests require a home directory to be set. - (lambda _ (setenv "HOME" "/tmp"))) - (add-before 'build 'fix-include-and-link-paths - (lambda* (#:key inputs #:allow-other-keys) - ;; The REPL must be linked with libuv. - (substitute* "cli/Makefile" - (("JLDFLAGS \\+= ") - (string-append "JLDFLAGS += " - (assoc-ref inputs "libuv") - "/lib/libuv.so "))))) - (add-before 'build 'replace-default-shell - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "base/client.jl" - (("/bin/sh") (search-input-file inputs "/bin/sh"))))) - (add-before 'build 'shared-objects-paths - (lambda* (#:key inputs #:allow-other-keys) - (let ((jlpath - (lambda (pkgname) - (string-append - "stdlib/" pkgname "_jll/src/" pkgname "_jll.jl"))) - (from - (lambda (libname) - (string-append "const " libname " = .*\\.so"))) - (to - (lambda* (pkg libname #:optional libname_jl) + #:phases + #~(modify-phases %standard-phases + (delete 'configure) + (add-after 'unpack 'prepare-deps + (lambda* (#:key inputs #:allow-other-keys) + ;; needed by libwhich + (match inputs + (((labels . directories) ...) + (set-path-environment-variable + "LD_LIBRARY_PATH" + '("lib") directories))))) + (add-before 'check 'set-home + ;; Some tests require a home directory to be set. + (lambda _ + (setenv "HOME" "/tmp"))) + (add-before 'build 'fix-include-and-link-paths + (lambda* (#:key inputs #:allow-other-keys) + ;; The REPL must be linked with libuv. + (substitute* "cli/Makefile" + (("JLDFLAGS \\+= ") + (string-append "JLDFLAGS += " + (search-input-file inputs + "/lib/libuv.so") " "))))) + (add-before 'build 'fix-nested-dlopen + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "Make.inc" + ;; See the patch comment for the explanation, *must* be updated + ;; when updating julia. + (("GUIX_LIBUTF8PROC") + (search-input-file inputs "/lib/libutf8proc.a"))) + (substitute* "Makefile" + ;; See the patch comment for the explanation, *must* be updated + ;; when updating julia. + (("GUIX_LIBCHOLMOD") + (search-input-file inputs "/lib/libcholmod.so")) + (("GUIX_LIBSPQR") + (search-input-file inputs "/lib/libspqr.so")) + (("GUIX_LIBSC") + (search-input-file inputs + "/lib/libsuitesparseconfig.so")) + (("GUIX_LIBUMFPACK") + (search-input-file inputs "/lib/libumfpack.so"))))) + (add-before 'build 'replace-default-shell + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "base/client.jl" + (("/bin/sh") + (search-input-file inputs "/bin/sh"))))) + (add-before 'build 'shared-objects-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((jlpath (lambda (pkgname) + (string-append "stdlib/" pkgname + "_jll/src/" pkgname + "_jll.jl"))) + (jlbasepath (lambda (pkgname) + (string-append "base/" pkgname + ".jl"))) + (tolib (lambda (libname) + (search-input-file inputs + (string-append + "/lib/" libname + ".so")))) + (toquotedlib (lambda (libname) + (define file + (string-append "/lib/" + libname + ".so")) + (string-append "\"" + (search-input-file + inputs file) + "\""))) + (from (lambda (libname) + (string-append "const " libname + " = .*\\.so"))) + (to (lambda* (libname #:optional libname_jl) + (define file + (string-append "/lib/" libname ".so")) + + (string-append "const " + (or libname_jl libname) + " = \"" + (search-input-file + inputs file))))) + (substitute* "src/jitlayers.cpp" + (("libatomic.so") + (search-input-file inputs "/lib/libatomic.so"))) + (substitute* (list (jlbasepath "linking") + (jlpath "LLD")) + (("\"lld\"") + (string-append "\"" + (search-input-file inputs + "/bin/lld") + "\""))) + (substitute* (jlbasepath "pcre") + (("libpcre2-8") + (tolib "libpcre2-8"))) + (substitute* (jlbasepath "gmp") + (("libgmp.so.10") + (tolib "libgmp"))) + (substitute* (jlbasepath "mpfr") + (("libmpfr.so.6") + (tolib "libmpfr"))) + (substitute* (jlbasepath "irrationals") + ((":libmpfr") + (toquotedlib "libmpfr"))) + (substitute* "stdlib/Random/src/generation.jl" + ((":libmpfr") + (toquotedlib "libmpfr"))) + (substitute* "stdlib/Printf/src/Printf.jl" + (("\"libmpfr\"") + (toquotedlib "libmpfr"))) + (substitute* "stdlib/Random/src/DSFMT.jl" + ((":libdSFMT") + (toquotedlib "libdSFMT"))) + (for-each (lambda (file) + (substitute* file + ((":libgit2") + (toquotedlib "libgit2")))) + (find-files "stdlib/LibGit2/" "\\.jl$")) + (substitute* (jlpath "CompilerSupportLibraries") + (((from "libgomp")) + (to "libgomp")) + (((from "libgfortran")) + (string-append + "const libgfortran = string(\"" + (search-input-file inputs + "/lib/libgfortran.so")))) + (substitute* (jlpath "dSFMT") + (((from "libdSFMT")) + (to "libdSFMT"))) + (substitute* (jlpath "GMP") + (((from "libgmp")) + (to "libgmp")) + (((from "libgmpxx")) + (to "libgmpxx"))) + (substitute* (jlpath "libLLVM") + (((from "libLLVM")) + (to "libLLVM"))) + (substitute* (jlbasepath "binaryplatforms") + (("libLLVM-14jl") + (tolib "libLLVM-14jl"))) + (substitute* (jlpath "LibCURL") + (((from "libcurl")) + (to "libcurl"))) + (substitute* (jlpath "LibGit2") + (((from "libgit2")) + (to "libgit2"))) + (substitute* (jlpath "LibSSH2") + (((from "libssh2")) + (to "libssh2"))) + (substitute* (jlpath "LibUV") + (((from "libuv")) + (to "libuv"))) + (substitute* (jlpath "LibUnwind") + (((from "libunwind")) + (to "libunwind"))) + (substitute* (jlpath "MPFR") + (((from "libmpfr")) + (to "libmpfr"))) + (substitute* (jlpath "MbedTLS") + (((from "libmbedcrypto")) + (to "libmbedcrypto")) + (((from "libmbedtls")) + (to "libmbedtls")) + (((from "libmbedx509")) + (to "libmbedx509"))) + (substitute* (jlpath "nghttp2") + (((from "libnghttp2")) + (to "libnghttp2"))) + (substitute* (jlpath "OpenBLAS") + (("libgfortran.so") + (tolib "libgfortran")) + (((from "libopenblas")) + #$@(if (target-x86-64?) + `((to "libopenblas64_" "libopenblas")) + `((to "libopenblas"))))) + (substitute* (jlpath "OpenLibm") + (((from "libopenlibm")) + (to "libopenlibm"))) + (substitute* (jlpath "PCRE2") + (((from "libpcre2_8")) + (to "libpcre2-8" "libpcre2_8"))) + (substitute* (jlpath "SuiteSparse") + (((from "libamd")) + (to "libamd")) + (((from "libbtf")) + (to "libbtf")) + (((from "libcamd")) + (to "libcamd")) + (((from "libccolamd")) + (to "libccolamd")) + (((from "libcholmod")) + (to "libcholmod")) + (((from "libcolamd")) + (to "libcolamd")) + (((from "libklu")) + (to "libklu")) + (((from "libldl")) + (to "libldl")) + (((from "librbio")) + (to "librbio")) + (((from "libspqr")) + (to "libspqr")) + (((from "libsuitesparse")) + (to "libsuitesparse")) + (((from "libsuitesparseconfig")) + (to "libsuitesparseconfig")) + (((from "libumfpack")) + (to "libumfpack"))) + (substitute* (jlpath "Zlib") + (((from "libz")) + (to "libz"))) + (substitute* (jlpath "libblastrampoline") + (("libblastrampoline\\.so") + (search-input-file inputs + "/lib/libblastrampoline.so")))))) + (add-before 'build 'use-ssl-cert-file + (lambda _ + ;; We must adapt MozillaCACerts to use SSL_CERT_FILE. + (substitute* "stdlib/MozillaCACerts_jll/src/MozillaCACerts_jll.jl" + (("global cacert = .*") (string-append - "const " (or libname_jl libname) " = \"" - (assoc-ref inputs pkg) "/lib/" libname ".so")))) - (substitute* (jlpath "CompilerSupportLibraries") - (((from "libgfortran")) - (string-append "const libgfortran = string(\"" - (search-input-file inputs "/lib/libgfortran.so")))) - (substitute* (jlpath "dSFMT") - (((from "libdSFMT")) (to "dsfmt" "libdSFMT"))) - (substitute* (jlpath "GMP") - (((from "libgmp")) (to "gmp" "libgmp")) - (((from "libgmpxx")) (to "gmp" "libgmpxx"))) - (substitute* (jlpath "libLLVM") - (((from "libLLVM")) (to "llvm" "libLLVM"))) - (substitute* (jlpath "LibCURL") - (((from "libcurl")) (to "curl" "libcurl"))) - (substitute* (jlpath "LibGit2") - (((from "libgit2")) (to "libgit2" "libgit2"))) - (substitute* (jlpath "LibSSH2") - (((from "libssh2")) (to "libssh2" "libssh2"))) - (substitute* (jlpath "LibUV") - (((from "libuv")) (to "libuv" "libuv"))) - (substitute* (jlpath "LibUnwind") - (((from "libunwind")) (to "libunwind" "libunwind"))) - (substitute* (jlpath "MPFR") - (((from "libmpfr")) (to "mpfr" "libmpfr"))) - (substitute* (jlpath "MbedTLS") - (((from "libmbedcrypto")) (to "mbedtls" "libmbedcrypto")) - (((from "libmbedtls")) (to "mbedtls" "libmbedtls")) - (((from "libmbedx509")) (to "mbedtls" "libmbedx509"))) - (substitute* (jlpath "nghttp2") - (((from "libnghttp2")) (to "libnghttp2" "libnghttp2"))) - (substitute* (jlpath "OpenBLAS") - (((from "libopenblas")) - ,@(if (target-x86-64?) - `((to "openblas" "libopenblas64_" "libopenblas")) - `((to "openblas" "libopenblas"))))) - (substitute* (jlpath "OpenLibm") - (((from "libopenlibm")) (to "openlibm" "libopenlibm"))) - (substitute* (jlpath "PCRE2") - (((from "libpcre2_8")) (to "pcre2" "libpcre2-8" "libpcre2_8"))) - (substitute* (jlpath "SuiteSparse") - (((from "libamd")) (to "suitesparse" "libamd")) - (((from "libbtf")) (to "suitesparse" "libbtf")) - (((from "libcamd")) (to "suitesparse" "libcamd")) - (((from "libccolamd")) (to "suitesparse" "libccolamd")) - (((from "libcholmod")) (to "suitesparse" "libcholmod")) - (((from "libcolamd")) (to "suitesparse" "libcolamd")) - (((from "libklu")) (to "suitesparse" "libklu")) - (((from "libldl")) (to "suitesparse" "libldl")) - (((from "librbio")) (to "suitesparse" "librbio")) - (((from "libspqr")) (to "suitesparse" "libspqr")) - (((from "libsuitesparse")) (to "suitesparse" "libsuitesparse")) - (((from "libsuitesparseconfig")) - (to "suitesparse" "libsuitesparseconfig")) - (((from "libumfpack")) (to "suitesparse" "libumfpack"))) - (substitute* (jlpath "Zlib") - (((from "libz")) (to "zlib" "libz"))) - (substitute* (jlpath "libblastrampoline") - (("libblastrampoline\\.so") - (search-input-file inputs "/lib/libblastrampoline.so")))))) - (add-before 'build 'use-ssl-cert-file - (lambda _ - ;; We must adapt MozillaCACerts to use SSL_CERT_FILE. - (substitute* "stdlib/MozillaCACerts_jll/src/MozillaCACerts_jll.jl" - (("global cacert = .*") - (string-append - "global cacert = get(ENV, \"SSL_CERT_FILE\"," - ;; our fallback location. - "\"/etc/ssl/certs/ca-certificates.crt\")\n"))))) - (add-after 'unpack 'enable-parallel-tests - (lambda* (#:key parallel-tests? #:allow-other-keys) - (when parallel-tests? - (setenv "JULIA_TEST_USE_MULTIPLE_WORKERS" "true")))) - (add-after 'unpack 'adjust-test-suite - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "test/spawn.jl" - (("shcmd = `sh`") (string-append "shcmd = `" (which "sh") "`"))) - ;; Some tests only check to see if the input is the correct version. - (substitute* "stdlib/PCRE2_jll/test/runtests.jl" - (("10.40.0") ,(package-version (this-package-input "pcre2")))) - (substitute* "stdlib/MbedTLS_jll/test/runtests.jl" - (("2.28.0") ,(package-version (this-package-input "mbedtls")))) - (substitute* "stdlib/MPFR_jll/test/runtests.jl" - (("4.1.0") ,(package-version (this-package-input "mpfr")))) - (substitute* "stdlib/GMP_jll/test/runtests.jl" - (("6.2.1") ,(package-version (this-package-input "gmp")))) - (substitute* "stdlib/LibGit2_jll/test/runtests.jl" - (("1.3.0") ,(package-version (this-package-input "libgit2")))) - (substitute* "stdlib/nghttp2_jll/test/runtests.jl" - (("1.48.0") ,(package-version (this-package-input "libnghttp2")))) - (substitute* "stdlib/Zlib_jll/test/runtests.jl" - (("1.2.12") ,(package-version (this-package-input "zlib")))) - (substitute* "stdlib/SuiteSparse_jll/test/runtests.jl" - (("5010") ,(string-replace-substring - (version-major+minor - (package-version - (this-package-input "suitesparse"))) "." "0"))))) - (add-before 'check 'disable-broken-tests - (lambda _ - ;; disabling REPL tests because they require a stdin - ;; There are some read-only precompile issues in the 1.6 series. - ;; https://github.com/JuliaLang/julia/pull/41614 - ;; https://github.com/JuliaLang/julia/issues/41156 - (substitute* "test/choosetests.jl" - (("\"cmdlineargs\",") "") - (("\"precompile\",") "")) - ;; Dates/io tests fail on master when networking is unavailable - ;; https://github.com/JuliaLang/julia/issues/34655 - (substitute* "stdlib/Dates/test/io.jl" - (("using Dates") "import Dates + "global cacert = get(ENV, \"SSL_CERT_FILE\"," + ;; our fallback location. + "\"/etc/ssl/certs/ca-certificates.crt\")\n"))))) + (add-after 'unpack 'enable-parallel-tests + (lambda* (#:key parallel-tests? #:allow-other-keys) + (when parallel-tests? + (setenv "JULIA_TEST_USE_MULTIPLE_WORKERS" "true")))) + (add-after 'unpack 'adjust-test-suite + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "test/spawn.jl" + (("shcmd = `sh`") + (string-append "shcmd = `" + (which "sh") "`"))) + + ;; Some tests only check to see if the input is the correct version. + (substitute* "stdlib/PCRE2_jll/test/runtests.jl" + (("10\\.42\\.0") + #$(package-version (this-package-input "pcre2")))) + (substitute* "stdlib/MbedTLS_jll/test/runtests.jl" + (("2\\.28\\.2") + #$(package-version (this-package-input "mbedtls-apache")))) + (substitute* "stdlib/MPFR_jll/test/runtests.jl" + (("4\\.1\\.1") + #$(package-version (this-package-input "mpfr")))) + (substitute* "stdlib/GMP_jll/test/runtests.jl" + (("6\\.2\\.1") + #$(package-version (this-package-input "gmp")))) + (substitute* "stdlib/LibGit2_jll/test/runtests.jl" + (("1\\.5\\.0") + #$(package-version (this-package-input "libgit2")))) + (substitute* "stdlib/nghttp2_jll/test/runtests.jl" + (("1\\.48\\.0") + #$(package-version (this-package-input "nghttp2")))) + (substitute* "stdlib/Zlib_jll/test/runtests.jl" + (("1\\.2\\.13") + #$(package-version (this-package-input "zlib")))) + (substitute* "stdlib/SuiteSparse_jll/test/runtests.jl" + (("5010") + #$(string-replace-substring + (version-major+minor + (package-version + (this-package-input "suitesparse"))) "." "0"))))) + (add-before 'check 'disable-broken-tests + (lambda* (#:key inputs #:allow-other-keys) + ;; disabling REPL tests because they require a stdin + ;; There are some read-only precompile issues in the 1.6 series. + ;; https://github.com/JuliaLang/julia/pull/41614 + ;; https://github.com/JuliaLang/julia/issues/41156 + (substitute* "test/choosetests.jl" + (("\"cmdlineargs\",") + "") + (("\"precompile\",") + "")) + ;; Distributed test with remote execution + (substitute* "usr/share/julia/stdlib/v1.9/Distributed/test/distributed_exec.jl" + (("using Test,") + "exit()\n")) + ;; Dates/io tests fail on master when networking is unavailable + ;; https://github.com/JuliaLang/julia/issues/34655 + (substitute* "stdlib/Dates/test/io.jl" + (("using Dates") + "import Dates using Dates: @dateformat_str, Date, DateTime, DateFormat, Time")) - ;; julia embeds a certificate, we are not doing that - (substitute* "stdlib/MozillaCACerts_jll/test/runtests.jl" - (("@test isfile\\(MozillaCACerts_jll.cacert\\)") - "@test_broken isfile(MozillaCACerts_jll.cacert)")) - ;; since certificate is not present some tests are failing in network option - (substitute* "usr/share/julia/stdlib/v1.8/NetworkOptions/test/runtests.jl" - (("@test isfile\\(bundled_ca_roots\\(\\)\\)") - "@test_broken isfile(bundled_ca_roots())") - (("@test ispath\\(ca_roots_path\\(\\)\\)") - "@test_broken ispath(ca_roots_path())") - (("@test ca_roots_path\\(\\) \\!= bundled_ca_roots\\(\\)") - "@test_broken ca_roots_path() != bundled_ca_roots()")) - ;; WARNING: failed to select UTF-8 encoding, using ASCII - ;; Using 'setlocale' doesn't affect the test failures. - ;(setlocale LC_ALL "en_US.utf8") - ;(setenv "LC_ALL" "en_US.utf8") - (substitute* "test/cmdlineargs.jl" - (("test v\\[3") "test_broken v[3") - (("test isempty\\(v\\[3") "test_broken isempty(v[3")) - ;; These test(s) randomly fails because they depend on CPU. - (substitute* "test/math.jl" - ;; @test_broken cannot be used because if the test randomly - ;; passes, then it also raises an error. - (("@test isinf\\(log1p\\(-one\\(T\\)\\)\\)") - " ")) + ;; julia embeds a certificate, we are not doing that + (substitute* "stdlib/MozillaCACerts_jll/test/runtests.jl" + (("@test isfile\\(MozillaCACerts_jll.cacert\\)") + "@test_broken isfile(MozillaCACerts_jll.cacert)")) + ;; since certificate is not present some tests are failing in network option + (substitute* "usr/share/julia/stdlib/v1.9/NetworkOptions/test/runtests.jl" + (("@test isfile\\(bundled_ca_roots\\(\\)\\)") + "@test_broken isfile(bundled_ca_roots())") + (("@test ispath\\(ca_roots_path\\(\\)\\)") + "@test_broken ispath(ca_roots_path())") + (("@test ca_roots_path\\(\\) \\!= bundled_ca_roots\\(\\)") + "@test_broken ca_roots_path() != bundled_ca_roots()")) + ;; WARNING: failed to select UTF-8 encoding, using ASCII + ;; Using 'setlocale' doesn't affect the test failures. + ;; (setlocale LC_ALL "en_US.utf8") + ;; (setenv "LC_ALL" "en_US.utf8") + (substitute* "test/cmdlineargs.jl" + (("test v\\[3") + "test_broken v[3") + (("test isempty\\(v\\[3") + "test_broken isempty(v[3")) + ;; These test(s) randomly fails because they depend on CPU. + (substitute* "test/math.jl" + ;; @test_broken cannot be used because if the test randomly + ;; passes, then it also raises an error. + (("@test isinf\\(log1p\\(-one\\(T\\)\\)\\)") + " ")) - ;; These are new test failures for 1.8: - ;; This test passes on some architectures and fails on others. - (substitute* "stdlib/LinearAlgebra/test/lu.jl" - (("@test String") "@test_skip String")) + ;; These are new test failures for 1.8: + ;; This test passes on some architectures and fails on others. + (substitute* "stdlib/LinearAlgebra/test/lu.jl" + (("@test String") + "@test_skip String")) - (substitute* "stdlib/InteractiveUtils/test/runtests.jl" - (("@test !occursin\\(\"Environment") - "@test_broken !occursin(\"Environment") - (("@test occursin\\(\"Environment") - "@test_broken occursin(\"Environment")) - (substitute* "usr/share/julia/stdlib/v1.8/Statistics/test/runtests.jl" - (("@test cov\\(A") "@test_skip cov(A") - (("@test isfinite") "@test_skip isfinite")) - ;; LoadError: SuiteSparse threads test failed with nthreads == 4 - (substitute* "usr/share/julia/stdlib/v1.8/SuiteSparse/test/runtests.jl" - (("Base\\.USE_GPL_LIBS") "false")) - ;; Got exception outside of a @test - ;; LinearAlgebra.LAPACKException(16) - ;; eliminate all the test bits. - (substitute* "stdlib/LinearAlgebra/test/schur.jl" - (("f = schur\\(A, B\\)") "f = schur(A, A)") - (("@test f\\.Q\\*f\\.S\\*f\\.Z'.*") "\n") - (("@test f\\.Q\\*f\\.T\\*f\\.Z'.*") "\n")) - (substitute* "test/threads.jl" - (("@test success") "@test_broken success")))) - ;; Doesn't this just mean they weren't linked correctly? - (add-after 'install 'symlink-missing-libraries - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (link - (lambda (pkgname pred) - (map (lambda (file) - (unless (file-exists? - (string-append out "/lib/julia/" - (basename file))) - (symlink file (string-append out "/lib/julia/" - (basename file))))) - (find-files (string-append (assoc-ref inputs pkgname) - "/lib") pred))))) - (link "libunwind" "libunwind\\.so") - (link "llvm" "libLLVM-13jl\\.so") - (link "utf8proc" "libutf8proc\\.so") - (link "zlib" "libz\\.so")))) - (add-after 'install 'make-wrapper - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (program "julia")) - (with-directory-excursion bin - (wrap-program program - `("JULIA_LOAD_PATH" ":" prefix - ("" "$JULIA_LOAD_PATH")) - `("JULIA_DEPOT_PATH" ":" prefix - ("" "$JULIA_DEPOT_PATH")))))))) - #:make-flags - (list - "VERBOSE=1" ;; more helpful logging of what make is doing - (string-append "prefix=" (assoc-ref %outputs "out")) + (substitute* "usr/share/julia/stdlib/v1.9/Statistics/test/runtests.jl" + (("@test cov\\(A") + "@test_skip cov(A") + (("@test isfinite") + "@test_skip isfinite")) + ;; LoadError: SuiteSparse threads test failed with nthreads == 4 + (substitute* "usr/share/julia/stdlib/v1.9/SuiteSparse/test/runtests.jl" + (("Base\\.USE_GPL_LIBS") + "false")) + ;; Got exception outside of a @test + ;; LinearAlgebra.LAPACKException(16) + ;; eliminate all the test bits. + (substitute* "stdlib/LinearAlgebra/test/schur.jl" + (("f = schur\\(A, B\\)") + "f = schur(A, A)") + (("@test f\\.Q\\*f\\.S\\*f\\.Z'.*") + "\n") + (("@test f\\.Q\\*f\\.T\\*f\\.Z'.*") + "\n")))) + ;; Doesn't this just mean they weren't linked correctly? + (add-after 'install 'symlink-missing-libraries + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (link (lambda (pkgname pred) + (map (lambda (file) + (unless (file-exists? (string-append + out + "/lib/julia/" + (basename + file))) + (symlink file + (string-append + out + "/lib/julia/" + (basename file))))) + (find-files (string-append (assoc-ref + inputs + pkgname) + "/lib") pred))))) + (link "libunwind-julia" "libunwind\\.so") + (link "llvm" "libLLVM-14jl\\.so") + (link "gmp" "libgmp\\.so.10") + (link "mpfr" "libmpfr\\.so.6") + (link "zlib" "libz\\.so")))) + (add-after 'install 'make-wrapper + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (program "julia")) + (with-directory-excursion bin + (wrap-program program + `("JULIA_LOAD_PATH" ":" prefix + ("" "$JULIA_LOAD_PATH")) + `("JULIA_DEPOT_PATH" ":" prefix + ("" "$JULIA_DEPOT_PATH")))))))) - ;; Passing the MARCH or JULIA_CPU_TARGET flag is necessary to build - ;; binary substitutes for the supported architectures. See also - ;; https://docs.julialang.org/en/v1/devdocs/sysimg/#Specifying-multiple-system-image-targets - ,(match (or (%current-target-system) - (%current-system)) - ("x86_64-linux" - ;; These are the flags that upstream uses for their binaries. - "JULIA_CPU_TARGET=generic;generic,-cx16,clone_all;sandybridge,-xsaveopt,clone_all;haswell,-rdrnd,base(1)") - ("i686-linux" "MARCH=pentium4") - ("armhf-linux" "JULIA_CPU_TARGET=armv7-a,neon") - ("powerpc64le-linux" "JULIA_CPU_TARGET=pwr8") - ;; Prevent errors when querying this package on unsupported - ;; platforms, e.g. when running "guix package --search=" - ;; and also of targeting the builder's architecture. - (_ "JULIA_CPU_TARGET=generic")) + #:make-flags + #~(list (string-append "prefix=" + (assoc-ref %outputs "out")) - "CONFIG_SHELL=bash -x" ; needed to build bundled libraries - "USE_BINARYBUILDER=0" - ;; list (and order!) of "USE_SYSTEM_*" is here: - ;; https://github.com/JuliaLang/julia/blob/v1.8.2/Make.inc - "USE_SYSTEM_CSL=1" - "USE_SYSTEM_LLVM=1" - "USE_SYSTEM_LIBUNWIND=1" - "USE_SYSTEM_PCRE=1" - "USE_SYSTEM_OPENLIBM=1" - "USE_SYSTEM_DSFMT=1" - "USE_SYSTEM_LIBBLASTRAMPOLINE=1" - "USE_SYSTEM_BLAS=1" - "USE_SYSTEM_LAPACK=1" - "USE_SYSTEM_GMP=1" - "USE_SYSTEM_MPFR=1" - "USE_SYSTEM_LIBSUITESPARSE=1" - "USE_SYSTEM_LIBUV=1" - "USE_SYSTEM_UTF8PROC=1" - "USE_SYSTEM_MBEDTLS=1" - "USE_SYSTEM_LIBSSH2=1" - "USE_SYSTEM_NGHTTP2=1" - "USE_SYSTEM_CURL=1" - "USE_SYSTEM_LIBGIT2=1" - "USE_SYSTEM_PATCHELF=1" - "USE_SYSTEM_LIBWHICH=1" - "USE_SYSTEM_ZLIB=1" - "USE_SYSTEM_P7ZIP=1" + ;; Passing the MARCH or JULIA_CPU_TARGET flag is necessary to build + ;; binary substitutes for the supported architectures. See also + ;; https://docs.julialang.org/en/v1/devdocs/sysimg/#Specifying-multiple-system-image-targets + #$(match (or (%current-target-system) + (%current-system)) + ("x86_64-linux" + ;; These are the flags that upstream uses for their binaries. + "JULIA_CPU_TARGET=generic;generic,-cx16,clone_all;sandybridge,-xsaveopt,clone_all;haswell,-rdrnd,base(1)") + ("i686-linux" "MARCH=pentium4") + ("armhf-linux" + "JULIA_CPU_TARGET=armv7-a,neon") + ("powerpc64le-linux" + "JULIA_CPU_TARGET=pwr8") + ;; Prevent errors when querying this package on unsupported + ;; platforms, e.g. when running "guix package --search=" + ;; and also of targeting the builder's architecture. + (_ "JULIA_CPU_TARGET=generic")) - "USE_LLVM_SHLIB=1" + "CONFIG_SHELL=bash -x" ;needed to build bundled libraries + (string-append "CC=" + #$(cc-for-target)) - "NO_GIT=1" ; build from release tarball. - "USE_GPL_LIBS=1" ; proudly + #$@(if (target-x86-64?) + `("USE_BLAS64=1" + "LIBBLAS=-lopenblas64_" + "LIBBLASNAME=libopenblas64_") + `("USE_BLAS64=0" "LIBBLAS=-lopenblas" + "LIBBLASNAME=libopenblas")) - ,@(if (target-x86-64?) - `("USE_BLAS64=1" - "LIBBLAS=-lopenblas64_" - "LIBBLASNAME=libopenblas64_") - `("USE_BLAS64=0" - "LIBBLAS=-lopenblas" - "LIBBLASNAME=libopenblas")) - - (string-append "UTF8PROC_INC=" - (assoc-ref %build-inputs "utf8proc") - "/include") - ;; Make.inc expects a static library for libuv. - (string-append "LIBUV=" - (assoc-ref %build-inputs "libuv") - "/lib/libuv.a") - (string-append "LIBUV_INC=" - (assoc-ref %build-inputs "libuv") - "/include")))) - (inputs - `(("bash-minimal" ,bash-minimal) - ("coreutils" ,coreutils) ; for bindings to "mkdir" and the like - ("curl" ,curl-ssh) - ("gfortran" ,gfortran) - ;; required for libgcc_s.so - ("gfortran:lib" ,gfortran "lib") - ("gmp" ,gmp) - ("lapack" ,lapack) - ("libblastrampoline" ,libblastrampoline) - ("libgit2" ,libgit2-1.3) - ("libnghttp2" ,nghttp2 "lib") - ("libssh2" ,libssh2) - ("libunwind" ,libunwind-julia) - ("libuv" ,libuv-julia) - ("llvm" ,llvm-julia) - ("mbedtls" ,mbedtls-lts) - ("mpfr" ,mpfr) - ,@(if (target-x86-64?) - `(("openblas" ,openblas-ilp64)) - `(("openblas" ,openblas))) - ("openlibm" ,openlibm) - ("p7zip" ,p7zip) - ("pcre2" ,pcre2) - ("suitesparse" ,suitesparse) - ("utf8proc" ,utf8proc-2.7.0) - ("wget" ,wget) - ("which" ,which) - ("zlib" ,zlib) - ;; Find dependencies versions here: - ;; https://raw.githubusercontent.com/JuliaLang/julia/v1.6.0/deps/Versions.make - ("dsfmt" ,dsfmt) - ("libwhich" ,libwhich))) - (native-inputs - `(("openssl" ,openssl) - ("perl" ,perl) - ("patchelf" ,patchelf) - ("pkg-config" ,pkg-config) - ("python" ,python))) + (string-append "UTF8PROC_INC=" + (assoc-ref %build-inputs "utf8proc") + "/include") + ;; Make.inc expects a static library for libuv. + (string-append "LIBUV=" + (search-input-file %build-inputs + "/lib/libuv.a")) + (string-append "LIBUV_INC=" + (dirname + (search-input-file + %build-inputs "/include/uv.h")))))) + (inputs (list coreutils ;for bindings to "mkdir" and the like + curl-ssh + gfortran + `(,gfortran "lib") ;required for libgcc_s.so + gmp + lapack + libblastrampoline + libgit2-1.5 + `(,nghttp2 "lib") + libssh2 + libunwind-julia + libuv-julia + llvm-14-julia + lld-14 + mbedtls-apache + mpfr + (if (target-x86-64?) openblas-ilp64 openblas) + openlibm + p7zip + pcre2 + suitesparse + utf8proc-2.7.0 + wget + which + zlib + ;; Find dependencies versions here: + ;; https://raw.githubusercontent.com/JuliaLang/julia/v1.6.0/deps/Versions.make + dsfmt + libwhich)) + (native-inputs (list openssl perl patchelf pkg-config python)) (native-search-paths - (list (search-path-specification - (variable "JULIA_LOAD_PATH") - (files (list "share/julia/loadpath/"))) - (search-path-specification - (variable "JULIA_DEPOT_PATH") - (files (list "share/julia/"))) - $SSL_CERT_FILE)) + (list (search-path-specification + (variable "JULIA_LOAD_PATH") + (files (list "share/julia/loadpath/"))) + (search-path-specification + (variable "JULIA_DEPOT_PATH") + (files (list "share/julia/"))) + $SSL_CERT_FILE)) ;; Julia only officially supports some of our platforms: ;; https://julialang.org/downloads/#supported_platforms (supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux")) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index fd2e815fe0..671aee059e 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2016, 2018 Eric Bavier <bavier@HIDDEN> ;;; Copyright © 2015 Mark H Weaver <mhw@HIDDEN> -;;; Copyright © 2015, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@HIDDEN> +;;; Copyright © 2015, 2017-2021, 2024 Ludovic Courtès <ludo@HIDDEN> ;;; Copyright © 2016 Dennis Mungai <dmngaie@HIDDEN> ;;; Copyright © 2016, 2018, 2019, 2020, 2021, 2023 Ricardo Wurmus <rekado@HIDDEN> ;;; Copyright © 2017 Roel Janssen <roel@HIDDEN> @@ -2264,22 +2264,36 @@ (define-public wllvm LLVM bitcode files.") (license license:expat))) -(define-public llvm-julia +(define-public llvm-14-julia (package - (inherit llvm-13) + (inherit llvm-14) + (version "14.0.6-3-julia") + (source + (origin + (method git-fetch) + (uri (git-reference (url "https://github.com/JuliaLang/llvm-project") + (commit "julia-14.0.6-3"))) + (file-name (git-file-name "llvm-project-julia" "14.0.6-3")) + (sha256 + (base32 + "16ynl9g4paksvglk6asfxdr15gy21bzvsjdkqb1msbcnkz2x610x")))) (arguments - (substitute-keyword-arguments (package-arguments llvm-13) - ((#:configure-flags flags ''()) + (substitute-keyword-arguments (package-arguments llvm-14) + ((#:configure-flags flags + ''()) + ; FIXME: I think we should basically duplicate + ; https://github.com/JuliaLang/julia/blob/master/deps/llvm.mk #~(cons* "-DLLVM_BUILD_LLVM_DYLIB=ON" "-DLLVM_LINK_LLVM_DYLIB=ON" - ;; "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=NVPTX" - "-DLLVM_VERSION_SUFFIX:STRING=jl" ; Perhaps not needed. - #$(string-append "-DLLVM_TARGETS_TO_BUILD=" + "-DLLVM_SHLIB_SYMBOL_VERSION:STRING=JL_LLVM_14.0" + "-DLLVM_VERSION_SUFFIX:STRING=jl" ;Perhaps not needed. + #$(string-append "-DLLVM_TARGETS_TO_BUILD=NVPTX;AMDGPU;" (system->llvm-target)) - (delete "-DBUILD_SHARED_LIBS:BOOL=TRUE" #$flags))) - ((#:build-type _) "Release"))) - (properties `((hidden? . #t) - ,@(package-properties llvm-13))))) + (delete "-DBUILD_SHARED_LIBS:BOOL=TRUE" + #$flags))) + ((#:build-type _) + "Release"))) + (properties `((hidden? . #t) ,@(package-properties llvm-14))))) (define llvm-cling ;; To determine which version of LLVM a given release of Cling should use, diff --git a/gnu/packages/patches/julia-1.9-build-tweaks.patch b/gnu/packages/patches/julia-1.9-build-tweaks.patch new file mode 100644 index 0000000000..25f220b012 --- /dev/null +++ b/gnu/packages/patches/julia-1.9-build-tweaks.patch @@ -0,0 +1,152 @@ +Adjust the Julia 1.9 build system to unbundle libraries and otherwise fix things +here and there. + +diff --git a/Make.inc b/Make.inc +index 5bbb52617a..7e1215a2de 100644 +--- a/Make.inc ++++ b/Make.inc +@@ -40,33 +40,39 @@ OPENBLAS_USE_THREAD:=1 + # Flags for using libraries available on the system instead of building them. + # Please read the notes around usage of SYSTEM flags in README.md + # Issues resulting from use of SYSTEM versions will generally not be accepted. +-USE_SYSTEM_CSL:=0 +-USE_SYSTEM_LLVM:=0 +-USE_SYSTEM_LIBUNWIND:=0 ++USE_SYSTEM_CSL:=1 ++USE_SYSTEM_LLVM:=1 ++USE_SYSTEM_LIBUNWIND:=1 + DISABLE_LIBUNWIND:=0 +-USE_SYSTEM_PCRE:=0 ++USE_SYSTEM_PCRE:=1 + USE_SYSTEM_LIBM:=0 +-USE_SYSTEM_OPENLIBM:=0 ++USE_SYSTEM_OPENLIBM:=1 + UNTRUSTED_SYSTEM_LIBM:=0 +-USE_SYSTEM_DSFMT:=0 +-USE_SYSTEM_LIBBLASTRAMPOLINE:=0 +-USE_SYSTEM_BLAS:=0 +-USE_SYSTEM_LAPACK:=0 +-USE_SYSTEM_GMP:=0 +-USE_SYSTEM_MPFR:=0 +-USE_SYSTEM_LIBSUITESPARSE:=0 +-USE_SYSTEM_LIBUV:=0 +-USE_SYSTEM_UTF8PROC:=0 +-USE_SYSTEM_MBEDTLS:=0 +-USE_SYSTEM_LIBSSH2:=0 +-USE_SYSTEM_NGHTTP2:=0 +-USE_SYSTEM_CURL:=0 +-USE_SYSTEM_LIBGIT2:=0 +-USE_SYSTEM_PATCHELF:=0 +-USE_SYSTEM_LIBWHICH:=0 +-USE_SYSTEM_ZLIB:=0 +-USE_SYSTEM_P7ZIP:=0 +-USE_SYSTEM_LLD:=0 ++USE_SYSTEM_DSFMT:=1 ++USE_SYSTEM_LIBBLASTRAMPOLINE:=1 ++USE_SYSTEM_BLAS:=1 ++USE_SYSTEM_LAPACK:=1 ++USE_SYSTEM_GMP:=1 ++USE_SYSTEM_MPFR:=1 ++USE_SYSTEM_LIBSUITESPARSE:=1 ++USE_SYSTEM_LIBUV:=1 ++USE_SYSTEM_UTF8PROC:=1 ++USE_SYSTEM_MBEDTLS:=1 ++USE_SYSTEM_LIBSSH2:=1 ++USE_SYSTEM_NGHTTP2:=1 ++USE_SYSTEM_CURL:=1 ++USE_SYSTEM_LIBGIT2:=1 ++USE_SYSTEM_PATCHELF:=1 ++USE_SYSTEM_LIBWHICH:=1 ++USE_SYSTEM_ZLIB:=1 ++USE_SYSTEM_P7ZIP:=1 ++USE_SYSTEM_LLD:=1 ++ ++# Guix override ++USE_INTEL_JITEVENTS:=0 ++USE_PERF_JITEVENTS:=0 ++USE_BINARYBUILDER:=0 ++ + + # Link to the LLVM shared library + USE_LLVM_SHLIB := 1 +@@ -1124,7 +1130,8 @@ else + endif + + ifeq ($(USE_SYSTEM_UTF8PROC), 1) +- LIBUTF8PROC := -lutf8proc ++ # Point to the static lib in Guix ++ LIBUTF8PROC := GUIX_LIBUTF8PROC + UTF8PROC_INC := $(LOCALBASE)/include + else + LIBUTF8PROC := $(build_libdir)/libutf8proc.a +diff --git a/Makefile b/Makefile +index ef0ade09e2..6b9177df60 100644 +--- a/Makefile ++++ b/Makefile +@@ -11,7 +11,8 @@ all: debug release + # sort is used to remove potential duplicates + DIRS := $(sort $(build_bindir) $(build_depsbindir) $(build_libdir) $(build_private_libdir) $(build_libexecdir) $(build_includedir) $(build_includedir)/julia $(build_sysconfdir)/julia $(build_datarootdir)/julia $(build_datarootdir)/julia/stdlib $(build_man1dir)) + ifneq ($(BUILDROOT),$(JULIAHOME)) +-BUILDDIRS := $(BUILDROOT) $(addprefix $(BUILDROOT)/,base src src/flisp src/support src/clangsa cli doc deps stdlib test test/clangsa test/embedding test/gcext test/llvmpasses) ++# FIXME: do not build doc yet ++BUILDDIRS := $(BUILDROOT) $(addprefix $(BUILDROOT)/,base src src/flisp src/support src/clangsa cli deps stdlib test test/clangsa test/embedding test/gcext test/llvmpasses) + BUILDDIRMAKE := $(addsuffix /Makefile,$(BUILDDIRS)) $(BUILDROOT)/sysimage.mk + DIRS := $(DIRS) $(BUILDDIRS) + $(BUILDDIRMAKE): | $(BUILDDIRS) +@@ -64,6 +65,16 @@ julia-deps: | $(DIRS) $(build_datarootdir)/julia/base $(build_datarootdir)/julia + # `julia-stdlib` depends on `julia-deps` so that the fake JLL stdlibs can copy in their Artifacts.toml files. + julia-stdlib: | $(DIRS) julia-deps + @$(MAKE) $(QUIET_MAKE) -C $(BUILDROOT)/stdlib ++ # These files are checked-out during the build phase, but need to be fixed ++ # before the actual build, therefore we sed with a variable we'll fix before ++ # the build phase. It's twisted but it's the only working way I could find. ++ # The " are important to avoid double substitution when doing 'make' then ++ # 'make check'. ++ sed -i 's|"libcholmod"|"GUIX_LIBCHOLMOD"|' usr/share/julia/stdlib/v1.9/SparseArrays/src/solvers/cholmod.jl ++ sed -i 's|:libsuitesparseconfig|"GUIX_LIBSC"|' usr/share/julia/stdlib/v1.9/SparseArrays/src/solvers/cholmod.jl ++ sed -i 's|:libcholmod|"GUIX_LIBCHOLMOD"|' usr/share/julia/stdlib/v1.9/SparseArrays/src/solvers/LibSuiteSparse.jl ++ sed -i 's|:libspqr|"GUIX_LIBSPQR"|' usr/share/julia/stdlib/v1.9/SparseArrays/src/solvers/LibSuiteSparse.jl ++ sed -i 's|:libumfpack|"GUIX_LIBUMFPACK"|' usr/share/julia/stdlib/v1.9/SparseArrays/src/solvers/LibSuiteSparse.jl + + julia-base: julia-deps $(build_sysconfdir)/julia/startup.jl $(build_man1dir)/julia.1 $(build_datarootdir)/julia/julia-config.jl + @$(MAKE) $(QUIET_MAKE) -C $(BUILDROOT)/base +@@ -236,7 +247,9 @@ define stringreplace + endef + + +-install: $(build_depsbindir)/stringreplace $(BUILDROOT)/doc/_build/html/en/index.html ++# Guix FIXME: building the doc requires internet. We should build them in a ++# separate build phase. ++install: $(build_depsbindir)/stringreplace # $(BUILDROOT)/doc/_build/html/en/index.html + @$(MAKE) $(QUIET_MAKE) $(JULIA_BUILD_MODE) + @for subdir in $(bindir) $(datarootdir)/julia/stdlib/$(VERSDIR) $(docdir) $(man1dir) $(includedir)/julia $(libdir) $(private_libdir) $(sysconfdir) $(private_libexecdir); do \ + mkdir -p $(DESTDIR)$$subdir; \ +diff --git a/base/Makefile b/base/Makefile +index 0ea0359c8c..9cee86aeec 100644 +--- a/base/Makefile ++++ b/base/Makefile +@@ -239,7 +239,10 @@ endif + ifneq (,$(LIBGFORTRAN_VERSION)) + $(eval $(call symlink_system_library,CSL,libgfortran,$(LIBGFORTRAN_VERSION))) + endif +-$(eval $(call symlink_system_library,CSL,libquadmath,0)) ++ ++# libquadmath is not available on all architectures. ++# https://github.com/JuliaLang/julia/issues/41613 ++$(eval $(call symlink_system_library,CSL,libquadmath,0,ALLOW_FAILURE)) + $(eval $(call symlink_system_library,CSL,libstdc++,6)) + # We allow libssp, libatomic and libgomp to fail as they are not available on all systems + $(eval $(call symlink_system_library,CSL,libssp,0,ALLOW_FAILURE)) +diff --git a/cli/Makefile b/cli/Makefile +index 7ba238e0de..6540f6384a 100644 +--- a/cli/Makefile ++++ b/cli/Makefile +@@ -7,7 +7,7 @@ include $(JULIAHOME)/deps/llvm-ver.make + + HEADERS := $(addprefix $(SRCDIR)/,jl_exports.h loader.h) $(addprefix $(JULIAHOME)/src/,julia_fasttls.h support/platform.h support/dirpath.h jl_exported_data.inc jl_exported_funcs.inc) + +-LOADER_CFLAGS = $(JCFLAGS) -I$(BUILDROOT)/src -I$(JULIAHOME)/src -I$(JULIAHOME)/src/support -I$(build_includedir) -ffreestanding ++LOADER_CFLAGS = -D_GNU_SOURCE $(JCFLAGS) -I$(BUILDROOT)/src -I$(JULIAHOME)/src -I$(JULIAHOME)/src/support -I$(build_includedir) -ffreestanding + LOADER_LDFLAGS = $(JLDFLAGS) -ffreestanding -L$(build_shlibdir) -L$(build_libdir) + + ifeq ($(OS),WINNT) diff --git a/gnu/packages/patches/julia-Use-MPFR-4.2.patch b/gnu/packages/patches/julia-Use-MPFR-4.2.patch deleted file mode 100644 index 73a395c89e..0000000000 --- a/gnu/packages/patches/julia-Use-MPFR-4.2.patch +++ /dev/null @@ -1,228 +0,0 @@ -This patch backports part of Julia upstream commit: - - 1e5fdb29f8858f3244f6aff116ee12e4c8247f3a - Author: Simon Byrne <simon.byrne@HIDDEN> - AuthorDate: Tue Jan 10 14:52:36 2023 -0800 - Commit: GitHub <noreply@HIDDEN> - CommitDate: Tue Jan 10 17:52:36 2023 -0500 - - update MPFR to 4.2.0 (#48165) - - Co-authored-by: Mosè Giordano <giordano@HIDDEN> - - 6 files changed, 112 insertions(+), 79 deletions(-) - base/mpfr.jl | 34 ++++++++++++++-- - deps/checksums/mpfr | 68 ++++++++++++++++---------------- - deps/mpfr.version | 2 +- - stdlib/MPFR_jll/Project.toml | 2 +- - stdlib/MPFR_jll/test/runtests.jl | 2 +- - test/math.jl | 83 +++++++++++++++++++++------------------- - - -diff -ur julia-1.8.3-orig/base/mpfr.jl julia-1.8.3-patch/base/mpfr.jl ---- julia-1.8.3-orig/base/mpfr.jl 2023-04-13 17:50:58.394891391 +0200 -+++ julia-1.8.3-patch/base/mpfr.jl 2023-04-13 20:42:52.551833467 +0200 -@@ -16,7 +16,8 @@ - cosh, sinh, tanh, sech, csch, coth, acosh, asinh, atanh, lerpi, - cbrt, typemax, typemin, unsafe_trunc, floatmin, floatmax, rounding, - setrounding, maxintfloat, widen, significand, frexp, tryparse, iszero, -- isone, big, _string_n, decompose -+ isone, big, _string_n, decompose, minmax, -+ sinpi, cospi, sincospi, sind, cosd, tand, asind, acosd, atand - - import ..Rounding: rounding_raw, setrounding_raw - -@@ -745,7 +746,7 @@ - end - - # Functions for which NaN results are converted to DomainError, following Base --for f in (:sin, :cos, :tan, :sec, :csc, :acos, :asin, :atan, :acosh, :asinh, :atanh) -+for f in (:sin, :cos, :tan, :sec, :csc, :acos, :asin, :atan, :acosh, :asinh, :atanh, :sinpi, :cospi) - @eval begin - function ($f)(x::BigFloat) - isnan(x) && return x -@@ -756,6 +757,7 @@ - end - end - end -+sincospi(x::BigFloat) = (sinpi(x), cospi(x)) - - function atan(y::BigFloat, x::BigFloat) - z = BigFloat() -@@ -763,6 +765,32 @@ - return z - end - -+# degree functions -+for f in (:sin, :cos, :tan) -+ @eval begin -+ function ($(Symbol(f,:d)))(x::BigFloat) -+ isnan(x) && return x -+ z = BigFloat() -+ ccall(($(string(:mpfr_,f,:u)), :libmpfr), Int32, (Ref{BigFloat}, Ref{BigFloat}, Culong, MPFRRoundingMode), z, x, 360, ROUNDING_MODE[]) -+ isnan(z) && throw(DomainError(x, "NaN result for non-NaN input.")) -+ return z -+ end -+ function ($(Symbol(:a,f,:d)))(x::BigFloat) -+ isnan(x) && return x -+ z = BigFloat() -+ ccall(($(string(:mpfr_a,f,:u)), :libmpfr), Int32, (Ref{BigFloat}, Ref{BigFloat}, Culong, MPFRRoundingMode), z, x, 360, ROUNDING_MODE[]) -+ isnan(z) && throw(DomainError(x, "NaN result for non-NaN input.")) -+ return z -+ end -+ end -+end -+function atand(y::BigFloat, x::BigFloat) -+ z = BigFloat() -+ ccall((:mpfr_atan2u, :libmpfr), Int32, (Ref{BigFloat}, Ref{BigFloat}, Ref{BigFloat}, Culong, MPFRRoundingMode), z, y, x, 360, ROUNDING_MODE[]) -+ return z -+end -+ -+ - # Utility functions - ==(x::BigFloat, y::BigFloat) = ccall((:mpfr_equal_p, :libmpfr), Int32, (Ref{BigFloat}, Ref{BigFloat}), x, y) != 0 - <=(x::BigFloat, y::BigFloat) = ccall((:mpfr_lessequal_p, :libmpfr), Int32, (Ref{BigFloat}, Ref{BigFloat}), x, y) != 0 -@@ -1018,7 +1046,7 @@ - isfinite(x) || return string(Float64(x)) - _prettify_bigfloat(string_mpfr(x, fmt)) - end --_string(x::BigFloat) = _string(x, "%.Re") -+_string(x::BigFloat) = _string(x, "%Re") - _string(x::BigFloat, k::Integer) = _string(x, "%.$(k)Re") - - string(b::BigFloat) = _string(b) -diff -ur julia-1.8.3-orig/test/math.jl julia-1.8.3-patch/test/math.jl ---- julia-1.8.3-orig/test/math.jl 2023-04-13 17:50:58.382891276 +0200 -+++ julia-1.8.3-patch/test/math.jl 2023-04-13 21:13:55.377279761 +0200 -@@ -411,47 +411,51 @@ - @test rad2deg(pi + (pi/3)*im) ≈ 180 + 60im - end - -+# ensure zeros are signed the same -+⩲(x,y) = typeof(x) == typeof(y) && x == y && signbit(x) == signbit(y) -+⩲(x::Tuple, y::Tuple) = length(x) == length(y) && all(map(⩲,x,y)) -+ - @testset "degree-based trig functions" begin -- @testset "$T" for T = (Float32,Float64,Rational{Int}) -+ @testset "$T" for T = (Float32,Float64,Rational{Int},BigFloat) - fT = typeof(float(one(T))) - fTsc = typeof( (float(one(T)), float(one(T))) ) - for x = -400:40:400 -- @test sind(convert(T,x))::fT ≈ convert(fT,sin(pi/180*x)) atol=eps(deg2rad(convert(fT,x))) -- @test cosd(convert(T,x))::fT ≈ convert(fT,cos(pi/180*x)) atol=eps(deg2rad(convert(fT,x))) -+ @test sind(convert(T,x))::fT ≈ sin(pi*convert(fT,x)/180) atol=eps(deg2rad(convert(fT,x))) -+ @test cosd(convert(T,x))::fT ≈ cos(pi*convert(fT,x)/180) atol=eps(deg2rad(convert(fT,x))) - - s,c = sincosd(convert(T,x)) -- @test s::fT ≈ convert(fT,sin(pi/180*x)) atol=eps(deg2rad(convert(fT,x))) -- @test c::fT ≈ convert(fT,cos(pi/180*x)) atol=eps(deg2rad(convert(fT,x))) -+ @test s::fT ≈ sin(pi*convert(fT,x)/180) atol=eps(deg2rad(convert(fT,x))) -+ @test c::fT ≈ cos(pi*convert(fT,x)/180) atol=eps(deg2rad(convert(fT,x))) - end - @testset "sind" begin -- @test sind(convert(T,0.0))::fT === zero(fT) -- @test sind(convert(T,180.0))::fT === zero(fT) -- @test sind(convert(T,360.0))::fT === zero(fT) -- T != Rational{Int} && @test sind(convert(T,-0.0))::fT === -zero(fT) -- @test sind(convert(T,-180.0))::fT === -zero(fT) -- @test sind(convert(T,-360.0))::fT === -zero(fT) -+ @test sind(convert(T,0.0))::fT ⩲ zero(fT) -+ @test sind(convert(T,180.0))::fT ⩲ zero(fT) -+ @test sind(convert(T,360.0))::fT ⩲ zero(fT) -+ T != Rational{Int} && @test sind(convert(T,-0.0))::fT ⩲ -zero(fT) -+ @test sind(convert(T,-180.0))::fT ⩲ -zero(fT) -+ @test sind(convert(T,-360.0))::fT ⩲ -zero(fT) - if T <: AbstractFloat - @test isnan(sind(T(NaN))) - end - end - @testset "cosd" begin -- @test cosd(convert(T,90))::fT === zero(fT) -- @test cosd(convert(T,270))::fT === zero(fT) -- @test cosd(convert(T,-90))::fT === zero(fT) -- @test cosd(convert(T,-270))::fT === zero(fT) -+ @test cosd(convert(T,90))::fT ⩲ zero(fT) -+ @test cosd(convert(T,270))::fT ⩲ zero(fT) -+ @test cosd(convert(T,-90))::fT ⩲ zero(fT) -+ @test cosd(convert(T,-270))::fT ⩲ zero(fT) - if T <: AbstractFloat - @test isnan(cosd(T(NaN))) - end - end - @testset "sincosd" begin -- @test sincosd(convert(T,-360))::fTsc === ( -zero(fT), one(fT) ) -- @test sincosd(convert(T,-270))::fTsc === ( one(fT), zero(fT) ) -- @test sincosd(convert(T,-180))::fTsc === ( -zero(fT), -one(fT) ) -- @test sincosd(convert(T, -90))::fTsc === ( -one(fT), zero(fT) ) -- @test sincosd(convert(T, 0))::fTsc === ( zero(fT), one(fT) ) -- @test sincosd(convert(T, 90))::fTsc === ( one(fT), zero(fT) ) -- @test sincosd(convert(T, 180))::fTsc === ( zero(fT), -one(fT) ) -- @test sincosd(convert(T, 270))::fTsc === ( -one(fT), zero(fT) ) -+ @test sincosd(convert(T,-360))::fTsc ⩲ ( -zero(fT), one(fT) ) -+ @test sincosd(convert(T,-270))::fTsc ⩲ ( one(fT), zero(fT) ) -+ @test sincosd(convert(T,-180))::fTsc ⩲ ( -zero(fT), -one(fT) ) -+ @test sincosd(convert(T, -90))::fTsc ⩲ ( -one(fT), zero(fT) ) -+ @test sincosd(convert(T, 0))::fTsc ⩲ ( zero(fT), one(fT) ) -+ @test sincosd(convert(T, 90))::fTsc ⩲ ( one(fT), zero(fT) ) -+ @test sincosd(convert(T, 180))::fTsc ⩲ ( zero(fT), -one(fT) ) -+ @test sincosd(convert(T, 270))::fTsc ⩲ ( -one(fT), zero(fT) ) - if T <: AbstractFloat - @test_throws DomainError sincosd(T(Inf)) - @test all(isnan.(sincosd(T(NaN)))) -@@ -463,22 +467,22 @@ - "sincospi" => (x->sincospi(x)[1], x->sincospi(x)[2]) - ) - @testset "pi * $x" for x = -3:0.3:3 -- @test sinpi(convert(T,x))::fT ≈ convert(fT,sin(pi*x)) atol=eps(pi*convert(fT,x)) -- @test cospi(convert(T,x))::fT ≈ convert(fT,cos(pi*x)) atol=eps(pi*convert(fT,x)) -+ @test sinpi(convert(T,x))::fT ≈ sin(pi*convert(fT,x)) atol=eps(pi*convert(fT,x)) -+ @test cospi(convert(T,x))::fT ≈ cos(pi*convert(fT,x)) atol=eps(pi*convert(fT,x)) - end - -- @test sinpi(convert(T,0.0))::fT === zero(fT) -- @test sinpi(convert(T,1.0))::fT === zero(fT) -- @test sinpi(convert(T,2.0))::fT === zero(fT) -- T != Rational{Int} && @test sinpi(convert(T,-0.0))::fT === -zero(fT) -- @test sinpi(convert(T,-1.0))::fT === -zero(fT) -- @test sinpi(convert(T,-2.0))::fT === -zero(fT) -+ @test sinpi(convert(T,0.0))::fT ⩲ zero(fT) -+ @test sinpi(convert(T,1.0))::fT ⩲ zero(fT) -+ @test sinpi(convert(T,2.0))::fT ⩲ zero(fT) -+ T != Rational{Int} && @test sinpi(convert(T,-0.0))::fT ⩲ -zero(fT) -+ @test sinpi(convert(T,-1.0))::fT ⩲ -zero(fT) -+ @test sinpi(convert(T,-2.0))::fT ⩲ -zero(fT) - @test_throws DomainError sinpi(convert(T,Inf)) - -- @test cospi(convert(T,0.5))::fT === zero(fT) -- @test cospi(convert(T,1.5))::fT === zero(fT) -- @test cospi(convert(T,-0.5))::fT === zero(fT) -- @test cospi(convert(T,-1.5))::fT === zero(fT) -+ @test cospi(convert(T,0.5))::fT ⩲ zero(fT) -+ @test cospi(convert(T,1.5))::fT ⩲ zero(fT) -+ @test cospi(convert(T,-0.5))::fT ⩲ zero(fT) -+ @test cospi(convert(T,-1.5))::fT ⩲ zero(fT) - @test_throws DomainError cospi(convert(T,Inf)) - end - @testset "Check exact values" begin -@@ -489,8 +493,8 @@ - @test sincospi(one(T)/convert(T,6))[1] == 0.5 - @test_throws DomainError sind(convert(T,Inf)) - @test_throws DomainError cosd(convert(T,Inf)) -- T != Float32 && @test cospi(one(T)/convert(T,3)) == 0.5 -- T != Float32 && @test sincospi(one(T)/convert(T,3))[2] == 0.5 -+ fT == Float64 && @test isapprox(cospi(one(T)/convert(T,3)), 0.5) -+ fT == Float64 && @test isapprox(sincospi(one(T)/convert(T,3))[2], 0.5) - T == Rational{Int} && @test sinpi(5//6) == 0.5 - T == Rational{Int} && @test sincospi(5//6)[1] == 0.5 - end -@@ -538,8 +542,8 @@ - end - end - end -- @test @inferred(sinc(0//1)) === 1.0 -- @test @inferred(cosc(0//1)) === -0.0 -+ @test @inferred(sinc(0//1)) ⩲ 1.0 -+ @test @inferred(cosc(0//1)) ⩲ -0.0 - - # test right before/after thresholds of Taylor series - @test sinc(0.001) ≈ 0.999998355066745 rtol=1e-15 base-commit: f5449685143be0805a8a9b54ddecee94e368c6e9 -- 2.46.0
Ludovic Courtès <ludo@HIDDEN>
:efraim@HIDDEN, zimon.toutoune@HIDDEN, guix-patches@HIDDEN
.
Full text available.efraim@HIDDEN, zimon.toutoune@HIDDEN, guix-patches@HIDDEN
:bug#73197
; Package guix-patches
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.