Mercurial > hg
view mercurial/interfaces/util.py @ 46779:49fd21f32695
revlog: guarantee that p1 != null if a non-null parent exists
This change does not affect the hashing (which already did this
transformation), but can change the log output in the rare case where
this behavior was observed in repositories. The change can simplify
iteration code where regular changesets and merges are distinct
branches.
Differential Revision: https://phab.mercurial-scm.org/D10150
author | Joerg Sonnenberger <joerg@bec.de> |
---|---|
date | Wed, 10 Mar 2021 18:09:21 +0100 |
parents | 687b865b95ad |
children | 6000f5b25c9b |
line wrap: on
line source
# 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 __future__ import absolute_import 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(object): def __init__(self, __name__, __doc__=b''): pass class Interface(object): def __init__( self, name, bases=(), attrs=None, __doc__=None, __module__=None ): pass def implementer(*ifaces): def wrapper(cls): return cls return wrapper