Mercurial > hg
view contrib/python-hook-examples.py @ 46517:eb36f7a71291
gendoc: add support for loading extensions from config settings
We manage our installation and ship some extensions, enabled by default for our
users, that are in hgext3rd or other directories not scanned by this tool by
default. We want to generate docs during the build process, and having those
docs include the extensions that users don't have to manually enable is
desirable.
This is *not* desirable for the normal build process, however, and should never
be enabled by default.
Differential Revision: https://phab.mercurial-scm.org/D9989
author | Kyle Lippincott <spectral@google.com> |
---|---|
date | Fri, 12 Feb 2021 11:06:56 -0800 |
parents | 89a2afe31e82 |
children | 6000f5b25c9b |
line wrap: on
line source
''' Examples of useful python hooks for Mercurial. ''' from __future__ import absolute_import from mercurial import ( patch, util, ) def diffstat(ui, repo, **kwargs): """Example usage: [hooks] commit.diffstat = python:/path/to/this/file.py:diffstat changegroup.diffstat = python:/path/to/this/file.py:diffstat """ if kwargs.get('parent2'): return node = kwargs['node'] first = repo[node].p1().node() if 'url' in kwargs: last = repo.changelog.tip() else: last = node diff = patch.diff(repo, first, last) ui.write(patch.diffstat(util.iterlines(diff)))