hgext/journal.py
changeset 35000 135edf120d76
parent 33923 e6d421566906
child 35207 d210723b73e5
equal deleted inserted replaced
34999:c4b769bc86da 35000:135edf120d76
    28     extensions,
    28     extensions,
    29     hg,
    29     hg,
    30     localrepo,
    30     localrepo,
    31     lock,
    31     lock,
    32     node,
    32     node,
       
    33     pycompat,
    33     registrar,
    34     registrar,
    34     util,
    35     util,
    35 )
    36 )
    36 
    37 
    37 from . import share
    38 from . import share
   131 def _mergeentriesiter(*iterables, **kwargs):
   132 def _mergeentriesiter(*iterables, **kwargs):
   132     """Given a set of sorted iterables, yield the next entry in merged order
   133     """Given a set of sorted iterables, yield the next entry in merged order
   133 
   134 
   134     Note that by default entries go from most recent to oldest.
   135     Note that by default entries go from most recent to oldest.
   135     """
   136     """
   136     order = kwargs.pop('order', max)
   137     order = kwargs.pop(r'order', max)
   137     iterables = [iter(it) for it in iterables]
   138     iterables = [iter(it) for it in iterables]
   138     # this tracks still active iterables; iterables are deleted as they are
   139     # this tracks still active iterables; iterables are deleted as they are
   139     # exhausted, which is why this is a dictionary and why each entry also
   140     # exhausted, which is why this is a dictionary and why each entry also
   140     # stores the key. Entries are mutable so we can store the next value each
   141     # stores the key. Entries are mutable so we can store the next value each
   141     # time.
   142     # time.
   456     switches to alter the log output for these.
   457     switches to alter the log output for these.
   457 
   458 
   458     `hg journal -T json` can be used to produce machine readable output.
   459     `hg journal -T json` can be used to produce machine readable output.
   459 
   460 
   460     """
   461     """
       
   462     opts = pycompat.byteskwargs(opts)
   461     name = '.'
   463     name = '.'
   462     if opts.get('all'):
   464     if opts.get('all'):
   463         if args:
   465         if args:
   464             raise error.Abort(
   466             raise error.Abort(
   465                 _("You can't combine --all and filtering on a name"))
   467                 _("You can't combine --all and filtering on a name"))