annotate relnotes/5.1 @ 50583:833a4e881a7a

safehasattr: pass attribute name as string instead of bytes This is a step toward replacing `util.safehasattr` usage with plain `hasattr`. The builtin function behave poorly in Python2 but this was fixed in Python3. These change are done one by one as they tend to have a small odd to trigger puzzling breackage.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Thu, 02 Feb 2023 17:28:15 +0100
parents cba59b338976
children
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 ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
2
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
3 * New config `commands.commit.post-status` shows status after successful
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
4 commit.
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
5
42498
089f14dd7df3 relnotes: document template support for `hg root`
Martin von Zweigbergk <martinvonz@google.com>
parents: 42405
diff changeset
6 * `hg root` now has templating support, including support for showing
089f14dd7df3 relnotes: document template support for `hg root`
Martin von Zweigbergk <martinvonz@google.com>
parents: 42405
diff changeset
7 where a repo share's source is. See `hg help -v root` for details.
089f14dd7df3 relnotes: document template support for `hg root`
Martin von Zweigbergk <martinvonz@google.com>
parents: 42405
diff changeset
8
42552
4cafbd3b50c6 relnotes: document the new --force-close-branch flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 42541
diff changeset
9 * New `--force-close-branch` flag for `hg commit` to forcibly close
4cafbd3b50c6 relnotes: document the new --force-close-branch flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 42541
diff changeset
10 branch from a non-head changeset.
4cafbd3b50c6 relnotes: document the new --force-close-branch flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 42541
diff changeset
11
42578
9f73620a65fe relnotes: document new range-select mechanism in crecord
Kyle Lippincott <spectral@google.com>
parents: 42574
diff changeset
12 * The curses-based interface for commands like `hg commit -i` now supports
9f73620a65fe relnotes: document new range-select mechanism in crecord
Kyle Lippincott <spectral@google.com>
parents: 42574
diff changeset
13 a range-select mechanism. Select the first line using space like before,
9f73620a65fe relnotes: document new range-select mechanism in crecord
Kyle Lippincott <spectral@google.com>
parents: 42574
diff changeset
14 navigate to the last line, and press X (capital x) to set all items in
9f73620a65fe relnotes: document new range-select mechanism in crecord
Kyle Lippincott <spectral@google.com>
parents: 42574
diff changeset
15 the range at once. Lowercase x has been added as a synonym for space to
9f73620a65fe relnotes: document new range-select mechanism in crecord
Kyle Lippincott <spectral@google.com>
parents: 42574
diff changeset
16 help reinforce the mechanism, and pressing enter/return continues to be a
9f73620a65fe relnotes: document new range-select mechanism in crecord
Kyle Lippincott <spectral@google.com>
parents: 42574
diff changeset
17 synonym for "toggle the current line and move down to the next item in
9f73620a65fe relnotes: document new range-select mechanism in crecord
Kyle Lippincott <spectral@google.com>
parents: 42574
diff changeset
18 this section."
42309
604c086ddde6 log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents: 42271
diff changeset
19
604c086ddde6 log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents: 42271
diff changeset
20 == New Experimental Features ==
604c086ddde6 log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents: 42271
diff changeset
21
604c086ddde6 log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents: 42271
diff changeset
22 * New config `experimental.log.topo` makes `hg log -G` use
604c086ddde6 log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents: 42271
diff changeset
23 topological sorting. This is especially useful for aliases since it
604c086ddde6 log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents: 42271
diff changeset
24 lets the alias accept an `-r` option while still using topological
604c086ddde6 log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents: 42271
diff changeset
25 sorting with or without the `-r` (unlike if you use the `sort(...,
604c086ddde6 log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents: 42271
diff changeset
26 topo)` revset).
604c086ddde6 log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents: 42271
diff changeset
27
604c086ddde6 log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents: 42271
diff changeset
28
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
29 == Bug Fixes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
30
42405
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
31 * issue4292: "hg log and {files} {file_adds} {file_mods} {file_dels}
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
32 in template show wrong files on merged revision". See details in
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
33 "Backwards Compatibility Changes".
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
34
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
35
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
36 == Backwards Compatibility Changes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
37
42334
bcb1a2b6cd00 relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 42309
diff changeset
38 * Removed (experimental) support for log graph lines mixing
bcb1a2b6cd00 relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 42309
diff changeset
39 parent/grandparent styles. Setting
bcb1a2b6cd00 relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 42309
diff changeset
40 e.g. `experimental.graphstyle.parent = !` and
bcb1a2b6cd00 relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 42309
diff changeset
41 `experimental.graphstyle.grandparent = 3.` would use `!` for the
bcb1a2b6cd00 relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 42309
diff changeset
42 first three lines of the graph and then `.`. This is no longer
bcb1a2b6cd00 relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 42309
diff changeset
43 supported.
bcb1a2b6cd00 relnotes: mention removed support for mixed log graph lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 42309
diff changeset
44
42372
ba6ca4e80607 relnotes: document changed behavior of ui.origbackuppath pointing to file
Martin von Zweigbergk <martinvonz@google.com>
parents: 42343
diff changeset
45 * If `ui.origbackuppath` had been (incorrectly) configured to point
ba6ca4e80607 relnotes: document changed behavior of ui.origbackuppath pointing to file
Martin von Zweigbergk <martinvonz@google.com>
parents: 42343
diff changeset
46 to a file, we will now replace that file by a directory and put
ba6ca4e80607 relnotes: document changed behavior of ui.origbackuppath pointing to file
Martin von Zweigbergk <martinvonz@google.com>
parents: 42343
diff changeset
47 backups in that directory. This is similar to how we would
ba6ca4e80607 relnotes: document changed behavior of ui.origbackuppath pointing to file
Martin von Zweigbergk <martinvonz@google.com>
parents: 42343
diff changeset
48 previously replace files *in* the configured directory by
ba6ca4e80607 relnotes: document changed behavior of ui.origbackuppath pointing to file
Martin von Zweigbergk <martinvonz@google.com>
parents: 42343
diff changeset
49 subdirectories.
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
50
42405
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
51 * Template keyword `{file_mods}`, `{file_adds}`, and `{file_dels}`
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
52 have changed behavior on merge commits. They used to be relative to
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
53 the first parent, but they now consider both parents. `{file_adds}`
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
54 shows files that exists in the commit but did not exist in either
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
55 parent. `{file_dels}` shows files that do not exist in the commit
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
56 but existed in either parent. `{file_mods}` show the remaining
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
57 files from `{files}` that were not in the other two
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
58 sets.
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
59
0c72eddb4be5 templatekw: make {file_*} compare to both merge parents (issue4292)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42372
diff changeset
60
42271
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
61 == Internal API Changes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
62
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
63 * Matchers are no longer iterable. Use `match.files()` instead.
42341
27d6956d386b match: use '' instead of '.' for root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42334
diff changeset
64
27d6956d386b match: use '' instead of '.' for root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42334
diff changeset
65 * `match.visitdir()` and `match.visitchildrenset()` now expect the
27d6956d386b match: use '' instead of '.' for root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42334
diff changeset
66 empty string instead of '.' to indicate the root directory.
42343
d8e55c0c642c util: make util.dirs() and util.finddirs() include root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42341
diff changeset
67
d8e55c0c642c util: make util.dirs() and util.finddirs() include root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42341
diff changeset
68 * `util.dirs()` and `util.finddirs()` now include an entry for the
d8e55c0c642c util: make util.dirs() and util.finddirs() include root directory (API)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42341
diff changeset
69 root directory (empty string).
42535
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
70
42541
3de4f17f4824 shelve: move shelve extension to core
Navaneeth Suresh <navaneeths1998@gmail.com>
parents: 42535
diff changeset
71 * shelve is no longer an extension now. it will be turned on by default.
3de4f17f4824 shelve: move shelve extension to core
Navaneeth Suresh <navaneeths1998@gmail.com>
parents: 42535
diff changeset
72
42535
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
73 * New API to manage unfinished operations: Earlier there were distinct APIs
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
74 which dealt with unfinished states and separate lists maintaining them
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
75 that are `cmdutil.afterresolvestates`, `cmdutil.unfinishedstates` and
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
76 `cmdutil.STATES`. Now these have been unified to a single
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
77 API which handles the various states and their utilities. This API
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
78 has been added to `state.py`. Now instead of adding to these 3 lists
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
79 independently a state for a new operation can be registered using
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
80 `addunfinished()` in `state` module.
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
81
df5f674050b7 relnotes: added description about statemod._statecheck
Taapas Agrawal <taapas2897@gmail.com>
parents: 42498
diff changeset
82 * `cmdutil.checkunfinished()` now includes detection for merge too.
42574
d28d91f9f35a py3: don't run source transformer on hgext3rd (extensions)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42552
diff changeset
83
42579
b8d54f4625cb merge: disallow merge abort in case of an unfinished operation (issue6160)
Taapas Agrawal <taapas2897@gmail.com>
parents: 42578
diff changeset
84 * merge abort has been disallowed in case an operation of higher
b8d54f4625cb merge: disallow merge abort in case of an unfinished operation (issue6160)
Taapas Agrawal <taapas2897@gmail.com>
parents: 42578
diff changeset
85 precedence is in progress to avoid cases of partial abort of
b8d54f4625cb merge: disallow merge abort in case of an unfinished operation (issue6160)
Taapas Agrawal <taapas2897@gmail.com>
parents: 42578
diff changeset
86 operations.
b8d54f4625cb merge: disallow merge abort in case of an unfinished operation (issue6160)
Taapas Agrawal <taapas2897@gmail.com>
parents: 42578
diff changeset
87
42574
d28d91f9f35a py3: don't run source transformer on hgext3rd (extensions)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42552
diff changeset
88 * We used to automatically attempt to make extensions compatible with
d28d91f9f35a py3: don't run source transformer on hgext3rd (extensions)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42552
diff changeset
89 Python 3 (by translating their source code while loading it). We no
d28d91f9f35a py3: don't run source transformer on hgext3rd (extensions)
Martin von Zweigbergk <martinvonz@google.com>
parents: 42552
diff changeset
90 longer do that.