Wed, 25 Jan 2023 18:46:20 +0100 dirstate: pass the repo to the `changeparent` method
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Jan 2023 18:46:20 +0100] rev 50022
dirstate: pass the repo to the `changeparent` method If we want the context to be responsible for writing (and we want it), we need to have access to a localrepository object. So we now requires a localrepository object as an argument to this context manager.
Tue, 13 Dec 2022 10:00:04 +0100 dirstate: warn about non-explicitly rolledback parent-change
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 13 Dec 2022 10:00:04 +0100] rev 50021
dirstate: warn about non-explicitly rolledback parent-change Now that the invalidation is dealt with by the context manager itself, we should no longer need this in the unlocking code. We start with issuing a warning if this is the case before actually dropping this code later.
Tue, 13 Dec 2022 11:39:44 +0100 dirstate: invalidate changes when parent-change fails
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 13 Dec 2022 11:39:44 +0100] rev 50020
dirstate: invalidate changes when parent-change fails When an error occurs during changing parents, we should invalidate all dirstate modifications and reload the dirstate. This is currently done by a `unlock` callback on the `wlock`. To fix this anomaly, we start dealing with the error directly in the context manager and its potential nesting. The "hard" part is to make sure that, when the parent-change context are nested, we and higher level nesting do not continue to use the invalidated dirstate. We introduce dedicated code to enforce that.
Sat, 28 Jan 2023 20:08:57 +0100 setup: Ensure target directory exists with building rust extension
Cédric Krier <ced@b2ck.com> [Sat, 28 Jan 2023 20:08:57 +0100] rev 50019
setup: Ensure target directory exists with building rust extension When the rust extension is the first to be build, the target directory may not exist so the copy fails.
Thu, 26 Jan 2023 00:23:07 +0100 filemerge: add union-other-first as internal merge tool
Cédric Krier <ced@b2ck.com> [Thu, 26 Jan 2023 00:23:07 +0100] rev 50018
filemerge: add union-other-first as internal merge tool See inline documentation for details.
Fri, 13 Jan 2023 00:07:07 +0100 rust: use `peek_mut` from the standard lib now that it's stable
Raphaël Gomès <rgomes@octobus.net> [Fri, 13 Jan 2023 00:07:07 +0100] rev 50017
rust: use `peek_mut` from the standard lib now that it's stable Just a little cleanup of a TODO found along the way.
Wed, 25 Jan 2023 18:45:38 +0100 clippy: actually fail if there are any warnings
Raphaël Gomès <rgomes@octobus.net> [Wed, 25 Jan 2023 18:45:38 +0100] rev 50016
clippy: actually fail if there are any warnings So far, only errors would trip the CI, this makes it so all warnings are elevated to errors, making it a CI fail if any warnings are present. This was the intended behavior, I just missed this when adding clippy.
Wed, 25 Jan 2023 18:44:09 +0100 rust-clippy: fix warning about nested ifs
Raphaël Gomès <rgomes@octobus.net> [Wed, 25 Jan 2023 18:44:09 +0100] rev 50015
rust-clippy: fix warning about nested ifs
Thu, 19 Jan 2023 11:12:20 -0500 debugshell: allow commands to be specified as a CLI argument
Arun Kulshreshtha <akulshreshtha@janestreet.com> [Thu, 19 Jan 2023 11:12:20 -0500] rev 50014
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.
Tue, 10 Jan 2023 11:40:19 +0100 heptapod-ci: add `clippy` to the CI
Raphaël Gomès <rgomes@octobus.net> [Tue, 10 Jan 2023 11:40:19 +0100] rev 50013
heptapod-ci: add `clippy` to the CI This linter mostly makes our code more idiomatic, less surprising, has good suggestions and catches bugs. It's widely used in the Rust community and now part of the default toolchain when using `rustup`.
(0) -30000 -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 tip