Mercurial > public > mercurial-scm > hg-stable
diff mercurial/revlog.py @ 51212:13f58ce70299
rust-revlog: teach the revlog opening code to read the repo options
This will become necessary as we start writing revlog data from Rust.
author | Rapha?l Gom?s <rgomes@octobus.net> |
---|---|
date | Mon, 18 Sep 2023 17:11:11 +0200 |
parents | 6ec8387eb0be |
children | 633408a0f2e2 |
line wrap: on
line diff
--- a/mercurial/revlog.py Tue Jun 27 17:34:51 2023 +0200 +++ b/mercurial/revlog.py Mon Sep 18 17:11:11 2023 +0200 @@ -16,6 +16,7 @@ import binascii import collections import contextlib +import functools import io import os import struct @@ -224,9 +225,9 @@ parse_index_v1_nodemap = None -def parse_index_v1_mixed(data, inline): +def parse_index_v1_mixed(data, inline, default_header): index, cache = parse_index_v1(data, inline) - return rustrevlog.MixedIndex(index, data), cache + return rustrevlog.MixedIndex(index, data, default_header), cache # corresponds to uncompressed length of indexformatng (2 gigs, 4-byte @@ -1694,7 +1695,9 @@ elif devel_nodemap: self._parse_index = parse_index_v1_nodemap elif use_rust_index: - self._parse_index = parse_index_v1_mixed + self._parse_index = functools.partial( + parse_index_v1_mixed, default_header=new_header + ) try: d = self._parse_index(index_data, self._inline) index, chunkcache = d