Show More
@@ -1,115 +1,139 b'' | |||||
|
1 | = Mercurial 6.7.4 = | |||
|
2 | ||||
|
3 | Exceptional release following a critical regression causing possible data loss | |||
|
4 | in certain conditions: | |||
|
5 | ||||
|
6 | * inline-changelog: fix a critical bug in write_pending that delete data (3cf9e52f5e27) | |||
|
7 | * inline-changelog: fix pending transaction visibility when splitting (1721d983dd6d) | |||
|
8 | ||||
|
9 | Other changes in this release: | |||
|
10 | ||||
|
11 | * exchange: fix locking to actually be scoped | |||
|
12 | * chistedit: change action for the correct item | |||
|
13 | * rust-status: sort the failed matches when printing them | |||
|
14 | * hooks: add a prewlock and a prelock hooks | |||
|
15 | * bookmark: fix remote bookmark deletion when the push is raced | |||
|
16 | ||||
1 | = Mercurial 6.7.3 = |
|
17 | = Mercurial 6.7.3 = | |
2 |
|
18 | |||
|
19 | /!\ This release contains a bug causing possible data loss, use 6.7.4 instead. | |||
|
20 | ||||
3 | * setup: display return code information about failed `hg` call |
|
21 | * setup: display return code information about failed `hg` call | |
4 | * bundle-spec: properly identify changegroup-less bundle |
|
22 | * bundle-spec: properly identify changegroup-less bundle | |
5 | * bundle-spec: properly parse boolean configuration as boolean |
|
23 | * bundle-spec: properly parse boolean configuration as boolean | |
6 | * matchers: fix the bug in rust PatternMatcher that made it cut off early |
|
24 | * matchers: fix the bug in rust PatternMatcher that made it cut off early | |
7 | * match: fix the "visitdir" method on "rootfilesin" matchers |
|
25 | * match: fix the "visitdir" method on "rootfilesin" matchers | |
8 | * match: fix the rust-side bug in visit_children_set for rootfilesin matchers |
|
26 | * match: fix the rust-side bug in visit_children_set for rootfilesin matchers | |
9 | * match: strengthen visit_children_set invariant, Recursive means "all files" |
|
27 | * match: strengthen visit_children_set invariant, Recursive means "all files" | |
10 | * wireprotoserver: ensure that output stream gets flushed on exception |
|
28 | * wireprotoserver: ensure that output stream gets flushed on exception | |
11 | * re2: make errors quiet |
|
29 | * re2: make errors quiet | |
12 | * dirstate-v2: add check of parent/child nodes being related when writing |
|
30 | * dirstate-v2: add check of parent/child nodes being related when writing | |
13 | * dirstate-v2: check that root nodes are at the root before writing |
|
31 | * dirstate-v2: check that root nodes are at the root before writing | |
14 | * rust-cpython: don't swallow the dirstate error message |
|
32 | * rust-cpython: don't swallow the dirstate error message | |
15 | * rust: blanket implementation of Graph for Graph references |
|
33 | * rust: blanket implementation of Graph for Graph references | |
16 | * Various fixes to `admin::verify` |
|
34 | * Various fixes to `admin::verify` | |
17 |
|
35 | |||
18 | = Mercurial 6.7.2 = |
|
36 | = Mercurial 6.7.2 = | |
19 |
|
37 | |||
|
38 | /!\ This release contains a bug causing possible data loss, use 6.7.4 instead. | |||
|
39 | ||||
20 | Exceptional release following a large performance regression when cloning. |
|
40 | Exceptional release following a large performance regression when cloning. | |
21 |
|
41 | |||
22 | We are setting up automated benchmarks to reduce the likelihood of regressions |
|
42 | We are setting up automated benchmarks to reduce the likelihood of regressions | |
23 | of the sort from happening in the future. |
|
43 | of the sort from happening in the future. | |
24 |
|
44 | |||
25 | * phases: avoid a potentially costly dictionary interation in some case |
|
45 | * phases: avoid a potentially costly dictionary interation in some case | |
26 | * phases: update the phase set as we go during retract boundary |
|
46 | * phases: update the phase set as we go during retract boundary | |
27 | * bundle2: make the "hgtagsfnodes" part advisory |
|
47 | * bundle2: make the "hgtagsfnodes" part advisory | |
28 |
|
48 | |||
29 | = Mercurial 6.7.1 = |
|
49 | = Mercurial 6.7.1 = | |
30 |
|
50 | |||
|
51 | /!\ This release contains a bug causing possible data loss, use 6.7.4 instead. | |||
|
52 | ||||
31 | Exceptional release following a crash found in delta code that can be triggered |
|
53 | Exceptional release following a crash found in delta code that can be triggered | |
32 | with complex repository shapes. |
|
54 | with complex repository shapes. | |
33 |
|
55 | |||
34 | * delta-search: fix crash caused by unbound variable |
|
56 | * delta-search: fix crash caused by unbound variable | |
35 | * sshpeer: fix path when handling invalid url exception |
|
57 | * sshpeer: fix path when handling invalid url exception | |
36 | * subrepo: fix normalizing paths with scheme |
|
58 | * subrepo: fix normalizing paths with scheme | |
37 |
|
59 | |||
38 | = Mercurial 6.7 = |
|
60 | = Mercurial 6.7 = | |
39 |
|
61 | |||
|
62 | /!\ This release contains a bug causing possible data loss, use 6.7.4 instead. | |||
|
63 | ||||
40 | As usual, a *lot* of patches don't make it to this list. |
|
64 | As usual, a *lot* of patches don't make it to this list. | |
41 |
|
65 | |||
42 | == New Features == |
|
66 | == New Features == | |
43 |
|
67 | |||
44 | * JSON templates can now use structured diffstat data |
|
68 | * JSON templates can now use structured diffstat data | |
45 | * Support rhg status --rev --rev |
|
69 | * Support rhg status --rev --rev | |
46 | * The index for REVLOGv1 now has a Rust implementation |
|
70 | * The index for REVLOGv1 now has a Rust implementation | |
47 | * Improved `hg censor`'s output |
|
71 | * Improved `hg censor`'s output | |
48 | * censor: add a command flag to skip the head checks |
|
72 | * censor: add a command flag to skip the head checks | |
49 | * censor: accept multiple revision in a single call |
|
73 | * censor: accept multiple revision in a single call | |
50 | * usage: add a `usage.repository-role` config |
|
74 | * usage: add a `usage.repository-role` config | |
51 | * branchmap: use mmap for faster revbranchcache loading |
|
75 | * branchmap: use mmap for faster revbranchcache loading | |
52 | * crecord: enable search hotkeys (issue6834) |
|
76 | * crecord: enable search hotkeys (issue6834) | |
53 | * hg-core: separate timestamp and extra methods |
|
77 | * hg-core: separate timestamp and extra methods | |
54 | * annotate: limit output to range of lines |
|
78 | * annotate: limit output to range of lines | |
55 | * unbundle: faster computation of changed heads |
|
79 | * unbundle: faster computation of changed heads | |
56 | * Large improvements of some of the phases code (23950e39281f) |
|
80 | * Large improvements of some of the phases code (23950e39281f) | |
57 | * rust-filepatterns: export glob_to_re function |
|
81 | * rust-filepatterns: export glob_to_re function | |
58 |
|
82 | |||
59 | == New Experimental Features == |
|
83 | == New Experimental Features == | |
60 |
|
84 | |||
61 | * Introduce `hg admin::chainsaw-update` for automation and *advanced* users |
|
85 | * Introduce `hg admin::chainsaw-update` for automation and *advanced* users | |
62 |
|
86 | |||
63 | == Bug Fixes == |
|
87 | == Bug Fixes == | |
64 |
|
88 | |||
65 | * templatekw: fix inconsistency of diffstat with diff.merge |
|
89 | * templatekw: fix inconsistency of diffstat with diff.merge | |
66 | * The endless stream of Python 3 cleanups continues |
|
90 | * The endless stream of Python 3 cleanups continues | |
67 | * Improved setup.py robustness |
|
91 | * Improved setup.py robustness | |
68 | * Improved test suite robustness |
|
92 | * Improved test suite robustness | |
69 | * add: don't attempt to add back removed files unless explicitly listed |
|
93 | * add: don't attempt to add back removed files unless explicitly listed | |
70 | * statprof: handle `lineno == None` in more cases |
|
94 | * statprof: handle `lineno == None` in more cases | |
71 | * rust: fix cargo doc for hg-cpython |
|
95 | * rust: fix cargo doc for hg-cpython | |
72 | * rust-python-index: don't panic on a corrupted index when calling from Python |
|
96 | * rust-python-index: don't panic on a corrupted index when calling from Python | |
73 | * debugindexstats: handle the lack of Rust support better |
|
97 | * debugindexstats: handle the lack of Rust support better | |
74 | * matchers: use correct method for finding index in vector |
|
98 | * matchers: use correct method for finding index in vector | |
75 | * narrow: strip trailing `/` from manifest dir before matching it |
|
99 | * narrow: strip trailing `/` from manifest dir before matching it | |
76 | * cext: fix potential memory leaks of list items appended with PyList_Append |
|
100 | * cext: fix potential memory leaks of list items appended with PyList_Append | |
77 | * doc: document that labels must have a dot in them to have an effect |
|
101 | * doc: document that labels must have a dot in them to have an effect | |
78 | * debugformat: fix formatting for compression level |
|
102 | * debugformat: fix formatting for compression level | |
79 | * obsutil: sort metadata before comparing in geteffectflag() |
|
103 | * obsutil: sort metadata before comparing in geteffectflag() | |
80 | * crecord: drop calls to `curses.endwin()` |
|
104 | * crecord: drop calls to `curses.endwin()` | |
81 | * rust-index: don't use mutable borrow for head-diff computation |
|
105 | * rust-index: don't use mutable borrow for head-diff computation | |
82 | * rust-index: don't use mutable borrow to computed filtered heads |
|
106 | * rust-index: don't use mutable borrow to computed filtered heads | |
83 |
|
107 | |||
84 |
|
108 | |||
85 | == Backwards Compatibility Changes == |
|
109 | == Backwards Compatibility Changes == | |
86 |
|
110 | |||
87 | Users of the Rust extensions and/or `rhg` should be aware that the new Rust |
|
111 | Users of the Rust extensions and/or `rhg` should be aware that the new Rust | |
88 | index can result in a performance degradation for push/pull on repositories |
|
112 | index can result in a performance degradation for push/pull on repositories | |
89 | *not* using `persistent-nodemap` (see `hg help config.format.use-persistent-nodemap`). |
|
113 | *not* using `persistent-nodemap` (see `hg help config.format.use-persistent-nodemap`). | |
90 |
|
114 | |||
91 | If this is something that matters to you, please reach out to us as this is not |
|
115 | If this is something that matters to you, please reach out to us as this is not | |
92 | an insurmountable obstacle. This is a choice base on the assumption that |
|
116 | an insurmountable obstacle. This is a choice base on the assumption that | |
93 | there are few people in this situation and our time should be spent on more |
|
117 | there are few people in this situation and our time should be spent on more | |
94 | pressing matters. |
|
118 | pressing matters. | |
95 |
|
119 | |||
96 | == Internal API Changes == |
|
120 | == Internal API Changes == | |
97 |
|
121 | |||
98 | * 62913:498017baa34b "cleanup: remove some code scheduled to be removed after 5.9" |
|
122 | * 62913:498017baa34b "cleanup: remove some code scheduled to be removed after 5.9" | |
99 | * 62914:88ef80210d67 "cleanup: drop `dirstate.is_changing_parent` deprecated since 6.5" |
|
123 | * 62914:88ef80210d67 "cleanup: drop `dirstate.is_changing_parent` deprecated since 6.5" | |
100 | * 62915:591845f89ada "cleanup: drop `path.pushloc` deprecated since 6.5" |
|
124 | * 62915:591845f89ada "cleanup: drop `path.pushloc` deprecated since 6.5" | |
101 | * 62916:d8f65fc72e7b "cleanup: drop deprecated config attribute on the revlog class" |
|
125 | * 62916:d8f65fc72e7b "cleanup: drop deprecated config attribute on the revlog class" | |
102 | * 62917:5c9c41273367 "cleanup: turn `pathsuboption` deprecation warning into an error" |
|
126 | * 62917:5c9c41273367 "cleanup: turn `pathsuboption` deprecation warning into an error" | |
103 | * 62918:7b837fabc990 "cleanup: turn `wrappedfunction` deprecation warning into an error" |
|
127 | * 62918:7b837fabc990 "cleanup: turn `wrappedfunction` deprecation warning into an error" | |
104 | * 62919:eda075d7b2ac "cleanup: turn `wrapfunction` deprecation warning into an error" |
|
128 | * 62919:eda075d7b2ac "cleanup: turn `wrapfunction` deprecation warning into an error" | |
105 | * 62920:c845479fc64d "cleanup: drop the `bytes` compatibility for attribute related function" |
|
129 | * 62920:c845479fc64d "cleanup: drop the `bytes` compatibility for attribute related function" | |
106 | * 63464:dcaa2df1f688 "changelog: never inline changelog" |
|
130 | * 63464:dcaa2df1f688 "changelog: never inline changelog" | |
107 | * 63465:a93e52f0b6ff "changelog: disallow delayed write on inline changesets" |
|
131 | * 63465:a93e52f0b6ff "changelog: disallow delayed write on inline changesets" | |
108 | * 63825:79cd29d598af "dirstate: make the `transaction` argument of `setbranch` mandatory" |
|
132 | * 63825:79cd29d598af "dirstate: make the `transaction` argument of `setbranch` mandatory" | |
109 |
|
133 | |||
110 | == Miscellaneous == |
|
134 | == Miscellaneous == | |
111 |
|
135 | |||
112 | * perf: support --template on perf::phases |
|
136 | * perf: support --template on perf::phases | |
113 | * perf: add a --as-push option to perf::unbundle |
|
137 | * perf: add a --as-push option to perf::unbundle | |
114 | * debug: add a debug::unbundle command that simulate the unbundle from a push |
|
138 | * debug: add a debug::unbundle command that simulate the unbundle from a push | |
115 | * Lots of refactorings to prepare for performance improvements and remove tech debt |
|
139 | * Lots of refactorings to prepare for performance improvements and remove tech debt |
General Comments 0
You need to be logged in to leave comments.
Login now