From 04e5c858af08d31314d0eadbfcc4eeaf81c3b1d0 Mon Sep 17 00:00:00 2001 From: Oba Date: Tue, 8 Oct 2024 16:52:28 +0200 Subject: [PATCH 1/2] test: avoid overriding dict references --- kakarot_scripts/utils/kakarot.py | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/kakarot_scripts/utils/kakarot.py b/kakarot_scripts/utils/kakarot.py index a3f9ebcdc..6cbff202a 100644 --- a/kakarot_scripts/utils/kakarot.py +++ b/kakarot_scripts/utils/kakarot.py @@ -1,6 +1,7 @@ import functools import json import logging +from collections import defaultdict from pathlib import Path from types import MethodType from typing import Any, Dict, List, Optional, Tuple, Union, cast @@ -114,15 +115,12 @@ def get_solidity_artifacts( def process_link_references( link_references: Dict[str, Dict[str, Any]] ) -> Dict[str, Dict[str, Any]]: - return { - Path(file_path) - .relative_to(src_path) - .parts[0]: { - library_name: references - for library_name, references in libraries.items() - } - for file_path, libraries in link_references.items() - } + result = defaultdict(lambda: defaultdict(list)) + for file_path, libraries in link_references.items(): + relative_path = Path(file_path).relative_to(src_path).parts[0] + for library_name, references in libraries.items(): + result[relative_path][library_name].extend(references) + return dict(result) return { "bytecode": { From 863fa83361c01276b6041bc7977036bec854cb74 Mon Sep 17 00:00:00 2001 From: Oba Date: Tue, 8 Oct 2024 18:57:28 +0200 Subject: [PATCH 2/2] script: keep defaultdict --- kakarot_scripts/utils/kakarot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kakarot_scripts/utils/kakarot.py b/kakarot_scripts/utils/kakarot.py index 6cbff202a..16894f50e 100644 --- a/kakarot_scripts/utils/kakarot.py +++ b/kakarot_scripts/utils/kakarot.py @@ -120,7 +120,7 @@ def process_link_references( relative_path = Path(file_path).relative_to(src_path).parts[0] for library_name, references in libraries.items(): result[relative_path][library_name].extend(references) - return dict(result) + return result return { "bytecode": {