annotate relnotes/next @ 47000:c3eee5ad1de9 stable

relnote: document the use of persistent-nodemap by default for Rust build Differential Revision: https://phab.mercurial-scm.org/D10498
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Tue, 20 Apr 2021 16:29:05 +0200
parents 035c06f9fddf
children 5be3e2edd449
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
42298
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
1 == New Features ==
46518
1c66795862cf branching: merge with stable
Martin von Zweigbergk <martinvonz@google.com>
parents: 46444 46358
diff changeset
2
46440
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.
46518
1c66795862cf branching: merge with stable
Martin von Zweigbergk <martinvonz@google.com>
parents: 46444 46358
diff changeset
4
46444
3e91d9978bec branchmap: update rev-branch-cache incrementally
Joerg Sonnenberger <joerg@bec.de>
parents: 46442
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: 46442
diff changeset
6 are added.
42298
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
7
46789
471cd86c8eb4 bundle: optional multithreaded compression, ATM zstd-only
Joerg Sonnenberger <joerg@bec.de>
parents: 46667
diff changeset
8 * The new options `experimental.bundlecompthreads` and
471cd86c8eb4 bundle: optional multithreaded compression, ATM zstd-only
Joerg Sonnenberger <joerg@bec.de>
parents: 46667
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: 46667
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: 46667
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: 46667
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
46999
035c06f9fddf relnode: document the move to `zstd` as default compression
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46998
diff changeset
14 == Default Format Change ==
035c06f9fddf relnode: document the move to `zstd` as default compression
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46998
diff changeset
15
035c06f9fddf relnode: document the move to `zstd` as default compression
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46998
diff changeset
16 These changes affects newly created repositories (or new clone) done with
035c06f9fddf relnode: document the move to `zstd` as default compression
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46998
diff changeset
17 Mercurial 5.8.
035c06f9fddf relnode: document the move to `zstd` as default compression
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46998
diff changeset
18
035c06f9fddf relnode: document the move to `zstd` as default compression
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46998
diff changeset
19 * The `ZSTD` compression will now be used by default for new repositories
035c06f9fddf relnode: document the move to `zstd` as default compression
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46998
diff changeset
20 when available. This compression format was introduced in Mercurial 5.0,
035c06f9fddf relnode: document the move to `zstd` as default compression
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46998
diff changeset
21 released in May 2019. See `hg help config.format.revlog-compression` for
035c06f9fddf relnode: document the move to `zstd` as default compression
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46998
diff changeset
22 details.
035c06f9fddf relnode: document the move to `zstd` as default compression
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46998
diff changeset
23
47000
c3eee5ad1de9 relnote: document the use of persistent-nodemap by default for Rust build
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46999
diff changeset
24 * Mercurial installation built with the Rust parts will now use the
c3eee5ad1de9 relnote: document the use of persistent-nodemap by default for Rust build
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46999
diff changeset
25 "persistent nodemap" feature by default. This feature was introduced in
c3eee5ad1de9 relnote: document the use of persistent-nodemap by default for Rust build
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46999
diff changeset
26 Mercurial 5.4 (May 2020). However Mercurial instalation built without the
c3eee5ad1de9 relnote: document the use of persistent-nodemap by default for Rust build
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46999
diff changeset
27 fast Rust implementation will refuse to interract with them by default.
c3eee5ad1de9 relnote: document the use of persistent-nodemap by default for Rust build
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46999
diff changeset
28 This restriction can be lifted through configuration.
c3eee5ad1de9 relnote: document the use of persistent-nodemap by default for Rust build
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46999
diff changeset
29
c3eee5ad1de9 relnote: document the use of persistent-nodemap by default for Rust build
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46999
diff changeset
30 See `hg help config.format.use-persistent-nodemap` for details
c3eee5ad1de9 relnote: document the use of persistent-nodemap by default for Rust build
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46999
diff changeset
31
44401
9dab3fa64325 copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44399
diff changeset
32 == New Experimental Features ==
44377
8561ad49915d revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents: 44335
diff changeset
33
46548
d57e607d9e33 diff: replace --merge option by config option
Martin von Zweigbergk <martinvonz@google.com>
parents: 46519
diff changeset
34 * 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: 46519
diff changeset
35 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: 46519
diff changeset
36 easier to detect and review manual changes performed in merge
46550
3caa3698335e log: respect diff.merge in -p output
Martin von Zweigbergk <martinvonz@google.com>
parents: 46548
diff changeset
37 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: 46548
diff changeset
38 `hg incoming -p`, and `hg outgoing -p` so far.
46519
6b847757dd8d relnotes: add entry for `hg diff --merge -c`
Augie Fackler <augie@google.com>
parents: 46518
diff changeset
39
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
40
fc54f52779dd relnotes: add release notes for relevant changes I did since the 5.4 release
Manuel Jacob <me@manueljacob.de>
parents: 45190
diff changeset
41 == 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
42
fc54f52779dd relnotes: add release notes for relevant changes I did since the 5.4 release
Manuel Jacob <me@manueljacob.de>
parents: 45190
diff changeset
43
45189
045f5361bd12 relnotes: make spacing before new section consistent
Manuel Jacob <me@manueljacob.de>
parents: 45169
diff changeset
44
42298
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
45 == Backwards Compatibility Changes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
46
46792
49fd21f32695 revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents: 46789
diff changeset
47 * 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: 46789
diff changeset
48 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: 46789
diff changeset
49 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: 46789
diff changeset
50 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: 46789
diff changeset
51 change the output of `hg log` when explicitly asking for first or
46998
65d18001cfbf relnote: clarify the backward compatibility entry about p1/p2 swap
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46793
diff changeset
52 second parent. The changesets "nodeid" are not affected.
46792
49fd21f32695 revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents: 46789
diff changeset
53
44427
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44423
diff changeset
54
42298
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
55 == Internal API Changes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
56
46442
cad17d50736c changelog: move branchinfo to changelogrevision
Joerg Sonnenberger <joerg@bec.de>
parents: 46440
diff changeset
57 * `changelog.branchinfo` is deprecated and will be removed after 5.8.
cad17d50736c changelog: move branchinfo to changelogrevision
Joerg Sonnenberger <joerg@bec.de>
parents: 46440
diff changeset
58 It is superseded by `changelogrevision.branchinfo`.
46667
0a23ace80e54 relnotes: document a number of node->revision type changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46550
diff changeset
59
0a23ace80e54 relnotes: document a number of node->revision type changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46550
diff changeset
60 * 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: 46550
diff changeset
61 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: 46550
diff changeset
62
0a23ace80e54 relnotes: document a number of node->revision type changes
Joerg Sonnenberger <joerg@bec.de>
parents: 46550
diff changeset
63 * revlog.addrevision returns the revision number instead of the node.
46793
6266d19556ad node: introduce nodeconstants class
Joerg Sonnenberger <joerg@bec.de>
parents: 46792
diff changeset
64
6266d19556ad node: introduce nodeconstants class
Joerg Sonnenberger <joerg@bec.de>
parents: 46792
diff changeset
65 * `nodes.nullid` and related constants are being phased out as part of
6266d19556ad node: introduce nodeconstants class
Joerg Sonnenberger <joerg@bec.de>
parents: 46792
diff changeset
66 the deprecation of SHA1. Repository instances and related classes
6266d19556ad node: introduce nodeconstants class
Joerg Sonnenberger <joerg@bec.de>
parents: 46792
diff changeset
67 provide access via `nodeconstants` and in some cases `nullid` attributes.