annotate relnotes/5.9 @ 48093:5437a0254590

dirstate-item: use `tracked` instead of the `state` in context Differential Revision: https://phab.mercurial-scm.org/D11530
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 29 Sep 2021 14:57:54 +0200
parents 4a3de491e77b
children 6ee0244fc1cf
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
47977
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
1 == New Features ==
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
2
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
3 * `hg config` now has a `--source` option to show where each
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
4 configuration value comes from.
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
5 * Introduced a command (debug-repair-issue6533) to repair repositories affected
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
6 by issue6528 where certain files would show up as modified even if they were
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
7 clean due to an issue in the copy-tracing code.
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
8
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
9 == Default Format Change ==
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
10
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
11 These changes affect newly created repositories (or new clone) done with
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
12 Mercurial 5.9.
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
13
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
14
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
15 == New Experimental Features ==
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
16
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
17 * A `changelogv2` format has been introduced. It is not ready for use yet, but
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
18 will be used later to address some of the weaknesses of the current revlog
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
19 format.
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
20 * Initial experiment and support for `dirstatev2`, a new dirstate format that
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
21 addresses some of the weaknesses of the current dirstate format. Python + C
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
22 and Rust support are being implemented, but the Rust solution is the one
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
23 currently getting the attention for performance.
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
24 * Initial support for `rhg status`. `rhg` is the Rust wrapper executable for hg
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
25 that shortcuts some commands for faster execution speed.
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
26
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
27 == Bug Fixes ==
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
28
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
29 * Fixed a regression (in 5.9.1) introduced in 5.9 when cloning repos with
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
30 deep filenames
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
31 * Fixed detection of directories becoming symlinks, but only when using the
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
32 Rust extensions.
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
33 * Fixed ignore and include not composing in the Rust status
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
34 * `hg commit --interactive` now handles deselecting edits of a rename
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
35 * Fixed a case where `hg evolve` gives different results when interrupted
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
36 * Fixed a memory leak in phases computation
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
37 * `histedit` and `shelve` don't swallow errors when updating the working copy
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
38 anymore
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
39 * Improve error message when detecting content-divergence with a hidden
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
40 common predecessor
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
41 * No longer re-order parents in filelog, see issue6533
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
42 * Fix revisions affected by issue6533 on the fly during exchange
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
43 * Many Windows fixes for stability and py3 compatibility improvements
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
44 * Many other miscellaneous fixes
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
45
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
46 == Backwards Compatibility Changes ==
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
47
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
48
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
49 == Internal API Changes ==
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
50
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
51 The Dirstate API have been updated as the previous function leaked some
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
52 internal details and did not distinguish between two important cases: "We are
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
53 changing parent and need to adjust the dirstate" and "some command is changing
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
54 which file is tracked". To clarify the situation:
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
55
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
56 * the following functions have been deprecated,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
57
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
58 - `dirstate.add`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
59 - `dirstate.normal`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
60 - `dirstate.normallookup`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
61 - `dirstate.merge`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
62 - `dirstate.otherparent`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
63 - `dirstate.remove`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
64 - `dirstate.drop`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
65 - `dirstateitem.__getitem__`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
66
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
67 * these new functions are added for the "adjusting parents" use-case:
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
68
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
69 - `dirstate.update_file`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
70 - `dirstate.update_file_p1`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
71
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
72 * these new function are added for the "adjusting wc file" use-case":
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
73
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
74 - `dirstate.set_tracked`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
75 - `dirstate.set_untracked`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
76 - `dirstate.set_clean`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
77 - `dirstate.set_possibly_dirty`,
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
78
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
79 See inline documentation of the new functions for details.
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
80
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
81 * Additionally, the following have been deprecated:
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
82 - `urlutil.getpath` function
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
83 - `localrepository.updatecaches`' `full` argument
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
84
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
85 * The following have been removed:
4a3de491e77b relnotes: add release notes for 5.9
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
86 - `revlog.revlogio` has been removed