relnotes/6.7
author Pierre-Yves David <pierre-yves.david@octobus.net>
Wed, 13 Mar 2024 11:38:28 +0100
changeset 51597 b4a6a1ff8fce
parent 51540 803e61387e86
child 51620 028dc3f92dbd
permissions -rw-r--r--
tags-cache: skip the filternode step if we are not going to use it When warming the hgtagsfnodescache, we don't need the actual result, so we can simply skip the part that "filter" fnode we read from the cache. So provide a quite visible speed up to the top level `hg debugupdatecache` function. ### data-env-vars.name = mozilla-try-2023-03-22-zstd-sparse-revlog # benchmark.name = hg.debug.debug-update-cache # bin-env-vars.hg.flavor = default # bin-env-vars.hg.py-re2-module = default # benchmark.variants.pre-state = warm before: 19.947581 after: 18.916804 (-5.17%, -1.03)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
51540
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
     1
= Mercurial 6.7.2 =
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
     2
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
     3
Exceptional release following a large performance regression when cloning.
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
     4
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
     5
We are setting up automated benchmarks to reduce the likelihood of regressions
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
     6
of the sort from happening in the future.
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
     7
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
     8
 * phases: avoid a potentially costly dictionary interation in some case
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
     9
 * phases: update the phase set as we go during retract boundary
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
    10
 * bundle2: make the "hgtagsfnodes" part advisory
803e61387e86 relnotes: add 6.7.2
Raphaël Gomès <rgomes@octobus.net>
parents: 51512
diff changeset
    11
51512
2e6fde2ed01e relnotes: add 6.7.1
Raphaël Gomès <rgomes@octobus.net>
parents: 51504
diff changeset
    12
= Mercurial 6.7.1 =
2e6fde2ed01e relnotes: add 6.7.1
Raphaël Gomès <rgomes@octobus.net>
parents: 51504
diff changeset
    13
2e6fde2ed01e relnotes: add 6.7.1
Raphaël Gomès <rgomes@octobus.net>
parents: 51504
diff changeset
    14
Exceptional release following a crash found in delta code that can be triggered
2e6fde2ed01e relnotes: add 6.7.1
Raphaël Gomès <rgomes@octobus.net>
parents: 51504
diff changeset
    15
with complex repository shapes.
2e6fde2ed01e relnotes: add 6.7.1
Raphaël Gomès <rgomes@octobus.net>
parents: 51504
diff changeset
    16
2e6fde2ed01e relnotes: add 6.7.1
Raphaël Gomès <rgomes@octobus.net>
parents: 51504
diff changeset
    17
 * delta-search: fix crash caused by unbound variable
2e6fde2ed01e relnotes: add 6.7.1
Raphaël Gomès <rgomes@octobus.net>
parents: 51504
diff changeset
    18
 * sshpeer: fix path when handling invalid url exception
2e6fde2ed01e relnotes: add 6.7.1
Raphaël Gomès <rgomes@octobus.net>
parents: 51504
diff changeset
    19
 * subrepo: fix normalizing paths with scheme
2e6fde2ed01e relnotes: add 6.7.1
Raphaël Gomès <rgomes@octobus.net>
parents: 51504
diff changeset
    20
51504
6b2aeeec3ed0 relnotes: add 6.7
Raphaël Gomès <rgomes@octobus.net>
parents: 51440
diff changeset
    21
= Mercurial 6.7 =
51440
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    22
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    23
As usual, a *lot* of patches don't make it to this list.
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    24
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    25
== New Features ==
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    26
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    27
 * JSON templates can now use structured diffstat data
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    28
 * Support rhg status --rev --rev
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    29
 * The index for REVLOGv1 now has a Rust implementation
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    30
 * Improved `hg censor`'s output
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    31
 * censor: add a command flag to skip the head checks
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    32
 * censor: accept multiple revision in a single call
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    33
 * usage: add a `usage.repository-role` config
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    34
 * branchmap: use mmap for faster revbranchcache loading
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    35
 * crecord: enable search hotkeys (issue6834)
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    36
 * hg-core: separate timestamp and extra methods
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    37
 * annotate: limit output to range of lines
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    38
 * unbundle: faster computation of changed heads
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    39
 * Large improvements of some of the phases code (23950e39281f)
51504
6b2aeeec3ed0 relnotes: add 6.7
Raphaël Gomès <rgomes@octobus.net>
parents: 51440
diff changeset
    40
 * rust-filepatterns: export glob_to_re function
51440
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    41
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    42
== New Experimental Features ==
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    43
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    44
 * Introduce `hg admin::chainsaw-update` for automation and *advanced* users
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    45
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    46
== Bug Fixes ==
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    47
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    48
 * templatekw: fix inconsistency of diffstat with diff.merge
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    49
 * The endless stream of Python 3 cleanups continues
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    50
 * Improved setup.py robustness
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    51
 * Improved test suite robustness
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    52
 * add: don't attempt to add back removed files unless explicitly listed
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    53
 * statprof: handle `lineno == None` in more cases
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    54
 * rust: fix cargo doc for hg-cpython
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    55
 * rust-python-index: don't panic on a corrupted index when calling from Python
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    56
 * debugindexstats: handle the lack of Rust support better
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    57
 * matchers: use correct method for finding index in vector
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    58
 * narrow: strip trailing `/` from manifest dir before matching it
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    59
 * cext: fix potential memory leaks of list items appended with PyList_Append
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    60
 * doc: document that labels must have a dot in them to have an effect
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    61
 * debugformat: fix formatting for compression level
51504
6b2aeeec3ed0 relnotes: add 6.7
Raphaël Gomès <rgomes@octobus.net>
parents: 51440
diff changeset
    62
 * obsutil: sort metadata before comparing in geteffectflag()
6b2aeeec3ed0 relnotes: add 6.7
Raphaël Gomès <rgomes@octobus.net>
parents: 51440
diff changeset
    63
 * crecord: drop calls to `curses.endwin()`
6b2aeeec3ed0 relnotes: add 6.7
Raphaël Gomès <rgomes@octobus.net>
parents: 51440
diff changeset
    64
 * rust-index: don't use mutable borrow for head-diff computation
6b2aeeec3ed0 relnotes: add 6.7
Raphaël Gomès <rgomes@octobus.net>
parents: 51440
diff changeset
    65
 * rust-index: don't use mutable borrow to computed filtered heads
6b2aeeec3ed0 relnotes: add 6.7
Raphaël Gomès <rgomes@octobus.net>
parents: 51440
diff changeset
    66
51440
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    67
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    68
== Backwards Compatibility Changes ==
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    69
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    70
Users of the Rust extensions and/or `rhg` should be aware that the new Rust
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    71
index can result in a performance degradation for push/pull on repositories
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    72
*not* using `persistent-nodemap` (see `hg help config.format.use-persistent-nodemap`).
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    73
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    74
If this is something that matters to you, please reach out to us as this is not
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    75
an insurmountable obstacle. This is a choice base on the assumption that
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    76
there are few people in this situation and our time should be spent on more
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    77
pressing matters.
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    78
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    79
== Internal API Changes ==
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    80
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    81
 * 62913:498017baa34b "cleanup: remove some code scheduled to be removed after 5.9"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    82
 * 62914:88ef80210d67 "cleanup: drop `dirstate.is_changing_parent` deprecated since 6.5"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    83
 * 62915:591845f89ada "cleanup: drop `path.pushloc` deprecated since 6.5"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    84
 * 62916:d8f65fc72e7b "cleanup: drop deprecated config attribute on the revlog class"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    85
 * 62917:5c9c41273367 "cleanup: turn `pathsuboption` deprecation warning into an error"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    86
 * 62918:7b837fabc990 "cleanup: turn `wrappedfunction` deprecation warning into an error"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    87
 * 62919:eda075d7b2ac "cleanup: turn `wrapfunction` deprecation warning into an error"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    88
 * 62920:c845479fc64d "cleanup: drop the `bytes` compatibility for attribute related function"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    89
 * 63464:dcaa2df1f688 "changelog: never inline changelog"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    90
 * 63465:a93e52f0b6ff "changelog: disallow delayed write on inline changesets"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    91
 * 63825:79cd29d598af "dirstate: make the `transaction` argument of `setbranch` mandatory"
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    92
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    93
== Miscellaneous ==
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    94
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    95
 * perf: support --template on perf::phases
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    96
 * perf: add a --as-push option to perf::unbundle
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    97
 * debug: add a debug::unbundle command that simulate the unbundle from a push
d1d48d18db37 relnotes: add 6.7rc0
Raphaël Gomès <rgomes@octobus.net>
parents:
diff changeset
    98
 * Lots of refactorings to prepare for performance improvements and remove tech debt