Mercurial > public > mercurial-scm > hg
comparison mercurial/localrepo.py @ 49753:ff7134e03629
peer: have `repo.peer` take an optional `path` argument
We are ready to start to actually set the value now.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sat, 03 Dec 2022 00:16:07 +0100 |
parents | a6e2a668c746 |
children | 376395868b7b |
comparison
equal
deleted
inserted
replaced
49752:611ccb631cbc | 49753:ff7134e03629 |
---|---|
301 | 301 |
302 @interfaceutil.implementer(repository.ipeercommands) | 302 @interfaceutil.implementer(repository.ipeercommands) |
303 class localpeer(repository.peer): | 303 class localpeer(repository.peer): |
304 '''peer for a local repo; reflects only the most recent API''' | 304 '''peer for a local repo; reflects only the most recent API''' |
305 | 305 |
306 def __init__(self, repo, caps=None): | 306 def __init__(self, repo, caps=None, path=None): |
307 super(localpeer, self).__init__(repo.ui) | 307 super(localpeer, self).__init__(repo.ui, path=path) |
308 | 308 |
309 if caps is None: | 309 if caps is None: |
310 caps = moderncaps.copy() | 310 caps = moderncaps.copy() |
311 self._repo = repo.filtered(b'served') | 311 self._repo = repo.filtered(b'served') |
312 | 312 |
449 @interfaceutil.implementer(repository.ipeerlegacycommands) | 449 @interfaceutil.implementer(repository.ipeerlegacycommands) |
450 class locallegacypeer(localpeer): | 450 class locallegacypeer(localpeer): |
451 """peer extension which implements legacy methods too; used for tests with | 451 """peer extension which implements legacy methods too; used for tests with |
452 restricted capabilities""" | 452 restricted capabilities""" |
453 | 453 |
454 def __init__(self, repo): | 454 def __init__(self, repo, path=None): |
455 super(locallegacypeer, self).__init__(repo, caps=legacycaps) | 455 super(locallegacypeer, self).__init__(repo, caps=legacycaps, path=path) |
456 | 456 |
457 # Begin of baselegacywirecommands interface. | 457 # Begin of baselegacywirecommands interface. |
458 | 458 |
459 def between(self, pairs): | 459 def between(self, pairs): |
460 return self._repo.between(pairs) | 460 return self._repo.between(pairs) |
1631 return sub.checknested(subpath[len(prefix) + 1 :]) | 1631 return sub.checknested(subpath[len(prefix) + 1 :]) |
1632 else: | 1632 else: |
1633 parts.pop() | 1633 parts.pop() |
1634 return False | 1634 return False |
1635 | 1635 |
1636 def peer(self): | 1636 def peer(self, path=None): |
1637 return localpeer(self) # not cached to avoid reference cycle | 1637 return localpeer(self, path=path) # not cached to avoid reference cycle |
1638 | 1638 |
1639 def unfiltered(self): | 1639 def unfiltered(self): |
1640 """Return unfiltered version of the repository | 1640 """Return unfiltered version of the repository |
1641 | 1641 |
1642 Intended to be overwritten by filtered repo.""" | 1642 Intended to be overwritten by filtered repo.""" |