##// END OF EJS Templates
debug-revlog: details about non-ancestors delta-bases...
debug-revlog: details about non-ancestors delta-bases Deltas against a base that is not an ancestor of the revision that owns this delta are notable. For example, they introduce complexity during the bundling process as the base might not exist on the unbundling side. We detect them in `hg debugrevlog` and print information about them.

File last commit:

r49801:642e31cb default
r50556:511106bc default
Show More
util.py
37 lines | 1009 B | text/x-python | PythonLexer
# util.py - Utilities for declaring interfaces.
#
# Copyright 2018 Gregory Szorc <gregory.szorc@gmail.com>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
# zope.interface imposes a run-time cost due to module import overhead and
# bookkeeping for declaring interfaces. So, we use stubs for various
# zope.interface primitives unless instructed otherwise.
from .. import encoding
if encoding.environ.get(b'HGREALINTERFACES'):
from ..thirdparty.zope import interface as zi
Attribute = zi.Attribute
Interface = zi.Interface
implementer = zi.implementer
else:
class Attribute:
def __init__(self, __name__, __doc__=b''):
pass
class Interface:
def __init__(
self, name, bases=(), attrs=None, __doc__=None, __module__=None
):
pass
def implementer(*ifaces):
def wrapper(cls):
return cls
return wrapper