From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxim Cournoyer Subject: bug#33100: [libssh] fatal: dumb http transport does not support shallow capabilities Date: Sat, 20 Oct 2018 23:24:24 -0400 Message-ID: <87va5w3rtj.fsf@gmail.com> References: <87zhv94as1.fsf@gmail.com> <87in1w90iu.fsf@gnu.org> 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]:37174) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gE4MU-0003Ab-4d for bug-guix@gnu.org; Sat, 20 Oct 2018 23:25:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gE4MQ-000766-SX for bug-guix@gnu.org; Sat, 20 Oct 2018 23:25:06 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:57673) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gE4MQ-00075y-OT for bug-guix@gnu.org; Sat, 20 Oct 2018 23:25:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gE4MQ-00047F-Jy for bug-guix@gnu.org; Sat, 20 Oct 2018 23:25:02 -0400 Sender: "Debbugs-submit" Resent-To: bug-guix@gnu.org Resent-Message-ID: In-Reply-To: <87in1w90iu.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Sat, 20 Oct 2018 16:05:13 +0200") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 33100-done@debbugs.gnu.org Hi, ludo@gnu.org (Ludovic Court=C3=A8s) writes: > Hello! > > Maxim Cournoyer skribis: > >> guix build --check /gnu/store/f0i7bdcg1lksr9dhz0cidi3ym8r8a5wl-libssh-0.= 7.6-checkout.drv >> building /gnu/store/f0i7bdcg1lksr9dhz0cidi3ym8r8a5wl-libssh-0.7.6-checko= ut.drv... >> Initialized empty Git repository in /gnu/store/gqyjgpvzqy55dzibm59530fsx= 21dpiz4-libssh-0.7.6-checkout/.git/ >> fatal: dumb http transport does not support shallow capabilities > > On closer inspection, it seems that there=E2=80=99s nothing =E2=80=9Cfata= l=E2=80=9D here: if you > let it run for a while (1 or 2 minutes), it ends up silently cloning the > whole repo and the derivation build eventually succeeds. It did end up working fine, although it took a large amout of time for doing what seems to be a checkout (4 min 46 s). I did some experiments and this is really the time it took to do a full clone of the libssh project. --8<---------------cut here---------------start------------->8--- time git clone git://git.libssh.org/projects/libssh.git libssh Cloning into 'libssh'... remote: Enumerating objects: 28264, done. remote: Counting objects: 100% (28264/28264), done. remote: Compressing objects: 100% (11718/11718), done. remote: Total 28264 (delta 20985), reused 21830 (delta 16350)s=20=20=20=20 Receiving objects: 100% (28264/28264), 5.21 MiB | 263.00 KiB/s, done. Resolving deltas: 100% (20985/20985), done. real 4m19.419s user 0m3.272s sys 0m0.540s --8<---------------cut here---------------end--------------->8--- It's a bit of a shame, given that the shallow clone takes about 2 seconds (!): --8<---------------cut here---------------start------------->8--- time git clone --depth 1 git://git.libssh.org/projects/libssh.git libssh Cloning into 'libssh'... remote: Enumerating objects: 367, done. remote: Counting objects: 100% (367/367), done. remote: Compressing objects: 100% (358/358), done. remote: Total 367 (delta 39), reused 53 (delta 1) Receiving objects: 100% (367/367), 704.23 KiB | 728.00 KiB/s, done. Resolving deltas: 100% (39/39), done. real 0m2.028s user 0m0.160s sys 0m0.071s --8<---------------cut here---------------end--------------->8--- Based on the discussion here: https://github.com/CocoaPods/CocoaPods/issues/6270, it would seem this means that the libssh git server doesn't support the newer "smart HTTP transport" and the git client bails out (IIUC). At least in our case the guile-ssh library seems to already correctly fallback to doing a full clone. Perhaps just clearer messages would have helped here also ('Failed to do a shallow git clone due to ~error message~, falling back to a full clone'). Such a change would need to be made in guile-git IIUC. I'll close this bug now; thank you! Maxim