##// END OF EJS Templates
narrow: validate patterns returned by expandnarrow...
narrow: validate patterns returned by expandnarrow Remotes could supply malicious or invalid patterns. We should validate them as soon as possible. Differential Revision: https://phab.mercurial-scm.org/D4523

File last commit:

r39565:e82da0fc default
r39568:55eea298 default
Show More
narrowrepo.py
36 lines | 1.1 KiB | text/x-python | PythonLexer
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096 # narrowrepo.py - repository which supports narrow revlogs, lazy loading
#
# Copyright 2017 Google, Inc.
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
from __future__ import absolute_import
from . import (
Kyle Lippincott
narrow: only wrap dirstate functions once, instead of per-reposetup...
r38142 narrowdirstate,
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096 narrowrevlog,
Martin von Zweigbergk
narrow: move wire proto capabilities to narrowwirepeer...
r39565 narrowwirepeer,
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096 )
Martin von Zweigbergk
narrow: move checking for narrow requirement into _narrowmatch()...
r36484 def wraprepo(repo):
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096 """Enables narrow clone functionality on a single local repository."""
class narrowrepository(repo.__class__):
def file(self, f):
fl = super(narrowrepository, self).file(f)
narrowrevlog.makenarrowfilelog(fl, self.narrowmatch())
return fl
Kyle Lippincott
narrow: only wrap dirstate functions once, instead of per-reposetup...
r38142 def _makedirstate(self):
dirstate = super(narrowrepository, self)._makedirstate()
return narrowdirstate.wrapdirstate(self, dirstate)
Martin von Zweigbergk
narrow: check "narrow" wire protocol capability, not bundle2 capability...
r39564 def peer(self):
peer = super(narrowrepository, self).peer()
Martin von Zweigbergk
narrow: move wire proto capabilities to narrowwirepeer...
r39565 peer._caps.add(narrowwirepeer.NARROWCAP)
peer._caps.add(narrowwirepeer.ELLIPSESCAP)
Martin von Zweigbergk
narrow: check "narrow" wire protocol capability, not bundle2 capability...
r39564 return peer
Augie Fackler
narrow: import experimental extension from narrowhg revision cb51d673e9c5...
r36096 repo.__class__ = narrowrepository