From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: Treating tests as special case Date: Thu, 05 Apr 2018 12:26:09 +0200 Message-ID: <87efjuj6f2.fsf@elephly.net> References: <20180405052439.GA30291@thebird.nl> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:53891) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f426H-0001fQ-Ct for guix-devel@gnu.org; Thu, 05 Apr 2018 06:26:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f426D-0000us-BI for guix-devel@gnu.org; Thu, 05 Apr 2018 06:26:37 -0400 Received: from sender-of-o51.zoho.com ([135.84.80.216]:21066) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1f426D-0000sD-2l for guix-devel@gnu.org; Thu, 05 Apr 2018 06:26:33 -0400 In-reply-to: <20180405052439.GA30291@thebird.nl> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Pjotr Prins Cc: guix-devel@gnu.org Hi Pjotr, > And this hooks in with my main peeve about building from source. The > building takes long enough. Testing takes incredibly long with many > packages (especially language related) and are usually single core > (unlike the build). I share the sentiment. Waiting for tests to complete can be quite annoying. An idea that came up on #guix several months ago was to separate the building of packages from testing. Testing would be a continuation of the build, like grafts could be envisioned as a continuation of the build. Packages with tests would then become leaf nodes in the graph =E2=80=94 not= hing would depend on the packages with tests, only on the packages without tests. Building the test continuation would thus be optional and could be something that=E2=80=99s done by the build farm but not by users who nee= d to compile a package for lack of substitutes. The implementation details are tricky: can it be a proper continuation from the time after the build phase but before the install phase? Would this involve reverting to a snapshot of the build container? There are packages that force =E2=80=9Cmake check=E2=80=9D before =E2=80=9Cmake insta= ll=E2=80=9D =E2=80=94 do we patch them or ignore them? Will every package then produce one extra derivation for tests? -- Ricardo GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC https://elephly.net