Page MenuHomeSoftware Heritage

D3463.diff
No OneTemporary

D3463.diff

diff --git a/requirements-swh.txt b/requirements-swh.txt
--- a/requirements-swh.txt
+++ b/requirements-swh.txt
@@ -1,4 +1,4 @@
-swh.model < 0.4.0
-swh.storage >= 0.9.3
+swh.model >= 0.4.0
+swh.storage >= 0.10.0
swh.scheduler >= 0.0.39
swh.loader.core >= 0.5.2
diff --git a/swh/loader/mercurial/loader.py b/swh/loader/mercurial/loader.py
--- a/swh/loader/mercurial/loader.py
+++ b/swh/loader/mercurial/loader.py
@@ -470,17 +470,21 @@
else:
directory_id = self.mnode_to_tree_id[commit["manifest"]]
- extra_meta = []
+ extra_headers = [
+ (
+ b"time_offset_seconds",
+ str(commit["time_offset_seconds"]).encode("utf-8"),
+ )
+ ]
extra = commit.get("extra")
if extra:
for e in extra.split(b"\x00"):
k, v = e.split(b":", 1)
- k = k.decode("utf-8")
# transplant_source stores binary reference to a changeset
# prefer to dump hexadecimal one in the revision metadata
- if k == "transplant_source":
+ if k == b"transplant_source":
v = hash_to_bytehex(v)
- extra_meta.append([k, v])
+ extra_headers.append((k, v))
parents = []
p1 = self.node_2_rev.get(header["p1"])
@@ -498,16 +502,8 @@
type=RevisionType.MERCURIAL,
directory=directory_id,
message=commit["message"],
- metadata={
- "node": hash_to_hex(header["node"]),
- "extra_headers": [
- [
- "time_offset_seconds",
- str(commit["time_offset_seconds"]).encode("utf-8"),
- ],
- ]
- + extra_meta,
- },
+ metadata={"node": hash_to_hex(header["node"]),},
+ extra_headers=tuple(extra_headers),
synthetic=False,
parents=tuple(parents),
)
diff --git a/swh/loader/mercurial/tests/test_loader.py b/swh/loader/mercurial/tests/test_loader.py
--- a/swh/loader/mercurial/tests/test_loader.py
+++ b/swh/loader/mercurial/tests/test_loader.py
@@ -236,8 +236,8 @@
transplant_sources = set()
for rev in loader.storage.revision_log(revisions):
hg_changesets.add(rev["metadata"]["node"])
- for k, v in rev["metadata"]["extra_headers"]:
- if k == "transplant_source":
+ for k, v in rev["extra_headers"]:
+ if k == b"transplant_source":
transplant_sources.add(v.decode("ascii"))
# check extracted data are valid

File Metadata

Mime Type
text/plain
Expires
Jul 3 2025, 6:29 PM (6 w, 1 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3217076

Event Timeline