Yuya Nishihara <yuya@tcha.org> [Thu, 10 Sep 2020 17:44:34 +0900] rev 45628
log: extract function that builds (revs, makefilematcher) from walkopts
"hg grep" and "hg churn" will use this interface.
Yuya Nishihara <yuya@tcha.org> [Sat, 12 Sep 2020 22:42:58 +0900] rev 45627
log: move --graph and topo sort options to walkopts
This is the last opts.get() found in getrevs(). It might be better to define
an enum, but for now, it is just a string.
Yuya Nishihara <yuya@tcha.org> [Sat, 12 Sep 2020 22:03:53 +0900] rev 45626
log: move miscellaneous filter/matcher options to walkopts
Maybe this is the most uninteresting patch. I want to remove the dependency
on untyped/unlabeled opts dict at all.
I thought --no-merges and --only-merges could be merged into a single enum
value, but actually they both can be set to filter out everything.
Yuya Nishihara <yuya@tcha.org> [Sat, 12 Sep 2020 21:54:58 +0900] rev 45625
log: map --removed to walkopts.force_changelog_traversal
This is the flag to forcibly enable the slowpath. I'm not sure if the
slowpath parameter should be merged with this flag, so let's keep it as
an immutable flag for now.
I'll add another flag to support "grep --all-files". These two will be the
flags which aren't directly mapped from the command-line options.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 25 Sep 2020 14:33:05 +0200] rev 45624
copies: rename some function to the new naming scheme
We are about to introduce more function and more variants, it seems better to
align everything on the new scheme, allowing `_` for clarify. We do this aligned
in a dedicated changeset to make the next changesets simpler.
Differential Revision: https://phab.mercurial-scm.org/D9113
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 28 Sep 2020 12:26:09 +0200] rev 45623
changing-files: cache the various property
We are going to start using them more having some basic caching would be good.
The focus is not about performance yet, however avoid some easy N² trap seems
reasonable.
Differential Revision: https://phab.mercurial-scm.org/D9112
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 25 Sep 2020 14:16:35 +0200] rev 45622
changing-files: always use `mark_touched` to update the touched set
We use this function internally too because that will make cache invalidation
simpler.
Differential Revision: https://phab.mercurial-scm.org/D9111
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Oct 2020 08:57:43 +0200] rev 45621
changing-files: fix docstring
As pointed by Pulkit Goyal.
Differential Revision: https://phab.mercurial-scm.org/D9143
Martin von Zweigbergk <martinvonz@google.com> [Thu, 01 Oct 2020 09:09:35 -0700] rev 45620
rust: move rustfmt.toml to repo root so it can be used by `hg fix`
`hg fix` runs the formatters from the repo root so it doesn't pick up
the `rustfmt.toml` configs we had in each the `hg-core`, `hg-cpython`,
and `rhg` packages, which resulted in warnings about `async fn` not
existing in Rust 2015. This patch moves the `rustfmt.toml` file to the
root so `hg fix` will use it.
By putting the `rustfmt.toml` file in a higher-level directory, it
also applies to the `chg` and `hgcli` packages. That makes
`test-check-rust-format.t` fail, so this patch also applies the new
formatting rules to those packages.
Differential Revision: https://phab.mercurial-scm.org/D9142
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 30 Sep 2020 18:07:21 +0530] rev 45619
merge: if CHANGED_DELETED and KEEP_NEW are actions, choose CHANGED_DELETED
ACTION_KEEP_NEW and ACTION_CHANGED_DELETED are conflicting actions as one says
that file is new while other says that file was present earlier and has
changed-delete conflicts.
Let's do changed-delete which will lead to conflicts and make user choose the
right way.
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 30 Sep 2020 17:51:40 +0530] rev 45618
tests: fix a typo in `desc()` revset in test-merge-criss-cross.t
I was looking into fixing the broken behavior only to find out that we had a
typo in the commit message and merge was not performed.
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 30 Sep 2020 15:46:54 +0530] rev 45617
merge: if DELETED_CHANGED and GET are in actions, choose DELETED_CHANGED
ACTION_GET represents that either the file is created on remote or it's newer on
the remote side. However, since we have a ACTION_DELETE_CHANGED too, it means
the file is not present locally and ACTION_GET is representing that file was
created on remote.
Having both ACTION_GET and ACTION_DELETED_CHANGED is conflicting because one
says that file was created on remote and other says file has delete-changed
conflicts.
Let's choose ACTION_DELETED_CHANGED which will result in conflicts and make user
choose the right way forward.
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 30 Sep 2020 15:09:25 +0530] rev 45616
tests: add newfilenode test case in test-merge-changedelete.t
Raphaël Gomès <rgomes@octobus.net> [Thu, 01 Oct 2020 09:49:33 +0200] rev 45615
rust: leverage improved match ergonomics
Differential Revision: https://phab.mercurial-scm.org/D9137
Raphaël Gomès <rgomes@octobus.net> [Mon, 28 Sep 2020 15:08:02 +0200] rev 45614
rust: update minimum supported Rust compiler version
Debian stable backported `rustc 1.41.1` for a Firefox release that needed it,
so we can finally update the compiler version to something that isn't more than
a year old.
This means that (among other things [1]), `async await` syntax is usable!
Differential Revision: https://phab.mercurial-scm.org/D9138
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 25 Sep 2020 11:29:19 +0200] rev 45613
changing-files: add a utility to compute the merged files post-commit
We will need it in `_getsidedata` as soon as we start persisting that set.
Differential Revision: https://phab.mercurial-scm.org/D9089