comparison relnotes/6.9 @ 52142:63c0075afefa stable

relnotes: add 6.9rc0
author Raphaël Gomès <rgomes@octobus.net>
date Mon, 28 Oct 2024 15:50:20 +0100
parents
children 31d45a1cbc47
comparison
equal deleted inserted replaced
52141:b53ab03e2d1a 52142:63c0075afefa
1 = Mercurial 6.9rc0 =
2
3 /!\ These are release notes for a release candidate version. Any and all points can be reverted before the final release.
4
5 == New Features ==
6
7 * exchange: improve computation of relevant markers for large repos
8 * Add a Rust fast-path to speed up update (also for `clone`) from null (up to 4x faster)
9 * Introduced a new rev-branch-cache version (v2) that is mmap-resistant
10 * The branchmap's performance was improved
11 * Improved the performance of the fix for issue6528
12 * clonebundles: allow manifest to specify sha256 digest of bundles
13 * merge: improve working-copy mtime race handling
14 * profiling: add a py-spy profiling backend
15 * revlog: use an explicit config option to enable mmap usage for index
16 * revlog: use mmap by default is pre-population is available
17 * mmap: populate the mapping by default
18 * mmap: populate mapping in a background thread
19
20 == Experimental features ==
21
22 * merge: add a config to allow conflict-free merge of changes on adjacent lines
23
24 == Bug Fixes ==
25
26 * `config.server.validate` now also works on narrowed repositories
27 * convert: fix various leaked file descriptors
28 * stream: prefer keeping an open file handle to volatile file instead of copy
29 * dummysmtpd: fix EOF handling on newer versions of OpenSSL
30 * cext: correct the argument handling of `b85encode()`
31 * branchmap-v3: make sure we write the cache after detecting pure-topo mode
32 * rust: apply clippy lints
33 * copies: make sure deleted copy info do not overwriting unrelated ones
34 * rebase: don't call rewriteutil.precheck() with to-be-skipped commits
35 * phabricator: correct the default value of `phabhunk.corpus`
36 * linelog: correct the default value of `annotateresult.lines`
37 * largefiles: avoid a potentially undefined variable in exception case
38 * httppeer: move a variable to avoid a bad reference before assignment warning
39 * httppeer: avoid another bad reference before assignment warning
40 * tests: use packaging from setuptools instead of deprecated distutils
41 * manifest: type and fix unhexlify
42 * manifest: align some vfs option access on the fact we might not have options
43 * scmutils: read the requires file before writing to avoid unnecessary rewrite
44 * debugsparse: stop taking the store lock
45 * sparse: reliably avoid writing to store without a lock
46 * largefiles: sync up `largefilesdirstate` methods with `dirstate` base class
47 * shelve: raise an error when loading a corrupt state file in an impossible case
48 * monotone: replace %s interpolation with appropriate numeric specifiers
49 * shelve: consistently convert exception to bytes via `stringutil.forcebytestr`
50 * remotefilelog: honor the `--format` arg of the `debugindex` command
51 * remotefilelog: adapt the `debugindex` command to past API changes
52 * run-tests: add color to the progress output
53 * archive: defer opening the output until a file is matched
54 * help: add :config-doc:`section.key` shorthand to insert documentation
55 * censor: document the censor.policy option (issue6909)
56 * rust-revlog: don't try to open the data file if the index is empty
57 * bundlerepo: fix mismatches with repository and revlog classes
58 * revlog: make `clearcaches()` signature consistent with ManifestRevlog
59 * unionrepo: fix mismatches with revlog classes
60 * keepalive: fix a signature mismatch for a http.client.HTTPResponse subclass
61 * lfs: fix various signature mismatches for vfs subclasses
62 * store: fix a signature mismatch for a vfs subclass
63 * util: avoid a leaked file descriptor in `util.makelock()` exceptional case
64 * statichttprepo: fix `httprangereader.read()` for py3
65 * util: make `mmapread()` work on Windows again
66 * mdiff: tweak calls into `bdiff.fixws` to match its type hints
67 * base85: avoid a spurious use-before-initialized warning in `pure` module
68 * install: static data moved from setup.py to pyproject.toml
69 * upgrade: disable using the parallel workers optimization on macOS
70 * doc: generate separate commands/topics/extension pages
71 * extdiff: don't run gui programs when in a cli-only environment
72 * clonebundles: stop shell quoting `HGCB_BUNDLE_BASENAME` environment variable
73 * rev-branch-cache: disable mmapping by default on Windows
74
75 == Backwards Compatibility Changes ==
76
77 * This release drops support for Python 3.6 and 3.7.
78
79 == Internal API Changes ==
80
81 * manifest: deprecated readdelta and readfast
82
83 == Miscellaneous ==
84
85 * http: reuse Python's implementation of read/readline/readinto
86 * http: use urllib's cookie handler
87 * rev-branch-cache: schedule a write of the "v2" format if we read from "v1"
88 * rev-branch-cache: have debugupdatecache warm rbc too
89 * rev-branch-cache: reenable memory mapping of the revision data
90 * debugwireproto: redo logging to also work for https
91 * rust: use `.cargo/config.toml` instead of `.cargo/config`
92 * A whole bunch of typing improvements, which in turn found many bugs
93 * Test suite improvements
94 * Various packaging improvements