Mercurial > hg
comparison mercurial/localrepo.py @ 40729:c93d046d4300
extensions: add "uipopulate" hook, called per instance, not per process
In short, this is the "reposetup" function for ui. It allows us to modify
ui attributes without extending ui.__class__. Before, the only way to do
that was to abuse the config dictionary, which is copied across ui instances.
See the next patch for usage example.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 12 Nov 2018 21:10:51 +0900 |
parents | 5bcf264bb1a0 |
children | 300f8564220f |
comparison
equal
deleted
inserted
replaced
40728:2cd5f1fac788 | 40729:c93d046d4300 |
---|---|
452 # that influence repository construction. Attempt to load it and | 452 # that influence repository construction. Attempt to load it and |
453 # process any new extensions that it may have pulled in. | 453 # process any new extensions that it may have pulled in. |
454 if loadhgrc(ui, wdirvfs, hgvfs, requirements): | 454 if loadhgrc(ui, wdirvfs, hgvfs, requirements): |
455 afterhgrcload(ui, wdirvfs, hgvfs, requirements) | 455 afterhgrcload(ui, wdirvfs, hgvfs, requirements) |
456 extensions.loadall(ui) | 456 extensions.loadall(ui) |
457 extensions.populateui(ui) | |
457 | 458 |
458 # Set of module names of extensions loaded for this repository. | 459 # Set of module names of extensions loaded for this repository. |
459 extensionmodulenames = {m.__name__ for n, m in extensions.extensions(ui)} | 460 extensionmodulenames = {m.__name__ for n, m in extensions.extensions(ui)} |
460 | 461 |
461 supportedrequirements = gathersupportedrequirements(ui) | 462 supportedrequirements = gathersupportedrequirements(ui) |