relnotes/6.8
author Matt Harbison <matt_harbison@yahoo.com>
Mon, 21 Dec 2020 20:21:46 -0500
changeset 52289 323e3626929a
parent 52137 eae3ec345e5e
permissions -rw-r--r--
sslutil: add support for clients to set TLSv1.3 as the minimum protocol AFAICT, all of the TLS versions are supported by the server without doing any explicit work, and there's only a `devel` config to specify an exact version on the server side. Clients would also use TLSv1.3 if available, but this prevents the server from negotiating down. This also causes "tls1.3" to be listed in `hg debuginstall`, even though it was previously supported (if the Python intepreter supported it- IDK if there's a good way to proactively test for and show future protocols without requiring manual updates like this). The v1.3 tests are nested inside the v1.2 tests for simplicity. The v1.2 blocks already assume v1.0 and v1.1 support, so this seems reasonable for now. If/when the older protocols start getting dropped, this will have to be reworked anyway.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
52137
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
     1
= Mercurial 6.8.2 =
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
     2
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
     3
This is the last version that supports Python 3.6 and 3.7.
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
     4
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
     5
 * Compatibility for Python 3.12 and 3.13
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
     6
 * evolution: stop wrongly flagging unrelated part of a split as divergent
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
     7
 * histedit: create state and acquire locks earlier
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
     8
 * copytracing: fix a bug in an edge case in metadata.compute_all_files_changes
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
     9
 * rhg: ignore readonly FS error when saving dirstate
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    10
 * merge: sort filemap only if requested by the caller
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    11
 * windows: implement `util.cachestat` to fix numerous dirstate problems
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    12
 * subrepo: propagate non-default path on outgoing
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    13
 * import: fix erroneous comparison of str with bytes
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    14
 * largefiles: fix check that ensures that --all-largefiles is only used locally
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    15
 * profiling: improve 3.12 error message for calling lsprof twice
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    16
 * profiling: use "stat" profiler to profile individual request
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    17
 * module-policy: ignore empty module policy
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    18
 * relnotes: skip the test if the source repository is not readable
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    19
 * wireprototypes: fix exception handling code with a bad pytype suppression
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    20
 * Many more type fixes and improvements
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    21
 * Improvements to the test suite
eae3ec345e5e relnotes: add 6.8.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51752
diff changeset
    22
51752
11a9e2fc0caf relnotes: add 6.8.1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51663
diff changeset
    23
= Mercurial 6.8.1 =
11a9e2fc0caf relnotes: add 6.8.1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51663
diff changeset
    24
11a9e2fc0caf relnotes: add 6.8.1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51663
diff changeset
    25
 * Python 3.12: fix an issue between `threading` and `demandimport`
11a9e2fc0caf relnotes: add 6.8.1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51663
diff changeset
    26
 * rhg: expand user and environment variable in paths to ignore in config and
11a9e2fc0caf relnotes: add 6.8.1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51663
diff changeset
    27
   includes
11a9e2fc0caf relnotes: add 6.8.1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51663
diff changeset
    28
 * `win32mbcs` extension: fix an encoding issue
11a9e2fc0caf relnotes: add 6.8.1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51663
diff changeset
    29
51663
11f41248595b relnotes: add 6.8
Raphaël Gomès <rgomes@octobus.net>
parents: 51647
diff changeset
    30
= Mercurial 6.8 =
51647
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    31
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    32
As usual, a *lot* of patches don't make it to this list.
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    33
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    34
== New Features or performance improvements ==
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    35
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    36
 * Phases have been reworked to improve their general performance
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    37
    * revset: stop serializing node when using "%ln"
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    38
    * phases: convert remote phase root to node while reading them
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    39
    * phases: use revision number in new_heads
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    40
    * phases: use revision number in analyze_remote_phases
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    41
    * phases: stop using `repo.set` in `remotephasessummary`
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    42
    * phases: move RemotePhasesSummary to revision number
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    43
    * phases: use revision number in `_pushdiscoveryphase`
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    44
    * phases: introduce a performant efficient way to access revision in a set
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    45
    * phases: rework the logic of _pushdiscoveryphase to bound complexity
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    46
 * The Rust working copy code is being used by more places now:
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    47
     * matchers: support patternmatcher in rust
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    48
     * dirstate: remove the python-side whitelist of allowed matchers
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    49
 * stream-clone: disable gc for `_entries_walk` duration
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    50
 * stream-clone: disable gc for the initial section for the v3 format
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    51
 * postincoming: avoid computing branchhead if no report will be posted
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    52
 * stream-clone: disable gc for the entry listing section for the v2 format
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    53
 * perf: allow profiling of more than one run
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    54
 * perf: run the gc before each run
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    55
 * perf: start recording total time after warming
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    56
 * perf: clear vfs audit_cache before each run
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    57
 * outgoing: rework the handling of the `missingroots` case to be faster
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    58
 * outgoing: add a simple fastpath when there is no common
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    59
 * tags-cache: skip the filternode step if we are not going to use it
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    60
 * tags-cache: directly operate on rev-num warming hgtagsfnodescache
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    61
 * tags-cache: directly perform a monimal walk for hgtagsfnodescache warming
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    62
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    63
== New Experimental Features ==
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    64
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    65
 * Introduce a new experimental branch cache "v3":
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    66
    * branchcache: add more test for the logic around obsolescence and branch heads
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    67
    * branchcache: skip entries that are topological heads in the on disk file
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    68
    * branchcache: add a "pure topological head" fast path
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    69
    * branchcache: allow to detect "pure topological case" for branchmap
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    70
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    71
== Bug Fixes ==
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    72
51663
11f41248595b relnotes: add 6.8
Raphaël Gomès <rgomes@octobus.net>
parents: 51647
diff changeset
    73
 * rust: use `cpython` 0.7.2 crate to add support for Python 3.12
51647
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    74
 * perf-stream-locked-section: actually use v1 generation when requested
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    75
 * perf-stream-locked-section: fix the call to the v3 generator
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    76
 * perf-stream-locked-section: advertise the right version key in the help
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    77
 * stream: in v3, skip the "size" fast path if the entries have some unknown size
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    78
 * stream-clone: stop getting the file size of all file in v3
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    79
 * streamclone: stop listing files for entries that have no volatile files
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    80
 * perf-stream-consume: use the source repository config when applying
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    81
 * bundle: do no check the changegroup version if no changegroup is included
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    82
 * perf: create the temporary target next to the source in stream-consume
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    83
 * bundlespec: fix the "streamv2" and "streamv3-exp" variant
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    84
 * push: rework the computation of fallbackheads to be correct
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    85
 * profiler: flush after writing the profiler output
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    86
 * base-revsets: use an author that actually exercises a lot of changesets
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    87
 * hgrc: search XDG_CONFIG_HOME on mac
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    88
 * clonebundles: add missing newline to legacy response
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    89
 * narrow: add a test for linkrev computation done during widen
51663
11f41248595b relnotes: add 6.8
Raphaël Gomès <rgomes@octobus.net>
parents: 51647
diff changeset
    90
 * Multiple fixes to guard against mmap issues
11f41248595b relnotes: add 6.8
Raphaël Gomès <rgomes@octobus.net>
parents: 51647
diff changeset
    91
 * portability: fix build on Solaris-derived systemd
51647
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    92
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    93
== Backwards Compatibility Changes ==
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    94
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    95
== Internal API Changes ==
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    96
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    97
== Miscellaneous ==
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    98
56eb076a08aa relnotes: add 6.8rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    99
 * obsolete: quote the feature name