author | Arseniy Alekseyev <aalekseyev@janestreet.com> |
Thu, 15 Aug 2024 13:52:14 +0100 | |
changeset 51805 | 0d7ccb163b4f |
parent 44827 | f445a4f7e8a7 |
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 == |
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
2 |
|
44289
9f8eddd2723f
purge: add -i flag to delete ignored files instead of untracked files
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44194
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:
44194
diff
changeset
|
4 |
untracked files, with the new -i flag. |
42309
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
5 |
|
44545
bd7b2c8d06cc
pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents:
44437
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:
44437
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:
44437
diff
changeset
|
8 |
|
44345
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44343
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:
44343
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:
44343
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:
44343
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:
44343
diff
changeset
|
13 |
|
14d0e89520a2
graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents:
44343
diff
changeset
|
14 |
* New `conflictlocal()` and `conflictother()` revsets return the |
44343
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44289
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:
44289
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:
44289
diff
changeset
|
17 |
|
44364
8be0c63535b5
copy: add option to unmark file as copied
Martin von Zweigbergk <martinvonz@google.com>
parents:
44347
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:
44347
diff
changeset
|
19 |
|
44391
a6fb134bd086
revlog-compression: release note entry for update the config to be a list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44372
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:
44372
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:
44372
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:
44372
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:
44372
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:
44372
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:
44372
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:
44372
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:
44372
diff
changeset
|
28 |
|
44396
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44392
diff
changeset
|
29 |
* `hg debugmergestate` output is now templated, which may be useful |
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44392
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:
44392
diff
changeset
|
31 |
|
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44392
diff
changeset
|
32 |
|
44367
9dab3fa64325
copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44365
diff
changeset
|
33 |
== New Experimental Features == |
44343
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
44289
diff
changeset
|
34 |
|
44367
9dab3fa64325
copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44365
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:
44365
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:
44365
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:
44365
diff
changeset
|
38 |
`cp` as copied). |
42309
604c086ddde6
log: add config for making `hg log -G` always topo-sorted
Martin von Zweigbergk <martinvonz@google.com>
parents:
42271
diff
changeset
|
39 |
|
44365
7c4b98a4e536
copy: add experimetal support for unmarking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44364
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:
44364
diff
changeset
|
41 |
copies. |
7c4b98a4e536
copy: add experimetal support for unmarking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents:
44364
diff
changeset
|
42 |
|
42271
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 |
|
44370
edaae3616ba3
bookmarks: avoid traceback when two pushes race to delete the same bookmark
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44369
diff
changeset
|
45 |
* Fix server exception when concurrent pushes delete the same bookmark |
42271
0ed293a3f00e
releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
46 |
|
44392
efd73cdcfbac
relnotes: move entry to the right spot
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
44391
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:
44391
diff
changeset
|
48 |
|
44412
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44398
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:
44398
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:
44398
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:
44398
diff
changeset
|
52 |
|
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44398
diff
changeset
|
53 |
|
42271
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 |
|
44347
9c9cfecd4600
rebase: don't use rebased node as dirstate p2 (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44345
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:
44345
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:
44345
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:
44345
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:
44345
diff
changeset
|
60 |
|
44556
f63598aa1c4b
rebase: accept multiple --base arguments (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44555
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:
44555
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:
44555
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:
44555
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:
44555
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:
44555
diff
changeset
|
66 |
(it will now rebase `(A + B)::` instead of `B::`). |
44555
05654ea5137c
rebase: accept multiple --source arguments (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
44545
diff
changeset
|
67 |
|
44369
815c63526d1d
relnotes: add entry about previous `hg recover` change
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
44367
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:
44367
diff
changeset
|
69 |
anymore. You can pass `--verify` or call `hg verify` if necessary. |
42944
c2676b5a9f59
narrow: don't hexify paths and double-hexify known nodes on wire (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents:
42935
diff
changeset
|
70 |
|
44396
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44392
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:
44392
diff
changeset
|
72 |
causing you problems and we'll roll it back. |
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44392
diff
changeset
|
73 |
|
44437
6a34e438461b
commit: clear resolved mergestate even if working copy is clean
Martin von Zweigbergk <martinvonz@google.com>
parents:
44434
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:
44434
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:
44434
diff
changeset
|
76 |
|
44396
acbfa31cfaf2
debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents:
44392
diff
changeset
|
77 |
|
42271
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 |
|
44159
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. |
44178
bd4f666b55a7
merge: drop now-unused "abort" argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44159
diff
changeset
|
82 |
|
44434
2f290136b7d6
merge: make hg.merge() take a context instead of a node
Martin von Zweigbergk <martinvonz@google.com>
parents:
44412
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:
44412
diff
changeset
|
84 |
`node` arguments. |
2f290136b7d6
merge: make hg.merge() take a context instead of a node
Martin von Zweigbergk <martinvonz@google.com>
parents:
44412
diff
changeset
|
85 |
|
44178
bd4f666b55a7
merge: drop now-unused "abort" argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44159
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:
44159
diff
changeset
|
87 |
`hg.abortmerge()` directly instead. |
44194
d4c1501225c4
cmdutil: change check_incompatible_arguments() *arg to single iterable
Martin von Zweigbergk <martinvonz@google.com>
parents:
44178
diff
changeset
|
88 |
|
44398
ddbc296a1f48
merge: drop redundant mergeforce argument from hg.merge()
Martin von Zweigbergk <martinvonz@google.com>
parents:
44396
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:
44396
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:
44396
diff
changeset
|
91 |
|
44194
d4c1501225c4
cmdutil: change check_incompatible_arguments() *arg to single iterable
Martin von Zweigbergk <martinvonz@google.com>
parents:
44178
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:
44178
diff
changeset
|
93 |
changed from being varargs argument to being a single collection. |