view relnotes/next @ 46197:2607a9346398

branchmap: micro-optimize branchinfo changelogrevision() is supposed to be used if not all data of changelog.read is used. This is the case here as only the extra field is used. This also improves extensibility as at least hgext.git doesn't implement changelog.read. Differential Revision: https://phab.mercurial-scm.org/D9626
author Joerg Sonnenberger <joerg@bec.de>
date Thu, 17 Dec 2020 13:29:50 +0100
parents a27aa754d6ba
children bc884e31b8c8
line wrap: on
line source

== New Features ==

 * There is a new config section for templates used by hg commands. It
   is called `[command-templates]`. Some existing config options have
   been deprecated in favor of config options in the new
   section. These are: `ui.logtemplate` to `command-templates.log`,
   `ui.graphnodetemplate` to `command-templates.graphnode`,
   `ui.mergemarkertemplate` to `command-templates.mergemarker`,
   `ui.pre-merge-tool-output-template` to
   `command-templates.pre-merge-tool-output`.

 * There is a new set of config options for the template used for the
   one-line commit summary displayed by various commands, such as `hg
   rebase`. The main one is `command-templates.oneline-summary`. That
   can be overridden per command with
   `command-templates.oneline-summary.<command>`, where `<command>`
   can be e.g. `rebase`. As part of this effort, the default format
   from `hg rebase` was reorganized a bit.

 * `hg strip`, from the strip extension, is now a core command, `hg
   debugstrip`. The extension remains for compatibility.

 * `hg diff` and `hg extdiff` now support `--from <rev>` and `--to <rev>`
   arguments as clearer alternatives to `-r <revs>`. `-r <revs>` has been
   deprecated.

 * The memory footprint per changeset during pull/unbundle
   operations has been further reduced.

 * There is a new internal merge tool called `internal:mergediff` (can
   be set as the value for the `merge` config in the `[ui]`
   section). It resolves merges the same was as `internal:merge` and
   `internal:merge3`, but it shows conflicts differently. Instead of
   showing 2 or 3 snapshots of the conflicting pieces of code, it
   shows one snapshot and a diff. This may be useful when at least one
   side of the conflict is similar to the base. The new marker style
   is also supported by "premerge" as
   `merge-tools.<tool>.premerge=keep-mergediff`.

 * External hooks are now called with `HGPLAIN=1` preset.

== New Experimental Features ==

* `experimental.single-head-per-branch:public-changes-only` can be used
  restrict the single head check to public revision. This is useful for
  overlay repository that have both a publishing and non-publishing view
  of the same storage.


== Bug Fixes ==



== Backwards Compatibility Changes ==



== Internal API Changes ==