Mercurial > hg
annotate tests/test-check-format.t @ 48454:473af5cbc209
rhg: Add support for `rhg status --copies`
Copy sources are collected during `status()` rather than after the fact like
in Python, because `status()` takes a `&mut` exclusive reference to the dirstate map
(in order to potentially mutate it for directory mtimes) and returns `Cow<'_, HgPath>`
that borrow the dirstate map.
Even though with `Cow` only some shared borrows remain, the still extend the same
lifetime of the initial `&mut` so the dirstate map cannot be borrowed again
to access copy sources after the fact:
https://doc.rust-lang.org/nomicon/lifetime-mismatch.html#limits-of-lifetimes
Additionally, collecting copy sources during the dirstate tree traversal that
`status()` already does avoids the cost of another traversal or other lookups
(though I haven’t benchmarked that cost).
Differential Revision: https://phab.mercurial-scm.org/D11899
author | Simon Sapin <simon.sapin@octobus.net> |
---|---|
date | Fri, 10 Dec 2021 16:18:58 +0100 |
parents | 41d43d12c2c4 |
children |
rev | line source |
---|---|
45389
f62bb5d07848
test: add `test-repo` requirement to `test-check-format` (issue6395)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
44147
diff
changeset
|
1 #require black test-repo |
43095
fb41ea2ea076
formatting: introduce a `test-check-format-black.t` that enforce formatting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
2 |
46870
41d43d12c2c4
tests: restore the ability to run `black` on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
46774
diff
changeset
|
3 Black needs the real USERPROFILE in order to run on Windows |
41d43d12c2c4
tests: restore the ability to run `black` on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
46774
diff
changeset
|
4 #if msys |
41d43d12c2c4
tests: restore the ability to run `black` on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
46774
diff
changeset
|
5 $ USERPROFILE="$REALUSERPROFILE" |
41d43d12c2c4
tests: restore the ability to run `black` on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
46774
diff
changeset
|
6 $ export USERPROFILE |
41d43d12c2c4
tests: restore the ability to run `black` on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
46774
diff
changeset
|
7 #endif |
41d43d12c2c4
tests: restore the ability to run `black` on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
46774
diff
changeset
|
8 |
43095
fb41ea2ea076
formatting: introduce a `test-check-format-black.t` that enforce formatting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
9 $ cd $RUNTESTDIR/.. |
46774
decc3bd3f20d
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46455
diff
changeset
|
10 $ black --check --diff `hg files 'set:(**.py + grep("^#!.*python")) - mercurial/thirdparty/**'` |
43095
fb41ea2ea076
formatting: introduce a `test-check-format-black.t` that enforce formatting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
11 |