Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 27 May 2021 03:23:34 +0200] rev 47383
revlog: use `self.sidedata` directly to construct changelogrevision
We want to change `revlog._revisiondata` signature, so we need to migrate users
away.
Differential Revision: https://phab.mercurial-scm.org/D10781
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 27 May 2021 03:21:53 +0200] rev 47382
revlog: implement sidedata without using _revisiondata
When they was introduced sidedata where grouped with the actual revision data
and unpacking one came with the other. Sidedata moved be stored "independently"
and it no longer make sense to retrieve both at the same time unconditionnaly.
We start with changeset the implementation of the `revlog.sidedata` command to
no longer use `self._revisiondata`. More users need to be migrated to direct
usage of this `revlog.sidedata` method. This will be done in the coming
changesets.
Differential Revision: https://phab.mercurial-scm.org/D10780
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 28 May 2021 23:44:58 +0200] rev 47381
revlogv2: drop "sidedatacompression" from the list of todos
This was implemented in
c4dbb7636a12 and
07641bafa646, but I forgot to drop it
from the todo-list.
Differential Revision: https://phab.mercurial-scm.org/D10779
Simon Sapin <simon.sapin@octobus.net> [Wed, 02 Jun 2021 10:00:50 +0200] rev 47380
rust: Use a maintained crate for SHA-1 hashing
https://crates.io/crates/rust-crypto hasn’t been updated in 5 years.
This doesn’t neccesarily mean there’s anything wrong with it, but if
something comes up it’s preferable to rely on libraries that have active
maintainers.
Use https://crates.io/crates/sha-1 from https://github.com/RustCrypto instead
Differential Revision: https://phab.mercurial-scm.org/D10835
Simon Sapin <simon.sapin@octobus.net> [Wed, 02 Jun 2021 18:03:43 +0200] rev 47379
rust: Parse "subinclude"d files along the way, not later
When parsing a `.hgignore` file and encountering an `include:` line,
the included file is parsed recursively right then in a depth-first fashion.
With `subinclude:` however included files were parsed (recursively) much later.
This changes it to be expanded during parsing, like `.hgignore`.
The motivation for this is an upcoming changeset that needs to detect changes
in which files are ignored or not. The plan is to hash all ignore files while
they are being read, and store that hash in the dirstate (in v2 format).
In order to allow a potential alternative implementations to read that format,
the algorithm to compute that hash must be documented. Having a well-defined
depth-first ordering for the tree of (sub-)included files makes that easier.
Differential Revision: https://phab.mercurial-scm.org/D10834
Simon Sapin <simon.sapin@octobus.net> [Wed, 02 Jun 2021 18:14:44 +0200] rev 47378
rust: Make some file path parameters less generic
These are not widely used APIs that benefit from being maximally flexible,
taking an explicit `&Path` borrow is fine and simplifies their internals.
Differential Revision: https://phab.mercurial-scm.org/D10833
Raphaël Gomès <rgomes@octobus.net> [Mon, 26 Apr 2021 22:59:56 +0200] rev 47377
convert-bazaar: use breezy package instead of old bzr one
Breezy is the most recent of the two, and works on Python 3 while being
compatible with the (old) Bazaar file format.
This patch contains a variety of unicode <-> bytes changes, API breakage fixing,
restoring failing imports and changing the executable from `bzr` to `brz`.
I recommend using the debian packages for `brz` and `python3-breezy` (3.1+),
because the pip package seems to be haunted by radioactive dragons.
Differential Revision: https://phab.mercurial-scm.org/D10513
Raphaël Gomès <rgomes@octobus.net> [Wed, 21 Apr 2021 10:58:21 +0200] rev 47376
bzr: only support bzr conversion on Python3
Python 2 support will be dropped from Mercurial before anyone needs to do a
bzr -> hg conversion on Python 2 again. Bazaar tests were broken with the new
lib anyway, which we'll get into in the next patches.
Differential Revision: https://phab.mercurial-scm.org/D10512
Martin von Zweigbergk <martinvonz@google.com> [Tue, 01 Jun 2021 22:38:29 -0700] rev 47375
rewriteutil: add pointer to help text when rewrite would cause divergence
The evolve extension's version of the hint has this pointer. I missed
it when I moved it to core. This is pretty much the same as
D10723. Turns out I missed two places :(
Differential Revision: https://phab.mercurial-scm.org/D10832
Simon Sapin <simon.sapin@octobus.net> [Tue, 25 May 2021 09:20:30 +0200] rev 47374
rhg: Add support for dirstate-v2
Differential Revision: https://phab.mercurial-scm.org/D10804