Mercurial > hg
view relnotes/6.3 @ 49944:8f76a41ee465
debugshell: allow commands to be specified as a CLI argument
Add a `--command` option to `hg debugshell` that allows the user to pass in
Python code to evaluate directly from the command line. This was inspired by
the `--command` option present in Facebook's Sapling fork of Mercurial,
which in turn was inspired by the `-c` option of the Python interpreter
itself. It is particularly useful for writing tests, especially for getting
visibility into things that otherwise aren't exposed via debug commands.
author | Arun Kulshreshtha <akulshreshtha@janestreet.com> |
---|---|
date | Thu, 19 Jan 2023 11:12:20 -0500 |
parents | d5ca12dbfcde |
children | 8830004967ad |
line wrap: on
line source
= Mercurial 6.3.2 = * [ecfc84b956a8] tests: expect the message from 1baf0fffd82f in test-hghave.t (issue6762) * [5c095119bff4] tests: add the missing space to test-hghave.t (issue6762) * [2c346c1c75ec] tests: use an all too familiar executable in test-run-tests.t (issue6661) * [13c0e3b4fd35] tests: use `test -f` instead of `ls` to see if a file is present (issue6662) * [8ced4ca30ea1] bisect: correct message about aborting an in-progress bisect (issue6527) * filemerge: fix crash when using filesets in [partial-merge-tools] * help: fix a py3 error interpolating Set into b'%s' * match: make the FLAG_RE pattern a raw string * python-compat: adapt to Python 3.11 BC breakage with `random.sample` * rust-status: fix thread count ceiling * hg: show the correct message when cloning an LFS repo with extension disabled * extensions: process disabled external paths when `hgext` package is in-memory * emitrevision: consider ancestors revision to emit as available base * make: add a target for building pyoxidizer tests on macOS * run-tests: support --pyoxidized on macOS * packaging: add dependencies to the PyOxidizer build on macOS * Miscellaneous test fixes = 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