author | Pulkit Goyal <7895pulkit@gmail.com> |
Tue, 23 Nov 2021 15:35:31 +0530 | |
branch | stable |
changeset 48331 | 477737ffc729 |
parent 44781 | f445a4f7e8a7 |
permissions | -rw-r--r-- |
42298
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 |
|
44335
9f8eddd2723f
purge: add -i flag to delete ignored files instead of untracked files
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44269
diff
changeset
|
3 |
* `hg purge`/`hg clean` can now delete ignored files instead of |
9f8eddd2723f
purge: add -i flag to delete ignored files instead of untracked files
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44269
diff
changeset
|
4 |
untracked files, with the new -i flag. |
42336
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42298
diff
changeset
|
5 |
|
44555
bd7b2c8d06cc
pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents:
44457
diff
changeset
|
6 |
* `hg pull` now has a `--confirm` flag to prompt before applying changes. |
bd7b2c8d06cc
pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents:
44457
diff
changeset
|
7 |
Config option `pull.confirm` is also added for that. |
bd7b2c8d06cc
pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents:
44457
diff
changeset
|
8 |
|
44379
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44377
diff
changeset
|
9 |
* `hg log` now defaults to using an '%' symbol for commits involved |
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44377
diff
changeset
|
10 |
in unresolved merge conflicts. That includes unresolved conflicts |
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44377
diff
changeset
|
11 |
caused by e.g. `hg update --merge` and `hg graft`. '@' still takes |
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44377
diff
changeset
|
12 |
precedence, so what used to be marked '@' still is. |
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44377
diff
changeset
|
13 |
|
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44377
diff
changeset
|
14 |
* New `conflictlocal()` and `conflictother()` revsets return the |
44377
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44335
diff
changeset
|
15 |
commits that are being merged, when there are conflicts. Also works |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44335
diff
changeset
|
16 |
for conflicts caused by e.g. `hg graft`. |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44335
diff
changeset
|
17 |
|
44398
8be0c63535b5
copy: add option to unmark file as copied
Martin von Zweigbergk <martinvonz@google.com>
parents:
44381
diff
changeset
|
18 |
* `hg copy --forget` can be used to unmark a file as copied. |
8be0c63535b5
copy: add option to unmark file as copied
Martin von Zweigbergk <martinvonz@google.com>
parents:
44381
diff
changeset
|
19 |
|
44422
a6fb134bd086
revlog-compression: release note entry for update the config to be a list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44406
diff
changeset
|
20 |
* The `format.revlog-compression` configuration entry now accept a list. The |
a6fb134bd086
revlog-compression: release note entry for update the config to be a list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44406
diff
changeset
|
21 |
first available option will be used. for example setting:: |
a6fb134bd086
revlog-compression: release note entry for update the config to be a list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44406
diff
changeset
|
22 |
|
a6fb134bd086
revlog-compression: release note entry for update the config to be a list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44406
diff
changeset
|
23 |
[format] |
a6fb134bd086
revlog-compression: release note entry for update the config to be a list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44406
diff
changeset
|
24 |
revlog-compression=zstd, zlib |
a6fb134bd086
revlog-compression: release note entry for update the config to be a list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44406
diff
changeset
|
25 |
|
a6fb134bd086
revlog-compression: release note entry for update the config to be a list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44406
diff
changeset
|
26 |
Will use `zstd` compression for new repositories is available, and will |
a6fb134bd086
revlog-compression: release note entry for update the config to be a list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44406
diff
changeset
|
27 |
simply fall back to `zlib` if not. |
a6fb134bd086
revlog-compression: release note entry for update the config to be a list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44406
diff
changeset
|
28 |
|
44427
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44423
diff
changeset
|
29 |
* `hg debugmergestate` output is now templated, which may be useful |
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44423
diff
changeset
|
30 |
e.g. for IDEs that want to help the user resolve merge conflicts. |
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44423
diff
changeset
|
31 |
|
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44423
diff
changeset
|
32 |
|
44401
9dab3fa64325
copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44399
diff
changeset
|
33 |
== New Experimental Features == |
44377
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44335
diff
changeset
|
34 |
|
44401
9dab3fa64325
copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44399
diff
changeset
|
35 |
* `hg copy` now supports a `--at-rev` argument to mark files as |
9dab3fa64325
copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44399
diff
changeset
|
36 |
copied in the specified commit. It only works with `--after` for |
9dab3fa64325
copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44399
diff
changeset
|
37 |
now (i.e., it's only useful for marking files copied using non-hg |
9dab3fa64325
copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44399
diff
changeset
|
38 |
`cp` as copied). |
42336
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42298
diff
changeset
|
39 |
|
44399
7c4b98a4e536
copy: add experimetal support for unmarking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44398
diff
changeset
|
40 |
* Use `hg copy --forget --at-rev REV` to unmark already committed |
7c4b98a4e536
copy: add experimetal support for unmarking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44398
diff
changeset
|
41 |
copies. |
7c4b98a4e536
copy: add experimetal support for unmarking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44398
diff
changeset
|
42 |
|
42298
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
43 |
== Bug Fixes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
44 |
|
44404
edaae3616ba3
bookmarks: avoid traceback when two pushes race to delete the same bookmark
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44403
diff
changeset
|
45 |
* Fix server exception when concurrent pushes delete the same bookmark |
42298
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
46 |
|
44423
efd73cdcfbac
relnotes: move entry to the right spot
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
44422
diff
changeset
|
47 |
* Prevent pushes of divergent bookmarks (foo@remote) |
efd73cdcfbac
relnotes: move entry to the right spot
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
44422
diff
changeset
|
48 |
|
44439
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44429
diff
changeset
|
49 |
* The push error "remote repository changed while pushing - please |
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44429
diff
changeset
|
50 |
try again" now only happens when a concurrent push changed related |
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44429
diff
changeset
|
51 |
heads (instead of when a concurrent pushed any revision). |
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44429
diff
changeset
|
52 |
|
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44429
diff
changeset
|
53 |
|
42298
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
54 |
== Backwards Compatibility Changes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
55 |
|
44381
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44379
diff
changeset
|
56 |
* When `hg rebase` pauses for merge conflict resolution, the working |
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44379
diff
changeset
|
57 |
copy will no longer have the rebased node as a second parent. You |
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44379
diff
changeset
|
58 |
can use the new `conflictparents()` revset for finding the other |
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44379
diff
changeset
|
59 |
parent during a conflict. |
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44379
diff
changeset
|
60 |
|
44566
f63598aa1c4b
rebase: accept multiple --base arguments (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44565
diff
changeset
|
61 |
* `hg rebase` now accepts repeated `--source` and `--base` |
f63598aa1c4b
rebase: accept multiple --base arguments (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44565
diff
changeset
|
62 |
arguments. For example, `hg rebase --source 'A + B'` is equivalent |
f63598aa1c4b
rebase: accept multiple --base arguments (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44565
diff
changeset
|
63 |
to `hg rebase --source A --source B`. This is a |
f63598aa1c4b
rebase: accept multiple --base arguments (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44565
diff
changeset
|
64 |
backwards-incompatible change because it will break overriding an |
f63598aa1c4b
rebase: accept multiple --base arguments (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44565
diff
changeset
|
65 |
alias `myrebase = rebase --source A` by `hg myrebase --source B` |
f63598aa1c4b
rebase: accept multiple --base arguments (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44565
diff
changeset
|
66 |
(it will now rebase `(A + B)::` instead of `B::`). |
44565
05654ea5137c
rebase: accept multiple --source arguments (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44555
diff
changeset
|
67 |
|
44403
815c63526d1d
relnotes: add entry about previous `hg recover` change
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44401
diff
changeset
|
68 |
* `hg recover` does not verify the validity of the whole repository |
815c63526d1d
relnotes: add entry about previous `hg recover` change
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44401
diff
changeset
|
69 |
anymore. You can pass `--verify` or call `hg verify` if necessary. |
42948
c2676b5a9f59
narrow: don't hexify paths and double-hexify known nodes on wire (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42939
diff
changeset
|
70 |
|
44427
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44423
diff
changeset
|
71 |
* `hg debugmergestate` output format changed. Let us know if that is |
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44423
diff
changeset
|
72 |
causing you problems and we'll roll it back. |
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44423
diff
changeset
|
73 |
|
44457
6a34e438461b
commit: clear resolved mergestate even if working copy is clean
Martin von Zweigbergk <martinvonz@google.com>
parents:
44454
diff
changeset
|
74 |
* Resolved merge conflicts are now cleared by `hg commit` even if the |
6a34e438461b
commit: clear resolved mergestate even if working copy is clean
Martin von Zweigbergk <martinvonz@google.com>
parents:
44454
diff
changeset
|
75 |
working copy has no changes. |
6a34e438461b
commit: clear resolved mergestate even if working copy is clean
Martin von Zweigbergk <martinvonz@google.com>
parents:
44454
diff
changeset
|
76 |
|
44427
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44423
diff
changeset
|
77 |
|
42298
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
78 |
== Internal API Changes == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
79 |
|
44239
df2162672d24
progress: delete deprecated ui.progress()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44133
diff
changeset
|
80 |
* The deprecated `ui.progress()` has now been deleted. Please use |
df2162672d24
progress: delete deprecated ui.progress()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44133
diff
changeset
|
81 |
`ui.makeprogress()` instead. |
44253
bd4f666b55a7
merge: drop now-unused "abort" argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44239
diff
changeset
|
82 |
|
44454
2f290136b7d6
merge: make hg.merge() take a context instead of a node
Martin von Zweigbergk <martinvonz@google.com>
parents:
44439
diff
changeset
|
83 |
* `hg.merge()` now takes a `ctx` instead of the previous `repo` and |
2f290136b7d6
merge: make hg.merge() take a context instead of a node
Martin von Zweigbergk <martinvonz@google.com>
parents:
44439
diff
changeset
|
84 |
`node` arguments. |
2f290136b7d6
merge: make hg.merge() take a context instead of a node
Martin von Zweigbergk <martinvonz@google.com>
parents:
44439
diff
changeset
|
85 |
|
44253
bd4f666b55a7
merge: drop now-unused "abort" argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44239
diff
changeset
|
86 |
* `hg.merge()` has lost its `abort` argument. Please call |
bd4f666b55a7
merge: drop now-unused "abort" argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44239
diff
changeset
|
87 |
`hg.abortmerge()` directly instead. |
44269
d4c1501225c4
cmdutil: change check_incompatible_arguments() *arg to single iterable
Martin von Zweigbergk <martinvonz@google.com>
parents:
44253
diff
changeset
|
88 |
|
44429
ddbc296a1f48
merge: drop redundant mergeforce argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44427
diff
changeset
|
89 |
* `hg.merge()` has lost its `mergeforce` argument. It should have |
ddbc296a1f48
merge: drop redundant mergeforce argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44427
diff
changeset
|
90 |
only ever been called with the same value as the `force` argument. |
ddbc296a1f48
merge: drop redundant mergeforce argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44427
diff
changeset
|
91 |
|
44269
d4c1501225c4
cmdutil: change check_incompatible_arguments() *arg to single iterable
Martin von Zweigbergk <martinvonz@google.com>
parents:
44253
diff
changeset
|
92 |
* The `*others` argument of `cmdutil.check_incompatible_arguments()` |
d4c1501225c4
cmdutil: change check_incompatible_arguments() *arg to single iterable
Martin von Zweigbergk <martinvonz@google.com>
parents:
44253
diff
changeset
|
93 |
changed from being varargs argument to being a single collection. |