annotate relnotes/6.5 @ 51523:ef369d16965d

branchcache: cleanup the final key generation after update A lot of duplicated work seemed to be done, as we already update the tiprev and tipnode when needed right before. So we simplify that part to focus on the filtered hash. See inline comment for details.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Sun, 25 Feb 2024 23:31:50 +0100
parents c083d9776cb2
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
51115
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
1 = Mercurial 6.5.3 =
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
2
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
3 * "hgweb: pass strings in WSGI environment correctly from wsgicgi"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
4 * "perf: introduce more cache invalidation option in perf::tags"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
5 * "perf: add a `--clear-fnode-cache-rev` argument to perf::tags"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
6 * "perf: add a --update-last flag to perf::tags"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
7 * "blackbox: add a option to duplicate output to stderr too"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
8 * "tags: avoid expensive access to repo.changelog in a loop"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
9 * "revlog: fix a bug where NULL_NODE failed to be resolved to NULL_REV"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
10 * "httppeer: fix static-http: scheme autodetection (issue6833)"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
11 * "tests: backed out changeset 8037ddacad47"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
12 * "stream-clone: fix a crash when a repo with an empty revlog is cloned"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
13 * "censor: accept censored revision during upgrade"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
14 * "revlog: avoid opening and closing the file for each cloned revision"
c083d9776cb2 relnotes: add 6.5.3
Raphaël Gomès <rgomes@octobus.net>
parents: 50933
diff changeset
15
50933
5a8b54201039 relnotes: add 6.5.2
Raphaël Gomès <rgomes@octobus.net>
parents: 50816
diff changeset
16 = Mercurial 6.5.2 =
5a8b54201039 relnotes: add 6.5.2
Raphaël Gomès <rgomes@octobus.net>
parents: 50816
diff changeset
17
5a8b54201039 relnotes: add 6.5.2
Raphaël Gomès <rgomes@octobus.net>
parents: 50816
diff changeset
18 * hgweb: encode WSGI environment using the ISO-8859-1 codec
5a8b54201039 relnotes: add 6.5.2
Raphaël Gomès <rgomes@octobus.net>
parents: 50816
diff changeset
19 * rhg: fix the bug where sparse config is interpreted as relglob instead of glob
5a8b54201039 relnotes: add 6.5.2
Raphaël Gomès <rgomes@octobus.net>
parents: 50816
diff changeset
20 * gpg: fix an UnboundLocalError whenever using --force
5a8b54201039 relnotes: add 6.5.2
Raphaël Gomès <rgomes@octobus.net>
parents: 50816
diff changeset
21 * transaction: fix __repr__() and make the default name bytes
5a8b54201039 relnotes: add 6.5.2
Raphaël Gomès <rgomes@octobus.net>
parents: 50816
diff changeset
22 * setup: make the error "Unable to find a working hg binary" more informative
5a8b54201039 relnotes: add 6.5.2
Raphaël Gomès <rgomes@octobus.net>
parents: 50816
diff changeset
23 * tests: avoid test environment affecting setup.py
5a8b54201039 relnotes: add 6.5.2
Raphaël Gomès <rgomes@octobus.net>
parents: 50816
diff changeset
24 * run-tests: detect HGWITHRUSTEXT value
5a8b54201039 relnotes: add 6.5.2
Raphaël Gomès <rgomes@octobus.net>
parents: 50816
diff changeset
25
50816
787af4e0e8b7 relnotes: add 6.5.1
Raphaël Gomès <rgomes@octobus.net>
parents: 50748
diff changeset
26 = Mercurial 6.5.1 =
787af4e0e8b7 relnotes: add 6.5.1
Raphaël Gomès <rgomes@octobus.net>
parents: 50748
diff changeset
27
787af4e0e8b7 relnotes: add 6.5.1
Raphaël Gomès <rgomes@octobus.net>
parents: 50748
diff changeset
28 * A bunch of improvements to Python 3.12 compatibility
787af4e0e8b7 relnotes: add 6.5.1
Raphaël Gomès <rgomes@octobus.net>
parents: 50748
diff changeset
29 * repoview: fix the filter created by `extrafilter`
787af4e0e8b7 relnotes: add 6.5.1
Raphaël Gomès <rgomes@octobus.net>
parents: 50748
diff changeset
30 * Improve portability of the test suite
787af4e0e8b7 relnotes: add 6.5.1
Raphaël Gomès <rgomes@octobus.net>
parents: 50748
diff changeset
31 * fncache: fix a bug that corrupts the fncache after transaction rollback
787af4e0e8b7 relnotes: add 6.5.1
Raphaël Gomès <rgomes@octobus.net>
parents: 50748
diff changeset
32 * revlog: fix the naming scheme use by split temporary file
787af4e0e8b7 relnotes: add 6.5.1
Raphaël Gomès <rgomes@octobus.net>
parents: 50748
diff changeset
33 * perf: fix perf::tags
787af4e0e8b7 relnotes: add 6.5.1
Raphaël Gomès <rgomes@octobus.net>
parents: 50748
diff changeset
34
50748
3ffc7209bbae relnotes: add 6.5 final
Raphaël Gomès <rgomes@octobus.net>
parents: 50720
diff changeset
35 = Mercurial 6.5 =
50720
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
36
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
37 As usual, a lot of patches don't make it to this list since they're more internal.
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
38
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
39 == New Features ==
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
40
50748
3ffc7209bbae relnotes: add 6.5 final
Raphaël Gomès <rgomes@octobus.net>
parents: 50720
diff changeset
41 * Improved Python 3.12 compatiblity
50720
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
42 * configitems: enable changegroup3 by default (unless using infinitepush)
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
43 * extras: expose 'retained_extras' for extensions to extend
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
44 * stabletailgraph: implement stable-tail sort
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
45 * stabletailgraph: naive version of leap computation
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
46 * bundle: introduce a "v3" spec
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
47 * clone-bundles: add a basic first version of automatic bundle generation
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
48 * clone-bundles: garbage collect older bundle when generating new ones
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
49 * clone-bundles: only regenerate the clone bundle when cached ration is low
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
50 * clone-bundles: also control automation based on absolute number of revisions
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
51 * clone-bundles: add a configuration to control auto-generation on changes
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
52 * clone-bundles: introduce a command to refresh bundle
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
53 * clone-bundles: add a command to clear all bundles
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
54 * clone-bundles: add an option to generate bundles in the background
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
55 * clonebundles: add support for inline (streaming) clonebundles
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
56 * clonebundles: adds a auto-generate.serve-inline option
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
57 * match: add `filepath:` pattern to match an exact filepath relative to the root
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
58 * hgweb: add "children" into the JSON template for a changeset
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
59 * hgweb: add support to explicitly access hidden changesets
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
60 * pull: add --remote-hidden option and pass it through peer creation
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
61 * hidden: add support for --remote-hidden to HTTP peer
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
62 * hidden: support passing --hidden with `serve --stdio`
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
63 * hidden: add support to explicitly access hidden changesets with SSH peers
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
64 * perf: introduce a `perf::stream-locked-section` command
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
65 * perf: add a function to find a stream version generator
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
66 * perf: add support for stream-v3 during benchmark
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
67 * perf: add a perf::stream-generate command
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
68 * perf: add a perf::stream-consume
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
69 * cli: make debugnodemap capable of inspecting an arbitrary nodemap
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
70 * rust: configure MSRV in Clippy
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
71 * rhg: make `rhg files` work if `ui.relative-files=true` is specified
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
72 * rhg: support `rhg files` with `ui.relative-paths=false`
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
73 * rhg: support `status --print0`
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
74 * tree-manifest: allow `debugupgraderepo` to run on tree manifest repo
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
75 * library: enable runpy invocation on mercurial package
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
76 * library: incorporate demandimport into runpy invocation
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
77 * exchange: allow passing no includes/excludes to `pull()`
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
78
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
79 == New Experimental Features ==
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
80
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
81 * stream-clone: add an experimental v3 version of the protocol
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
82 * stream-clone: support streamv3 on the cli [hg bundle]
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
83
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
84 == Bug Fixes ==
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
85
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
86 * mail: add a missing argument to properly override starttls
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
87 * bundle: include required phases when saving a bundle (issue6794)
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
88 * outgoing: fix common-heads computation from `missingroots` argument
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
89 * strip: do not include internal changeset in the strip backup
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
90 * bundle: abort if the user request bundling of internal changesets
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
91 * bundle: prevent implicit bundling of internal changeset
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
92 * encoding: avoid quadratic time complexity when json-encoding non-UTF8 strings
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
93 * sha1dc: Make sure SHA1DC_BIGENDIAN is set on Darwin/PowerPC
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
94 * zstd: hack include order to ensure that our zstd.h is found
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
95 * dirstate: better error messages when dirstate is corrupted
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
96 * stream-clone: avoid opening a revlog in case we do not need it
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
97 * treemanifest: make `updatecaches` update the nodemaps for all directories
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
98 * rust-hg-core: move from `ouroboros` to `self_cell`
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
99 * rust-dependencies: switch from `users` to `whoami`
50748
3ffc7209bbae relnotes: add 6.5 final
Raphaël Gomès <rgomes@octobus.net>
parents: 50720
diff changeset
100 * dirstate-v2: actually fix the dirstate-v2 upgrade race
3ffc7209bbae relnotes: add 6.5 final
Raphaël Gomès <rgomes@octobus.net>
parents: 50720
diff changeset
101 * dirstate: avoid leaking disk space in `hg debugrebuilddirstate`
3ffc7209bbae relnotes: add 6.5 final
Raphaël Gomès <rgomes@octobus.net>
parents: 50720
diff changeset
102 * clonebundles: add warning if auto-generate is enabled without formats
3ffc7209bbae relnotes: add 6.5 final
Raphaël Gomès <rgomes@octobus.net>
parents: 50720
diff changeset
103 * win32mbcs: unbyteify some strings for py3 support
3ffc7209bbae relnotes: add 6.5 final
Raphaël Gomès <rgomes@octobus.net>
parents: 50720
diff changeset
104 * rust-revlog: fix incorrect results with NULL_NODE prefixes
3ffc7209bbae relnotes: add 6.5 final
Raphaël Gomès <rgomes@octobus.net>
parents: 50720
diff changeset
105 * rust-revlog: fix RevlogEntry.data() for NULL_REVISION
50720
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
106
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
107 == Backwards Compatibility Changes ==
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
108
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
109 * infinitepush: aggressively deprecated infinite push
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
110 * narrow: indicated the default of 'Yes' when confirming auto-remove-includes
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
111
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
112 == Internal API Changes ==
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
113
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
114 * Store walk was reworked to fix small race conditions in stream-clone and
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
115 greatly improve its API robustness and flexibility.
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
116
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
117 == Miscellaneous ==
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
118
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
119 * Typechecking support was improved in a lot of places
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
120 * Removed more useless compat code for now unsupported Python versions
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
121 * Sped up zstd usage in Rust contexts
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
122 * revlog: add an exception hint when processing LFS flags without the extension
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
123 * ui: keep the progress bar around when writing if stdout is not a tty
bb42988c7e15 relnotes: add 6.5rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
124 * transaction: use a ".bck" extension for all backup file