Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 28 Apr 2023 16:28:43 +0200] rev 50448
perf: introduce a `perf::stream-locked-section` command
This command benchmark the initial part of a stream clone, where the repository
is locked.
Anton Shestakov <av6@dwimlabs.net> [Wed, 03 May 2023 18:17:32 -0300] rev 50447
transaction: tr._names are actually bytes, use byte string to join them
Looks like this is never checked in the tests? But trying e.g. `print(tr)` by
hand before this change would give:
TypeError: sequence item 0: expected str instance, bytes found
Looks like tr._names are always bytes (although this isn't actually enforced,
but maybe at some point it will at least be type checked e.g. by pytype).
pacien <pacien.trangirard@pacien.net> [Mon, 17 Apr 2023 00:27:46 +0200] rev 50446
nix: add nix-defined package and devel env (flake)
This adds a Nix Flake which defines:
- package recipies to build and run Mercurial (C, C+Rust variants),
- a meta package to run the test suite in an isolated sandbox,
- a development environment with some tools
(notably Python and the Black formatter, pinned to match the CI).
Python is pinned to the recommended version.
The Rust toolchain is a fairly recent one provided by the Nixpkgs channel.
It is not yet pinned to the same version as the "reference" Debian package,
but this does not seem to cause any issue.
Example usage of local commands are provided in the `flake.nix` file.
Once merged, it should also be possible to pull and run directly from the
source repository directly with something like:
`nix run hg+https://foss.heptapod.net/mercurial/mercurial-devel?ref=TOPIC&dir=contrib/nix' -- version`
pacien <pacien.trangirard@pacien.net> [Thu, 20 Apr 2023 16:55:19 +0200] rev 50445
hgignore: ignore nix result symlink
pacien <pacien.trangirard@pacien.net> [Sun, 16 Apr 2023 23:48:24 +0200] rev 50444
tests: add test ignore list for nix
Some tests cannot run properly in the nix sandbox.
This adds a list of tests to ignore when running in that context.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Mar 2023 14:29:35 +0000] rev 50443
ui: keep the progress bar around when writing if stdout is not a tty
Arun Kulshreshtha <akulshreshtha@janestreet.com> [Wed, 26 Apr 2023 15:30:35 -0400] rev 50442
rhg: correctly relativize copy source path
Arun Kulshreshtha <akulshreshtha@janestreet.com> [Wed, 26 Apr 2023 15:31:02 -0400] rev 50441
rhg: don't print copy source when --no-status is passed
Arun Kulshreshtha <akulshreshtha@janestreet.com> [Wed, 26 Apr 2023 16:18:12 -0400] rev 50440
tests: add test for status copy source formatting
Matt Harbison <matt_harbison@yahoo.com> [Tue, 25 Apr 2023 17:49:35 -0400] rev 50439
fix: highlight the required configuration and behavior of the fixer tools
The problem is that `hg help fix` didn't mention *how* to configure the tools,
and while I knew that `{rootpath}` existed in the configuration, I missed that
the tools require reading content from stdin. (I configured `gofmt` to use
`{rootpath}`, and that had the effect of squashing all changes in a file at `.`
into the first commit and emptying that content from its descendants.)
Basically all this does is put a pointer in the default (command level) help to
the extension level help that mentions the configuration, and moves the
extension level help that documents reading from stdin and writing to stdout to
the top to give it more prominence. The last sentence is adjusted a bit to
reflect the new location.