relnotes/next
author Joerg Sonnenberger <joerg@bec.de>
Tue, 19 Jan 2021 00:20:53 +0100
changeset 46371 0903d6b9b1df
parent 46370 cad17d50736c
child 46372 3e91d9978bec
permissions -rw-r--r--
repository: introduce register_changeset callback The new callback is called whenever a changeset is added to the repository (commit, unbundle or exchange). Since the bulk operations already parse the changeset (readfiles or full changesetrevision), always use the latter to avoid redundant lookups. The first consumer of the new interface needs to look at extra. Differential Revision: https://phab.mercurial-scm.org/D9780
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
     1
== New Features ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
     2
45867
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
     3
 * There is a new config section for templates used by hg commands. It
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
     4
   is called `[command-templates]`. Some existing config options have
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
     5
   been deprecated in favor of config options in the new
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
     6
   section. These are: `ui.logtemplate` to `command-templates.log`,
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
     7
   `ui.graphnodetemplate` to `command-templates.graphnode`,
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
     8
   `ui.mergemarkertemplate` to `command-templates.mergemarker`,
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
     9
   `ui.pre-merge-tool-output-template` to
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
    10
   `command-templates.pre-merge-tool-output`.
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
    11
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
    12
 * There is a new set of config options for the template used for the
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
    13
   one-line commit summary displayed by various commands, such as `hg
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
    14
   rebase`. The main one is `command-templates.oneline-summary`. That
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
    15
   can be overridden per command with
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
    16
   `command-templates.oneline-summary.<command>`, where `<command>`
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
    17
   can be e.g. `rebase`. As part of this effort, the default format
774b1c0f2507 relnotes: document new [command-templates] section
Martin von Zweigbergk <martinvonz@google.com>
parents: 45865
diff changeset
    18
   from `hg rebase` was reorganized a bit.
45751
60d0634c43c2 relnotes: add diffcontains() to new features list
Yuya Nishihara <yuya@tcha.org>
parents: 45557
diff changeset
    19
46368
bb3a5c0df06b purge: move extension into core mercurial
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 46254
diff changeset
    20
 * `hg purge` is now a core command using `--confirm` by default.
bb3a5c0df06b purge: move extension into core mercurial
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 46254
diff changeset
    21
45865
d7a508a75d72 strip: move into core
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 45823
diff changeset
    22
 * `hg strip`, from the strip extension, is now a core command, `hg
d7a508a75d72 strip: move into core
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 45823
diff changeset
    23
   debugstrip`. The extension remains for compatibility.
d7a508a75d72 strip: move into core
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 45823
diff changeset
    24
46164
a27aa754d6ba relnotes: document that `hg extdiff` also got -r replaced by --from/--to
Martin von Zweigbergk <martinvonz@google.com>
parents: 46142
diff changeset
    25
 * `hg diff` and `hg extdiff` now support `--from <rev>` and `--to <rev>`
a27aa754d6ba relnotes: document that `hg extdiff` also got -r replaced by --from/--to
Martin von Zweigbergk <martinvonz@google.com>
parents: 46142
diff changeset
    26
   arguments as clearer alternatives to `-r <revs>`. `-r <revs>` has been
46107
aa4dbc14f735 diff: deprecate -r option
Martin von Zweigbergk <martinvonz@google.com>
parents: 46096
diff changeset
    27
   deprecated.
46087
64292addbe67 diff: add --from and --to flags as clearer alternative to -r -r
Martin von Zweigbergk <martinvonz@google.com>
parents: 45998
diff changeset
    28
45998
cb623dedb17c relnotes: document better memory use for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 45867
diff changeset
    29
 * The memory footprint per changeset during pull/unbundle
cb623dedb17c relnotes: document better memory use for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 45867
diff changeset
    30
   operations has been further reduced.
cb623dedb17c relnotes: document better memory use for unbundle
Joerg Sonnenberger <joerg@bec.de>
parents: 45867
diff changeset
    31
46108
bdc2bf68f19e mergetools: add new conflict marker format with diffs in
Martin von Zweigbergk <martinvonz@google.com>
parents: 46107
diff changeset
    32
 * There is a new internal merge tool called `internal:mergediff` (can
bdc2bf68f19e mergetools: add new conflict marker format with diffs in
Martin von Zweigbergk <martinvonz@google.com>
parents: 46107
diff changeset
    33
   be set as the value for the `merge` config in the `[ui]`
bdc2bf68f19e mergetools: add new conflict marker format with diffs in
Martin von Zweigbergk <martinvonz@google.com>
parents: 46107
diff changeset
    34
   section). It resolves merges the same was as `internal:merge` and
bdc2bf68f19e mergetools: add new conflict marker format with diffs in
Martin von Zweigbergk <martinvonz@google.com>
parents: 46107
diff changeset
    35
   `internal:merge3`, but it shows conflicts differently. Instead of
bdc2bf68f19e mergetools: add new conflict marker format with diffs in
Martin von Zweigbergk <martinvonz@google.com>
parents: 46107
diff changeset
    36
   showing 2 or 3 snapshots of the conflicting pieces of code, it
bdc2bf68f19e mergetools: add new conflict marker format with diffs in
Martin von Zweigbergk <martinvonz@google.com>
parents: 46107
diff changeset
    37
   shows one snapshot and a diff. This may be useful when at least one
46139
3ca5ca380a34 filemerge: add support for the new "mergediff" marker style to premerge
Martin von Zweigbergk <martinvonz@google.com>
parents: 46108
diff changeset
    38
   side of the conflict is similar to the base. The new marker style
3ca5ca380a34 filemerge: add support for the new "mergediff" marker style to premerge
Martin von Zweigbergk <martinvonz@google.com>
parents: 46108
diff changeset
    39
   is also supported by "premerge" as
3ca5ca380a34 filemerge: add support for the new "mergediff" marker style to premerge
Martin von Zweigbergk <martinvonz@google.com>
parents: 46108
diff changeset
    40
   `merge-tools.<tool>.premerge=keep-mergediff`.
46096
4d5e2fd53707 singlehead: introduce option to restrict to public changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46087
diff changeset
    41
46142
634cea2c247f relnotes: document automatically setting `HGPLAIN=1` for external hooks
Matt Harbison <matt_harbison@yahoo.com>
parents: 46139
diff changeset
    42
 * External hooks are now called with `HGPLAIN=1` preset.
634cea2c247f relnotes: document automatically setting `HGPLAIN=1` for external hooks
Matt Harbison <matt_harbison@yahoo.com>
parents: 46139
diff changeset
    43
46254
c4b792fa109e branchmap: avoid ancestor computations in absence of non-continous branches
Joerg Sonnenberger <joerg@bec.de>
parents: 46237
diff changeset
    44
 * The `branchmap` cache is updated more intelligently and can be
c4b792fa109e branchmap: avoid ancestor computations in absence of non-continous branches
Joerg Sonnenberger <joerg@bec.de>
parents: 46237
diff changeset
    45
   significantly faster for repositories with many branches and changesets.
c4b792fa109e branchmap: avoid ancestor computations in absence of non-continous branches
Joerg Sonnenberger <joerg@bec.de>
parents: 46237
diff changeset
    46
c4b792fa109e branchmap: avoid ancestor computations in absence of non-continous branches
Joerg Sonnenberger <joerg@bec.de>
parents: 46237
diff changeset
    47
44367
9dab3fa64325 copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44365
diff changeset
    48
== New Experimental Features ==
44343
8561ad49915d revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents: 44289
diff changeset
    49
46096
4d5e2fd53707 singlehead: introduce option to restrict to public changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46087
diff changeset
    50
* `experimental.single-head-per-branch:public-changes-only` can be used
4d5e2fd53707 singlehead: introduce option to restrict to public changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46087
diff changeset
    51
  restrict the single head check to public revision. This is useful for
4d5e2fd53707 singlehead: introduce option to restrict to public changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46087
diff changeset
    52
  overlay repository that have both a publishing and non-publishing view
4d5e2fd53707 singlehead: introduce option to restrict to public changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46087
diff changeset
    53
  of the same storage.
45191
fc54f52779dd relnotes: add release notes for relevant changes I did since the 5.4 release
Manuel Jacob <me@manueljacob.de>
parents: 45190
diff changeset
    54
fc54f52779dd relnotes: add release notes for relevant changes I did since the 5.4 release
Manuel Jacob <me@manueljacob.de>
parents: 45190
diff changeset
    55
fc54f52779dd relnotes: add release notes for relevant changes I did since the 5.4 release
Manuel Jacob <me@manueljacob.de>
parents: 45190
diff changeset
    56
== Bug Fixes ==
fc54f52779dd relnotes: add release notes for relevant changes I did since the 5.4 release
Manuel Jacob <me@manueljacob.de>
parents: 45190
diff changeset
    57
fc54f52779dd relnotes: add release notes for relevant changes I did since the 5.4 release
Manuel Jacob <me@manueljacob.de>
parents: 45190
diff changeset
    58
45189
045f5361bd12 relnotes: make spacing before new section consistent
Manuel Jacob <me@manueljacob.de>
parents: 45169
diff changeset
    59
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
    60
== Backwards Compatibility Changes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
    61
46237
bc884e31b8c8 debuglock: rename flag names to better clarity
Pulkit Goyal <7895pulkit@gmail.com>
parents: 46164
diff changeset
    62
 * `--force-lock` and `--force-wlock` options on `hg debuglock` command are
bc884e31b8c8 debuglock: rename flag names to better clarity
Pulkit Goyal <7895pulkit@gmail.com>
parents: 46164
diff changeset
    63
   renamed to `--force-free-lock` and `--force-free-wlock` respectively.
45191
fc54f52779dd relnotes: add release notes for relevant changes I did since the 5.4 release
Manuel Jacob <me@manueljacob.de>
parents: 45190
diff changeset
    64
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44392
diff changeset
    65
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
    66
== Internal API Changes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
    67
46370
cad17d50736c changelog: move branchinfo to changelogrevision
Joerg Sonnenberger <joerg@bec.de>
parents: 46368
diff changeset
    68
 * `changelog.branchinfo` is deprecated and will be removed after 5.8.
cad17d50736c changelog: move branchinfo to changelogrevision
Joerg Sonnenberger <joerg@bec.de>
parents: 46368
diff changeset
    69
   It is superseded by `changelogrevision.branchinfo`.