IIRC that method should be implemented in the trunk version of dulwich.
anatoly techtonik <[email protected]> wrote: >On Thu, Dec 19, 2013 at 2:11 AM, Jelmer Vernooij <[email protected]> >wrote: >> On Wed, Dec 18, 2013 at 10:19:33PM +0300, anatoly techtonik wrote: >>> On Wed, Dec 18, 2013 at 7:12 PM, Jelmer Vernooij <[email protected]> >wrote: >>> > On Wed, Dec 18, 2013 at 05:38:56PM +0300, anatoly techtonik wrote: >>> >> On Wed, Dec 18, 2013 at 3:24 PM, Jelmer Vernooij ><[email protected]> wrote: >>> >> > On Wed, Dec 18, 2013 at 02:36:54PM +0300, anatoly techtonik >wrote: >>> >> >> I try to clone my repository from GitHub with hg-git and it >fails. >>> >> >> Dulwich 1.9.4, Hg-Git 0.5.0, Windows. >>> >> >> Please, CC. >>> >> >> >>> >> >> destination directory: recordscreen >>> >> >> ["git-upload-pack '/techtonik/recordscreen'"] >>> >> >> ** Unknown exception encountered with possibly-broken >third-party >>> >> >> extension hggit >>> >> >> ** which supports versions 2.2.3 of Mercurial. >>> >> >> ** Please disable hggit and try your action again. >>> >> >> ** If that fixes the bug please report it to >>> >> >> https://bitbucket.org/durin42/hg-git/issues >>> >> >> ** Python 2.7.5 (default, May 15 2013, 22:43:36) [MSC v.1500 >32 bit (Intel)] >>> >> >> ** Mercurial Distributed SCM (version 2.8) >>> >> >> ** Extensions loaded: churn, color, convert, evolve, hggit, >strip, mq, >>> >> >> rebase, record >>> >> >> Traceback (most recent call last): >>> >> >> File "hg", line 38, in <module> >>> >> >> File "mercurial\dispatch.pyc", line 28, in run >>> >> >> File "mercurial\dispatch.pyc", line 69, in dispatch >>> >> >> File "mercurial\dispatch.pyc", line 133, in _runcatch >>> >> >> File "mercurial\dispatch.pyc", line 806, in _dispatch >>> >> >> File "mercurial\dispatch.pyc", line 585, in runcommand >>> >> >> File "mercurial\extensions.pyc", line 196, in wrap >>> >> >> File "hgext\color.pyc", line 419, in colorcmd >>> >> >> File "mercurial\dispatch.pyc", line 897, in _runcommand >>> >> >> File "mercurial\dispatch.pyc", line 868, in checkargs >>> >> >> File "mercurial\dispatch.pyc", line 803, in <lambda> >>> >> >> File "mercurial\util.pyc", line 512, in check >>> >> >> File "mercurial\commands.pyc", line 1282, in clone >>> >> >> File "mercurial\hg.pyc", line 372, in clone >>> >> >> File "mercurial\localrepo.pyc", line 2431, in clone >>> >> >> File "C:\hg-git\hggit\hgrepo.py", line 14, in pull >>> >> >> return git.fetch(remote.path, heads) >>> >> >> File "C:\hg-git\hggit\git_handler.py", line 205, in fetch >>> >> >> refs = self.fetch_pack(remote, heads) >>> >> >> File "C:\hg-git\hggit\git_handler.py", line 1016, in >fetch_pack >>> >> >> ret = client.fetch_pack(path, determine_wants, >graphwalker, >>> >> >> f.write, progress.progress) >>> >> >> File "dulwich\client.pyc", line 527, in fetch_pack >>> >> >> File "dulwich\client.pyc", line 144, in read_pkt_refs >>> >> >> File "dulwich\protocol.pyc", line 147, in read_pkt_seq >>> >> >> File "dulwich\protocol.pyc", line 104, in read_pkt_line >>> >> >> ValueError: invalid literal for int() with base 16: 'logi' >>> >> > >>> >> > Can you reproduce it with dulwich clone (without hg-git)? Is >there an easy way >>> >> > for us to reproduce this? >>> >> No. I can't reproduce this error with "dulwich clone". >>> > Can you try patching hg-git so it uses LocalGitClient rather than >>> > SubprocessGitClient? Does that fix the issue? >>> >>> Patched as: >>> diff -r 24b80a953f06 hggit/git_handler.py >>> --- a/hggit/git_handler.py Sun Dec 15 15:25:31 2013 -0500 >>> +++ b/hggit/git_handler.py Wed Dec 18 22:10:41 2013 +0300 >>> @@ -1379,4 +1379,4 @@ >>> return client.HttpGitClient(uri, thin_packs=False), >uri >>> >>> # if its not git or git+ssh, try a local url.. >>> - return client.SubprocessGitClient(thin_packs=False), uri >>> + return client.LocalGitClient(thin_packs=False), uri >>> >>> >> This doesn't actually appear to be the codepath that hg-git is using. >> LocalGitClient doesn't use a protocol at all, so you shouldn't be >> seeing read_pkt_line in the backtrace if it's using LocalGitClient >> rather than SubprocessGitClient. > >Patched with: > >diff -r 24b80a953f06 hggit/git_handler.py >--- a/hggit/git_handler.py Sun Dec 15 15:25:31 2013 -0500 >+++ b/hggit/git_handler.py Wed Jan 01 19:27:39 2014 +0300 >@@ -1365,6 +1365,8 @@ > if port: > client.port = port > >+ transport = client.LocalGitClient >+ return transport(thin_packs=False), path > return transport(host, thin_packs=False, port=port), path > > httpclient = getattr(client, 'HttpGitClient', None) > >Traceback: > >... > File "mercurial\dispatch.pyc", line 868, in checkargs > File "mercurial\dispatch.pyc", line 803, in <lambda> > File "mercurial\util.pyc", line 512, in check > File "mercurial\commands.pyc", line 1286, in clone > File "mercurial\hg.pyc", line 372, in clone > File "mercurial\localrepo.pyc", line 2431, in clone > File "C:\hg-git\hggit\hgrepo.py", line 14, in pull > return git.fetch(remote.path, heads) > File "C:\hg-git\hggit\git_handler.py", line 205, in fetch > refs = self.fetch_pack(remote, heads) > File "C:\hg-git\hggit\git_handler.py", line 1016, in fetch_pack > ret = client.fetch_pack(path, determine_wants, graphwalker, >f.write, progress.progress) > File "dulwich\client.pyc", line 700, in fetch_pack >NotImplementedError: <bound method LocalGitClient.fetch_pack of ><dulwich.client.LocalGitClient object at 0x02765FD0>> > >-- >anatoly t.
_______________________________________________ Mailing list: https://launchpad.net/~dulwich-users Post to : [email protected] Unsubscribe : https://launchpad.net/~dulwich-users More help : https://help.launchpad.net/ListHelp

