Mercurial > hg
view relnotes/5.6 @ 46492:7289eac777ec stable
hooks: introduce a `:run-with-plain` option for hooks
This option control if HGPLAIN should be set or not for the hooks. This is the
first step to give user some control of the HGPLAIN setting for they hooks.
Some hooks (eg: consistency checking) deserve to be run with HGPLAIN, some other
(eg: user set visual helper) might need to respect the user config and setting.
So both usage are valid and we need to restore the ability to run -without-
HGPLAIN that got lost in Mercurial 5.7.
This does not offer a way to restore the pre-5.7 behavior yet (respect whatever
HGPLAIN setting from the shell), this will be dealt with in the next changeset.
The option name is a bit verbose because implementing this highlighs the need
for another option: `:run-if-plain`. That would make it possible for some hooks
to be easily disabled if HG PLAIN is set. However such option would be a new
feature, not something introduced to mitigate a behavior change introduced in
5.7, so the `:run-if-plain` option belong to the default branch and is not part
of this series.
Differential Revision: https://phab.mercurial-scm.org/D9981
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Wed, 10 Feb 2021 23:21:21 +0100 |
parents | 84eb4c833c41 |
children |
line wrap: on
line source
== New Features == * `hg mv -A` can now be used with `--at-rev`. It behaves just like `hg cp -A --at-rev`, i.e. it marks the destination as a copy of the source whether or not the source still exists (but the source must exist in the parent revision). * New revset predicate `diffcontains(pattern)` for filtering revisions in the same way as `hg grep --diff pattern`. * The memory footprint per changeset and per file during pull/unbundle operations has been significantly reduced. == New Experimental Features == == Bug Fixes == == Backwards Compatibility Changes == == Internal API Changes == * `merge.update()` is now private (renamed to `_update()`). Hopefully the higher-level functions available in the same module cover your use cases. * `phases.registernew` now takes a set of revisions instead of a list of nodes. `phases.advanceboundary` takes an optional set of revisions in addition to the list of nodes. The corresponeding members of the `phasecache` class follow this change. * The `addgroup` member of `revlog` classes no longer keeps a list of all found nodes. It now returns True iff a node was found in the group. An optional callback for duplicated nodes can be used by callers to keep track of all nodes themselve. * The `_chaininfocache` of `revlog` classes has been changed from a dict to a LRU cache.