author | Joerg Sonnenberger <joerg@bec.de> |
Thu, 22 Apr 2021 02:57:30 +0200 | |
branch | stable |
changeset 47008 | 77e73827a02d |
parent 47001 | 5be3e2edd449 |
child 47014 | 32b527417ba3 |
permissions | -rw-r--r-- |
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>
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>
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 |
|
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 |
|
44367
9dab3fa64325
copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44365
diff
changeset
|
32 |
== New Experimental Features == |
44343
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44289
diff
changeset
|
33 |
|
46496
d57e607d9e33
diff: replace --merge option by config option
Martin von Zweigbergk <martinvonz@google.com>
parents:
46454
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:
46454
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:
46454
diff
changeset
|
36 |
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
|
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:
46496
diff
changeset
|
38 |
`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
|
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 |
|
47001
5be3e2edd449
relnote: mention a nodemap bug fixes
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47000
diff
changeset
|
43 |
* gracefully recover from inconsistent persistent-nodemap data from disk. |
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
|
44 |
|
45189
045f5361bd12
relnotes: make spacing before new section consistent
Manuel Jacob <me@manueljacob.de>
parents:
45169
diff
changeset
|
45 |
|
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
46 |
== Backwards Compatibility Changes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
47 |
|
46779
49fd21f32695
revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents:
46776
diff
changeset
|
48 |
* 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
|
49 |
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
|
50 |
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
|
51 |
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
|
52 |
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:
46780
diff
changeset
|
53 |
second parent. The changesets "nodeid" are not affected. |
46779
49fd21f32695
revlog: guarantee that p1 != null if a non-null parent exists
Joerg Sonnenberger <joerg@bec.de>
parents:
46776
diff
changeset
|
54 |
|
44396
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44392
diff
changeset
|
55 |
|
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
56 |
== Internal API Changes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
57 |
|
46370
cad17d50736c
changelog: move branchinfo to changelogrevision
Joerg Sonnenberger <joerg@bec.de>
parents:
46368
diff
changeset
|
58 |
* `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
|
59 |
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
|
60 |
|
0a23ace80e54
relnotes: document a number of node->revision type changes
Joerg Sonnenberger <joerg@bec.de>
parents:
46498
diff
changeset
|
61 |
* 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
|
62 |
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
|
63 |
|
0a23ace80e54
relnotes: document a number of node->revision type changes
Joerg Sonnenberger <joerg@bec.de>
parents:
46498
diff
changeset
|
64 |
* revlog.addrevision returns the revision number instead of the node. |
46780
6266d19556ad
node: introduce nodeconstants class
Joerg Sonnenberger <joerg@bec.de>
parents:
46779
diff
changeset
|
65 |
|
6266d19556ad
node: introduce nodeconstants class
Joerg Sonnenberger <joerg@bec.de>
parents:
46779
diff
changeset
|
66 |
* `nodes.nullid` and related constants are being phased out as part of |
6266d19556ad
node: introduce nodeconstants class
Joerg Sonnenberger <joerg@bec.de>
parents:
46779
diff
changeset
|
67 |
the deprecation of SHA1. Repository instances and related classes |
6266d19556ad
node: introduce nodeconstants class
Joerg Sonnenberger <joerg@bec.de>
parents:
46779
diff
changeset
|
68 |
provide access via `nodeconstants` and in some cases `nullid` attributes. |