annotate relnotes/next @ 46779:49fd21f32695

revlog: guarantee that p1 != null if a non-null parent exists This change does not affect the hashing (which already did this transformation), but can change the log output in the rare case where this behavior was observed in repositories. The change can simplify iteration code where regular changesets and merges are distinct branches. Differential Revision: https://phab.mercurial-scm.org/D10150
author Joerg Sonnenberger <joerg@bec.de>
date Wed, 10 Mar 2021 18:09:21 +0100
parents 471cd86c8eb4
children 6266d19556ad
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
1 == New Features ==
46453
1c66795862cf branching: merge with stable
Martin von Zweigbergk <martinvonz@google.com>
parents: 46372 46452
diff changeset
2
46368
bb3a5c0df06b purge: move extension into core mercurial
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 46254
diff changeset
3 * `hg purge` is now a core command using `--confirm` by default.
46453
1c66795862cf branching: merge with stable
Martin von Zweigbergk <martinvonz@google.com>
parents: 46372 46452
diff changeset
4
46372
3e91d9978bec branchmap: update rev-branch-cache incrementally
Joerg Sonnenberger <joerg@bec.de>
parents: 46370
diff changeset
5 * The `rev-branch-cache` is now updated incrementally whenever changesets
3e91d9978bec branchmap: update rev-branch-cache incrementally
Joerg Sonnenberger <joerg@bec.de>
parents: 46370
diff changeset
6 are added.
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
7
46776
471cd86c8eb4 bundle: optional multithreaded compression, ATM zstd-only
Joerg Sonnenberger <joerg@bec.de>
parents: 46628
diff changeset
8 * The new options `experimental.bundlecompthreads` and
471cd86c8eb4 bundle: optional multithreaded compression, ATM zstd-only
Joerg Sonnenberger <joerg@bec.de>
parents: 46628
diff changeset
9 `experimental.bundlecompthreads.<engine>` can be used to instruct
471cd86c8eb4 bundle: optional multithreaded compression, ATM zstd-only
Joerg Sonnenberger <joerg@bec.de>
parents: 46628
diff changeset
10 the compression engines for bundle operations to use multiple threads
471cd86c8eb4 bundle: optional multithreaded compression, ATM zstd-only
Joerg Sonnenberger <joerg@bec.de>
parents: 46628
diff changeset
11 for compression. The default is single threaded operation. Currently
471cd86c8eb4 bundle: optional multithreaded compression, ATM zstd-only
Joerg Sonnenberger <joerg@bec.de>
parents: 46628
diff changeset
12 only supported for zstd.
46254
c4b792fa109e branchmap: avoid ancestor computations in absence of non-continous branches
Joerg Sonnenberger <joerg@bec.de>
parents: 46237
diff changeset
13
44367
9dab3fa64325 copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44365
diff changeset
14 == New Experimental Features ==
44343
8561ad49915d revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents: 44289
diff changeset
15
46496
d57e607d9e33 diff: replace --merge option by config option
Martin von Zweigbergk <martinvonz@google.com>
parents: 46454
diff changeset
16 * There's a new `diff.merge` config option to show the changes
d57e607d9e33 diff: replace --merge option by config option
Martin von Zweigbergk <martinvonz@google.com>
parents: 46454
diff changeset
17 relative to an automerge for merge changesets. This makes it
d57e607d9e33 diff: replace --merge option by config option
Martin von Zweigbergk <martinvonz@google.com>
parents: 46454
diff changeset
18 easier to detect and review manual changes performed in merge
46498
3caa3698335e log: respect diff.merge in -p output
Martin von Zweigbergk <martinvonz@google.com>
parents: 46496
diff changeset
19 changesets. It is supported by `hg diff --change`, `hg log -p`
3caa3698335e log: respect diff.merge in -p output
Martin von Zweigbergk <martinvonz@google.com>
parents: 46496
diff changeset
20 `hg incoming -p`, and `hg outgoing -p` so far.
46454
6b847757dd8d relnotes: add entry for `hg diff --merge -c`
Augie Fackler <augie@google.com>
parents: 46453
diff changeset
21
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
22
fc54f52779dd relnotes: add release notes for relevant changes I did since the 5.4 release
Manuel Jacob <me@manueljacob.de>
parents: 45190
diff changeset
23 == 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
24
fc54f52779dd relnotes: add release notes for relevant changes I did since the 5.4 release
Manuel Jacob <me@manueljacob.de>
parents: 45190
diff changeset
25
45189
045f5361bd12 relnotes: make spacing before new section consistent
Manuel Jacob <me@manueljacob.de>
parents: 45169
diff changeset
26
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
27 == Backwards Compatibility Changes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
28
46779
49fd21f32695 revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents: 46776
diff changeset
29 * In normal repositories, the first parent of a changeset is not null,
49fd21f32695 revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents: 46776
diff changeset
30 unless both parents are null (like the first changeset). Some legacy
49fd21f32695 revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents: 46776
diff changeset
31 repositories violate this condition. The revlog code will now
49fd21f32695 revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents: 46776
diff changeset
32 silentely swap the parents if this condition is tested. This can
49fd21f32695 revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents: 46776
diff changeset
33 change the output of `hg log` when explicitly asking for first or
49fd21f32695 revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents: 46776
diff changeset
34 second parent.
49fd21f32695 revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents: 46776
diff changeset
35
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44392
diff changeset
36
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
37 == Internal API Changes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
38
46370
cad17d50736c changelog: move branchinfo to changelogrevision
Joerg Sonnenberger <joerg@bec.de>
parents: 46368
diff changeset
39 * `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
40 It is superseded by `changelogrevision.branchinfo`.
46628
0a23ace80e54 relnotes: document a number of node->revision type changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46498
diff changeset
41
0a23ace80e54 relnotes: document a number of node->revision type changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46498
diff changeset
42 * Callbacks for revlog.addgroup and the changelog._nodeduplicatecallback hook
0a23ace80e54 relnotes: document a number of node->revision type changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46498
diff changeset
43 now get a revision number as argument instead of a node.
0a23ace80e54 relnotes: document a number of node->revision type changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46498
diff changeset
44
0a23ace80e54 relnotes: document a number of node->revision type changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46498
diff changeset
45 * revlog.addrevision returns the revision number instead of the node.