Show More
@@ -0,0 +1,144 b'' | |||||
|
1 | = Mercurial 6.4rc0 = | |||
|
2 | ||||
|
3 | == New Features == | |||
|
4 | ||||
|
5 | * There is a new internal merge tool called `internal:union-other-first`. | |||
|
6 | It works like `internal:union` but add other side on top of local. | |||
|
7 | * Pullbundles are enabled by default | |||
|
8 | * delta-find: add a way to control the number of bases tested at the same time | |||
|
9 | * changelog-v2: add a configuration to disable rank computation | |||
|
10 | * debug: add an option to display statistic about a bundling operation | |||
|
11 | * debug: add an option to display statistic about a unbundling operation | |||
|
12 | * delta-find: add a delta-reuse policy that blindly accepts incoming deltas | |||
|
13 | * debug: add debug-revlog-stats command | |||
|
14 | * dirstate: add narrow support to `verify` | |||
|
15 | * verify: also check dirstate | |||
|
16 | * commit: add --draft option to use draft phase | |||
|
17 | * amend: add a --draft option to set phase to draft | |||
|
18 | * debug: add a config to abort update early | |||
|
19 | * rhg: implement checkexec to support weird filesystems | |||
|
20 | * debugshell: allow commands to be specified as a CLI argument | |||
|
21 | * rhg-files: add support for narrow when specifying a revision | |||
|
22 | * rust-narrow: enable narrow support for plain `rhg files` | |||
|
23 | ||||
|
24 | == Bug Fixes == | |||
|
25 | ||||
|
26 | Aside from the following (unordered) commits which made it through a manual filter, there are a bunch of typing improvements and fixes, removal of deprecated code and general code cleanup. | |||
|
27 | ||||
|
28 | * lfs: improve an exception message for blob corruption detected on transfer | |||
|
29 | * revlog: use the user facing filename as the display_id for filelogs | |||
|
30 | * rust-status: query fs traversal metadata lazily | |||
|
31 | * shelve: add Shelf.changed_files for resolving changed files in a plugin | |||
|
32 | * demandimport: ensure lazyloaderex sets loader attributes (issue6725) | |||
|
33 | * typing: fix a syntax error in mercurial/cext/bdiff.pyi | |||
|
34 | * cffi: fix a bytes vs str issue on macOS when listing directories | |||
|
35 | * changelog-v2: fix the docket `struct` | |||
|
36 | * schemes: fix a broken check for drive letter conflicts | |||
|
37 | * worker: avoid reading 1 byte at a time from the OS pipe | |||
|
38 | * rust-narrow: fix loop that never loops | |||
|
39 | * setup: Ensure target directory exists with building rust extension | |||
|
40 | * dirstate: invalidate changes when parent-change fails | |||
|
41 | * dirstate: warn about non-explicitly rolledback parent-change | |||
|
42 | * dirstate: write dirstate on successful exit of changing_parents context | |||
|
43 | * largefile: make sure we hold the lock when updating the second dirstate | |||
|
44 | * dirstate: enforce holding the lock while doing any changes | |||
|
45 | * run-tests: stop ignoring venv-installed packages | |||
|
46 | * transaction: run abort callback in all cases | |||
|
47 | * transaction: quietly rollback if no other changes than temporary files | |||
|
48 | * debugrebuilddirstate: double check that no transaction is open | |||
|
49 | * dirstate: do not write an empty dirstate just for backup | |||
|
50 | * locking: take the `wlock` for the full `hg add` duration | |||
|
51 | * locking: take the `wlock` for the full `hg remove` duration | |||
|
52 | * locking: take the `wlock` for the full `hg forget` duration | |||
|
53 | * locking: take the `wlock` for the full `hg addremove` duration | |||
|
54 | * locking: grab the wlock before touching the dirstate in `perfdirstatewrite` | |||
|
55 | * locking: hold the wlock for the full duration of the "keyword demo" | |||
|
56 | * mq: properly take the wlock during the full qfold operation | |||
|
57 | * dirstate: invalidate the dirstate change on transaction failure | |||
|
58 | * status: fix post status writing | |||
|
59 | * status: fix post status invalidation | |||
|
60 | * dirstate: avoid transaction backup/restore if we do not hold the lock | |||
|
61 | * rollback: explicitly skip dirstate rollback when applicable | |||
|
62 | * dirstate-guard: remove the feature | |||
|
63 | * dirstate: make `restorebackup` more robust when it is a noop | |||
|
64 | * dirstate: generalize the dirstate's invalidation on transaction abort | |||
|
65 | * dirstate: detect potential fishy transaction patterns while changing | |||
|
66 | * mq: write the dirstate before stripping | |||
|
67 | * dirstate: explicitly backup the datafile | |||
|
68 | * localrepo: enforce a clean dirstate when the transaction open | |||
|
69 | * localrepo: "blindly" do a dirstate backup at the end of the transaction | |||
|
70 | * dirstate: remove the dedicated backup logic | |||
|
71 | * rhg: fix a bug in path_encode | |||
|
72 | * dirstate: invalidate on all exceptions | |||
|
73 | * large-files: make sure we write newly initialized standin file early | |||
|
74 | * dirstate: warn if dirty when starting an edition | |||
|
75 | * dirstate: track that changes are pending in a transaction | |||
|
76 | * dirstate: distinct transaction callback from largefile | |||
|
77 | * automv: lock the repository before searching for renames | |||
|
78 | * dirstate: only reload the dirstate when it may have changed | |||
|
79 | * dirstate: cleanup the `_map` property cache | |||
|
80 | * status: invalidate dirstate on LockError | |||
|
81 | * dirstate: check that dirstate is clean at the initial context opening | |||
|
82 | * dirstate: have `running_status` write the dirstate when holding the lock | |||
|
83 | * dirstate: have `running_status` warn when exiting with a dirty dirstate | |||
|
84 | * narrow: widden the lock context in `tracking` | |||
|
85 | * narrow: enforce that narrow spec is written within a transaction | |||
|
86 | * transaction: no longer explicitly cache phaseroots | |||
|
87 | * transaction: no longer explicitly cache bookmarks | |||
|
88 | * transaction: use the standard transaction mechanism to backup branch | |||
|
89 | * bundlerepo: handle changegroup induced phase movement in the associated method | |||
|
90 | * bundlerepo: apply phase data stored in the bundle instead of assuming `draft` | |||
|
91 | * config-item: declare undeclared path suboption | |||
|
92 | * narrow: read pending file when applicable | |||
|
93 | ||||
|
94 | == Backwards Compatibility Changes == | |||
|
95 | * rust: upgrade supported Rust toolchain version | |||
|
96 | * rust: move all crates in the main workspace to edition 2021 | |||
|
97 | * hg-core: upgrade `zstd` dependency | |||
|
98 | * hg-core: upgrade `clap` dependency | |||
|
99 | * hg-core: upgrade all remaining dependencies | |||
|
100 | * hg-cpython: upgrade dependencies | |||
|
101 | * rhg: upgrade `clap` dependency | |||
|
102 | * rhg: upgrade the remainder of the dependencies | |||
|
103 | ||||
|
104 | == Internal API Changes == | |||
|
105 | ||||
|
106 | * Many APIs around the dirstate have been made much stricter with regards to | |||
|
107 | locking and transaction handling | |||
|
108 | * Some dirstate APIs have been renamed/removed | |||
|
109 | * In both cases, you should get loud complaints in your tests if you do | |||
|
110 | something wrong. | |||
|
111 | ||||
|
112 | == Miscellaneous == | |||
|
113 | ||||
|
114 | * pullbundle support no longer requires setting a server-side option, | |||
|
115 | providing a .hg/pullbundles.manifest according to the syntax specified in | |||
|
116 | 'hg help -e clonebundles' is enough. | |||
|
117 | * debug-delta-find: add a --source option | |||
|
118 | * delta-find: add debug information about reuse of cached data | |||
|
119 | * delta-find: set the default candidate chunk size to 10 | |||
|
120 | * attr: vendor 22.1.0 | |||
|
121 | * configitems: add a default value for "merge-tools.xxx.regappend" | |||
|
122 | * debugrevlog: display total stored information | |||
|
123 | * emitrevision: if we need to compute a delta on the fly, try p1 or p2 first | |||
|
124 | * emitrevision: consider ancestors revision to emit as available base | |||
|
125 | * find-delta: pass the cache-delta usage policy alongside the cache-delta | |||
|
126 | * delta-find: use a smarter object for snapshot caching | |||
|
127 | * delta-find: use sets instead of list in the snapshot cache | |||
|
128 | * delta-find: make sure we only use newer full snapshot as candidate | |||
|
129 | * delta-find: use a single snapshot cache when applying a group to an object | |||
|
130 | * bundleoperation: optionnaly record the `remote` that produced the bundle | |||
|
131 | * bundle: when forcing acceptance of incoming delta also accept snapshot | |||
|
132 | * bundle: emit full snapshot as is, without doing a redelta | |||
|
133 | * pathutil: slightly faster path audit in the common case | |||
|
134 | * merge: don't pay for pathconflicts if there are none | |||
|
135 | * merge: short-circuit the _checkfs loop upon getting ENOENT | |||
|
136 | * merge: disable the whole filesystem access loop if [_realfs] is false | |||
|
137 | * merge: cache the fs checks made during [_checkunknownfiles] | |||
|
138 | * rust: use `logging_timer` instead of `micro_timer` | |||
|
139 | * rust: run `cargo clippy` | |||
|
140 | * makefile: add `cargo clippy` to tests if cargo is available | |||
|
141 | * heptapod-ci: add `clippy` to the CI | |||
|
142 | * convert: use a priority queue for sorting commits, to make sorting faster | |||
|
143 | * delta-find: adjust the default candidate group chunk size | |||
|
144 | * delta-find: declare the "paths..*:pulled-delta-reuse-policy option No newline at end of file |
@@ -2,9 +2,6 b'' | |||||
2 |
|
2 | |||
3 | == New Features == |
|
3 | == New Features == | |
4 |
|
4 | |||
5 | * There is a new internal merge tool called `internal:union-other-first`. |
|
|||
6 | It works like `internal:union` but add other side on top of local. |
|
|||
7 |
|
||||
8 | == Default Format Change == |
|
5 | == Default Format Change == | |
9 |
|
6 | |||
10 | These changes affect newly created repositories (or new clones) done with |
|
7 | These changes affect newly created repositories (or new clones) done with | |
@@ -19,7 +16,3 b' Mercurial XXX.' | |||||
19 | == Internal API Changes == |
|
16 | == Internal API Changes == | |
20 |
|
17 | |||
21 | == Miscellaneous == |
|
18 | == Miscellaneous == | |
22 |
|
||||
23 | * pullbundle support no longer requires setting a server-side option, |
|
|||
24 | providing a .hg/pullbundles.manifest according to the syntax specified in |
|
|||
25 | 'hg help -e clonebundles' is enough. |
|
General Comments 0
You need to be logged in to leave comments.
Login now