https://bz.mercurial-scm.org/show_bug.cgi?id=5896

            Bug ID: 5896
           Summary: narrow doesn't play well with share
           Product: Mercurial
           Version: 4.6rc0
          Hardware: PC
                OS: Linux
            Status: UNCONFIRMED
          Severity: feature
          Priority: wish
         Component: share
          Assignee: bugzi...@mercurial-scm.org
          Reporter: idls...@gmail.com
                CC: mercurial-devel@mercurial-scm.org

This is actually a problem with "narrow", I've only listed "share", because
"narrow" is not on the list.

When using share to create another working copy and then pulling from the
remote I'm getting this exception.
It happens because narrow is looking for .hg/narrowspec.

How to reproduce:
1. Go to a working copy using narrow
2. hg --config extensions.share= share . ../new_working_copy
3. cd ../new_working_copy
4. hg pull


Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/mercurial/scmutil.py", line 160,
in callcatch
    return func()
  File "/usr/local/lib/python2.7/dist-packages/mercurial/dispatch.py", line
341, in _runcatchfunc
    return _dispatch(req)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/dispatch.py", line
971, in _dispatch
    cmdpats, cmdoptions)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/dispatch.py", line
727, in runcommand
    ret = _runcommand(ui, options, cmd, d)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/dispatch.py", line
979, in _runcommand
    return cmdfunc()
  File "/usr/local/lib/python2.7/dist-packages/mercurial/dispatch.py", line
968, in <lambda>
    d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/util.py", line 1553,
in check
    return func(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/util.py", line 1553,
in check
    return func(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/hgext/narrow/narrowcommands.py",
line 127, in pullnarrowcmd
    return orig(ui, repo, *args, **opts)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/util.py", line 1553,
in check
    return func(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/commands.py", line
4060, in pull
    opargs=pullopargs).cgresult
  File "/usr/local/lib/python2.7/dist-packages/mercurial/exchange.py", line
1489, in pull
    _fullpullbundle2(repo, pullop)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/exchange.py", line
1429, in _fullpullbundle2
    _pullbundle2(pullop)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/exchange.py", line
1700, in _pullbundle2
    _pullbookmarks(pullop)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/exchange.py", line
1803, in _pullbookmarks
    explicit=pullop.explicitbookmarks)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/bookmarks.py", line
642, in updatefromremote
    tr = trfunc()
  File "/usr/local/lib/python2.7/dist-packages/mercurial/exchange.py", line
1370, in gettransaction
    return self.trmanager.transaction()
  File "/usr/local/lib/python2.7/dist-packages/mercurial/exchange.py", line
1387, in transaction
    self._tr = self.repo.transaction(trname)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/localrepo.py", line
1247, in transaction
    self._writejournal(desc)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/localrepo.py", line
147, in wrapper
    return orig(repo.unfiltered(), *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/localrepo.py", line
1449, in _writejournal
    self.dirstate.savebackup(None, 'journal.dirstate')
  File "/usr/local/lib/python2.7/dist-packages/mercurial/extensions.py", line
359, in closure
    return func(*(args + a), **kw)
  File "/usr/local/lib/python2.7/dist-packages/hgext/narrow/narrowdirstate.py",
line 69, in savebackup
    orig(self, tr, backupname)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/extensions.py", line
359, in closure
    return func(*(args + a), **kw)
  File "/usr/local/lib/python2.7/dist-packages/hgext/narrow/narrowdirstate.py",
line 74, in savebackup
    self._opener.join(narrowbackupname), hardlink=True)
  File "/usr/local/lib/python2.7/dist-packages/mercurial/util.py", line 1615,
in copyfile
    shutil.copyfile(src, dest)
  File "/usr/lib/python2.7/shutil.py", line 96, in copyfile
    with open(src, 'rb') as fsrc:
IOError: [Errno 2] No such file or directory: '..../.hg/narrowspec'
abort: No such file or directory: ..../.hg/narrowspec

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Reply via email to