view relnotes/6.3 @ 49657:f5f113f1b011

delta-find: add a way to control the number of bases tested at the same time See inline comment for details. The feature is currently disabled, but should be enabled by default to mitigate some existing pathological cases. Also see the next changeset for details.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Sun, 06 Nov 2022 14:47:17 -0500
parents c890d8b8bc59
children ae7065c0cd4c
line wrap: on
line source

= Mercurial 6.3.1 =

 * memory-usage: fix `hg log --follow --rev R F` space complexity (dcb2581e33be)
 * Improve portability and robustness of test harness
 * hg-core: relax dependencies pinning
 * matcher: fix issues regex flag contained in pattern (issue6759)
 * matcher: do not prepend '.*' to pattern using ^ after flags
 * packaging: refresh dependency hashes (issue6750)
 * cffi: fix a bytes vs str issue on macOS when listing directories
 * commit: properly consider file include and exclude options when closing branch
 * dirstate-v2: do not put the dirstate data file in a transaction

= Mercurial 6.3 =

== New Features ==

 * testlib: add `--raw-sha1` option to `f`
 * rhg: add `config.rhg` helptext
 * config: add alias from `hg help rhg` to `hg help rust`
 * rhg: add a config option to fall back immediately
 * bundle: introduce a --exact option
 * perf-bundle: add a new command to benchmark bundle creation time
 * perf-bundle: accept --rev arguments
 * perf-bundle: accept --type argument
 * perf-unbundle: add a perf command to time the unbundle operation
 * perf: introduce a benchmark for delta-find
 * contrib: add support for rhel9
 * phase-shelve: Implement a 'shelve.store' experimental config
 * debug-delta-find: introduce a quiet mode
 * sort-revset: introduce a `random` variant
 * phase: introduce a dedicated requirement for the `archived` phase
 * rebase: add boolean config item rebase.store-source
 * rhg: make [rhg status -v] work when it needs no extra output
 * rhg: support "!" syntax for disabling extensions
 * rhg: add debugrhgsparse command to help figure out bugs in rhg
 * rhg: add sparse support
 * rhg-status: add support for narrow clones
 * templates: add filter to reverse list
 * contrib: add pull_logger extension
 * revset: handle wdir() in `roots()`
 * revset: handle wdir() in `sort(..., -topo)`
 * rhg: support tweakdefaults
 * rhg: parallellize computation of [unsure_is_modified]

== Default Format Change ==

These changes affect newly created repositories (or new clones) done with
Mercurial 6.3.

== New Experimental Features ==

== Bug Fixes ==

 * shelve: demonstrate that the state is different across platforms (issue6735)
 * shelve: in test for trailing whitespace, strip commit (issue6735)
 * shelve: remove strip and rely on prior state (issue6735)
 * tests: fix http-bad-server expected errors for python 3.10 (issue6643)
 * status: let `--no-copies` override `ui.statuscopies`
 * releasenotes: use re.MULTILINE mode when checking admonitions
 * rhg: fallback to slow path on invalid patterns in hgignore
 * Fix a bunch of leftover str/bytes issues from Python 3 migration
 * keepalive: ensure `close_all()` actually closes all cached connections
 * lfs: fix blob corruption when tranferring with workers on posix
 * lfs: avoid closing connections when the worker doesn't fork
 * dirstate-v2: update constant that wasn't kept in sync
 * dirstate-v2: fix edge case where entries aren't sorted
 * upgrade: no longer keep all revlogs in memory at any point
 * rust-status: save new dircache even if just invalidated
 * dirstate-v2: hash the source of the ignore patterns as well
 * rhg: fallback when encountering ellipsis revisions
 * shelve: handle empty parents and nodestoremove in shelvedstate (issue6748)
 * profile: prevent a crash when line number is unknown
 * tags-fnode-cache: do not repeatedly open the filelog in a loop
 * tags-fnode-cache: skip building a changectx in getfnode
 * rust: create wrapper struct to reduce `regex` contention issues

== Backwards Compatibility Changes ==

 * chg worker processes will now correctly load per-repository configuration
   when given a both a relative `--repository` path and an alternate working
   directory via `--cwd`. A side-effect of this change is that these workers
   will now return an error if hg cannot find the current working directory,
   even when a different directory is specified via `--cwd`.
 * phase: rename the requirement for internal-phase from `internal-phase` to `use-internal-phase` (see 74fb1842f8b962cf03d7cd5b841dbcf2ae065587)

== Internal API Changes ==

== Miscellaneous ==

 * sslutil: use proper attribute to select python 3.7+
 * typing: suppress a few pyi-errors with more recent pytype
 * ci: bump pytype to 2022.03.29
 * bundlespec: add documentation about existing option
 * subrepo: avoid opening console window for non-native subrepos on Windows
 * setup: unconditionally enable the `long-paths-support` option on Windows
 * setup: use the full executable manifest from `python.exe`
 * tests: work around libmagic bug in svn subrepo tests
 * packagelib: use python3 by default
 * Improve `hg bisect` performance
 * perf: properly process formatter option in perf::unbundle
 * compare-disco: miscellaneous display improvements
 * fsmonitor: better compatibility with newer Pythons
 * revlog: finer computation of "issnapshot"
 * rhg: don't fallback if `strip` or `rebase` are activated
 * perf: make perf::bundle compatible before 61ba04693d65
 * perf: make perf::bundle compatible down to 5.2
 * perf-unbundle: improve compatibility
 * run-tests: display the time it took to install Mercurial
 * mergetools: don't let meld open all changed files on startup
 * dirstate-v2: skip evaluation of hgignore regex on cached directories