From patchwork Sat Jan 18 13:32:36 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Nicol=C3=B2_Balzarotti?= X-Patchwork-Id: 19859 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 7871D17A2D; Sat, 18 Jan 2020 13:33:45 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, T_DKIM_INVALID,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id CF0071794A for ; Sat, 18 Jan 2020 13:33:43 +0000 (GMT) Received: from localhost ([::1]:40344 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1isoER-0000lJ-95 for patchwork@mira.cbaines.net; Sat, 18 Jan 2020 08:33:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42309) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1isoDn-0000GS-Rv for guix-patches@gnu.org; Sat, 18 Jan 2020 08:33:05 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1isoDm-0002pw-Dr for guix-patches@gnu.org; Sat, 18 Jan 2020 08:33:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:34690) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1isoDl-0002pN-Lm for guix-patches@gnu.org; Sat, 18 Jan 2020 08:33:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1isoDl-00070n-K8 for guix-patches@gnu.org; Sat, 18 Jan 2020 08:33:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38546] =?utf-8?b?W05pY29sw7I=?= Balzarotti] [PATCH 00/11] Update julia to 1.3.1, fix precompilation, add HTTP.jl In-Reply-To: <87v9qpvbyr.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me> Resent-From: anothersms@gmail.com (=?utf-8?q?Nicol=C3=B2?= Balzarotti) Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 18 Jan 2020 13:33:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38546 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38546@debbugs.gnu.org Received: via spool by 38546-submit@debbugs.gnu.org id=B38546.157935436726933 (code B ref 38546); Sat, 18 Jan 2020 13:33:01 +0000 Received: (at 38546) by debbugs.gnu.org; 18 Jan 2020 13:32:47 +0000 Received: from localhost ([127.0.0.1]:40663 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1isoDW-00070K-Qq for submit@debbugs.gnu.org; Sat, 18 Jan 2020 08:32:47 -0500 Received: from mail-wr1-f52.google.com ([209.85.221.52]:47051) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1isoDU-000703-CE for 38546@debbugs.gnu.org; Sat, 18 Jan 2020 08:32:45 -0500 Received: by mail-wr1-f52.google.com with SMTP id z7so25179792wrl.13 for <38546@debbugs.gnu.org>; Sat, 18 Jan 2020 05:32:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:references:date:message-id:mime-version :content-transfer-encoding; bh=bW1S8bDWJbJhqaIS9Jdn2qL5jp0mx9Yn5vHV92cDygE=; b=qXtP7yza7RcbY/Ay9ZNKPhosOSy8B37ITIPEDe9ufWqWuk6gGwiYc1RYLSwD+RZUGv z5x8LlH06IFkdogKRW79aMpJ9otxYXpPjj7WD6p5P8ZrGi8zDT8tU0lBdqePknyGV7dR l/I/YAZMbcGp5rPVTFQ82ykr34+1lzHsssfs7E1XsIMN+yHolqrnjRuiV+f4UCtPXg1u N6qAkswmhBhW2MnU95k9euiVEKS1pj1caMnVeRZhZmZoCLwkDMmh/II8S2ZcdRm2wBfN D0qbmJMBy0F5NwkJXpWmT3K7KHy7CsCGkTDxuX/E5hC7hdj6uKIi9gp+soF9/PwHT+MF U0AQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:references:date:message-id :mime-version:content-transfer-encoding; bh=bW1S8bDWJbJhqaIS9Jdn2qL5jp0mx9Yn5vHV92cDygE=; b=PpP6Mq5WRKSxoXrDTeJjj+MIJBp6RJnR+0TDUtAVjbBIHtRBlkHMDA3/tZLxFN9vZ7 9v+71X6lj49nFUOqbkiTxuDPc3YqdnRSJ8+z5bUa9Rpxm4EE7d0up1ud2uguNrT/QjOq 8+0YaLIRL/I7FHoPwWYWyR37Nc5vKTXriMlHgxvb2FBHHvrdNw6lS2VZCmjgipvIkC3p MplLESpXBvEgKwKVnWTFry0DntwU/j9ortuE4cDY0WftUXUBubQlD1eRkrLOmDqPgvxs /Xe4rZ3/uJt5f/1qTjjBVnLW+cqudxr5SzGRM2DCuXYD3DlLUS94mYzSlCEmILnE4705 F4Og== X-Gm-Message-State: APjAAAWnBWBM9PVY7KoewUjiMnXkZrtb13GZr5jGSXvK9XfxbSnmfxis A25dAAlBiDleS0MquAEiogPn2PR0 X-Google-Smtp-Source: APXvYqzYw9d27YPZBCo9mZpcR6HaJwjpphxR9ji+Bfb2AoqIRoJnsAiiyAGWPP9kPbM2ftghFJYEdA== X-Received: by 2002:adf:eb0a:: with SMTP id s10mr8082681wrn.320.1579354358006; Sat, 18 Jan 2020 05:32:38 -0800 (PST) Received: from guixSD (host146-19-dynamic.50-79-r.retail.telecomitalia.it. [79.50.19.146]) by smtp.gmail.com with ESMTPSA id b15sm3359777wmj.13.2020.01.18.05.32.37 for <38546@debbugs.gnu.org> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 18 Jan 2020 05:32:37 -0800 (PST) From: anothersms@gmail.com (=?utf-8?q?Nicol=C3=B2?= Balzarotti) References: <87zhekvqpj.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me> Date: Sat, 18 Jan 2020 14:32:36 +0100 Message-ID: <87sgkcvqiz.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches Ok I had time to look at this again. 1. Package installation can be done both the julia way and the guix way 2. SOURCE_DATE_EPOCH is respected in package precompile timestamp. Other fixes are needed to get reproducible builds, but for now that means that package cache is used. 3. This patch adds some first julia package (HTTP.jl and dependencies) 4. Updated julia to 1.3.1 (latest release). It's working great and the build recipe is simplified a lot. However, some test is failing. The "interesting" part is that when running tests alone, they are working. It seems like the problem arise when tests are run on the _same core_ and not on different cores. I opened a issue upstream for this (https://github.com/JuliaLang/julia/issues/34330), I'll have to look further on it, but for now if it's fine for me this is ready to be merged. I'm sending the patch series here. Thanks, Nicolò Ludovic Courtès writes: > Hi, > > (+Cc: bug report.) > > Nicolò Balzarotti skribis: > >> Ludovic Courtès writes: >> >>> Hi! >>> >>> nixo skribis: >>> >>>> This set of patches improve the state of julia-build-system. >>>> >>>> 1. set path JULIA_LOAD_PATH to enable installing packages, and >>>> JULIA_DEPOT_PATH to allow guix-precompiled cache to be recognized by julia. To >>> >>> These two environment variables are supported upstream, right? >> >> Yes, those variables are documented here: >> https://docs.julialang.org/en/v1/manual/environment-variables/index.html > > Great. > >> Should user be allowed to manually install packages in his own private >> home folder manually? (I just tried with R: R recognize the store is RO >> and ask for an alternative path). I'll try to allow "standard" package >> installation and submit the patch again (also, I just read you other >> comments, so I'll fix everything!) > > I think users should have the option to install packages in the normal > Julia way, without Guix. > >>>> do this, a small "hack" with libfaketime was required (julia decides if the >>>> cache is valid by comparing source ".jl" mtime with cache ".ji" file, in which >>>> julia stores a timestamp. We need to force this timestamp to be equal to the >>>> mtime of guix-store files). >>> >>> OK. This hack shouldn’t break “normal” Julia uses (outside of the >>> store), right? >> You are right, the issue is that julia finds its src (.jl) file to have >> a different (although older) timestamp (because guix fixes the >> mtime). This applies only to cache files placed in the store. Other >> cache files (non-guix installed files) have the right timestamp, so are >> not affected (I don't know if this explanation is clear. The TLDR is: >> with this hack store works without double-precompilation, non-store >> works normally, too). >> However, I'll check if I can make it work with SOURCE_DATE_EPOCH. I >> already read the code responsible for precompilation, so hopefully it >> won't take too much time > > Awesome, thanks! > > Ludo’.