##// END OF EJS Templates
typing: add type hints to the `opener` attributes and arguments of revlog...
typing: add type hints to the `opener` attributes and arguments of revlog When making revlog and filelog classes visible to pytype, it got confused quite a bit in `mercurial/revlogutils/rewrite.py`, thinking it had a plain `Callable`, and flagging additional methods on it like `join()` and `rename()`. I couldn't figure out how it reduced to that (and PyCharm flagged `opener` references as `Any`), but this makes it happy. So make this change before making the classes visible. The vfs class hierarchy is a bit wonky (e.g. `filteredvfs` is not a `vfs`), so this may need to be revisited with a Protocol class that covers all of the `vfs` classes. But for now, everything works.

File last commit:

r51309:3a2df812 default
r52713:71fb6e0a default
Show More
narrowrepo.py
28 lines | 898 B | 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.
Augie Fackler
formatting: blacken the codebase...
r43346 from mercurial import wireprototypes
Pulkit Goyal
narrow: move the wireprotocol narrow capability name to core...
r39969
Augie Fackler
formatting: blacken the codebase...
r43346 from . import narrowdirstate
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__):
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)
Manuel Jacob
pull: add --remote-hidden option and pass it through peer creation...
r51309 def peer(self, *args, **kwds):
peer = super(narrowrepository, self).peer(*args, **kwds)
Pulkit Goyal
wireprotoserver: move narrow capabilities to wireprototypes.py...
r40110 peer._caps.add(wireprototypes.NARROWCAP)
peer._caps.add(wireprototypes.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