1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-07-16 19:48:09 +00:00

feat(common): generate Eth. definitions also for builtin definitions

This commit is contained in:
Martin Novak 2022-10-06 16:21:28 +02:00
parent 31e0bd9ecb
commit e05839bdd0
2 changed files with 95 additions and 2654 deletions

View File

@ -289,29 +289,6 @@ def _load_erc20_tokens_from_repo(
return tokens return tokens
def remove_builtin_definitions(networks: List[Dict], tokens: List[Dict]) -> None:
builtin_networks = _load_builtin_ethereum_networks()
builtin_tokens = _load_builtin_erc20_tokens()
networks_by_chain_id = defaultdict(list)
for n in networks:
networks_by_chain_id[n["chain_id"]].append(n)
tokens_by_chain_id_and_address = defaultdict(list)
for t in tokens:
tokens_by_chain_id_and_address[(t["chain_id"], t["address"])].append(t)
for bn in builtin_networks:
for n in networks_by_chain_id.get(int(bn["chain_id"]), []):
networks.remove(n)
for bt in builtin_tokens:
for t in tokens_by_chain_id_and_address.get(
(int(bt["chain_id"]), bt["address"]), []
):
tokens.remove(t)
def _set_definition_metadata( def _set_definition_metadata(
definition: Dict, definition: Dict,
old_definition: Dict | None = None, old_definition: Dict | None = None,
@ -907,8 +884,6 @@ def prepare_definitions(
# load old definitions # load old definitions
old_defs = load_json(deffile) old_defs = load_json(deffile)
remove_builtin_definitions(networks, tokens)
check_tokens_collisions( check_tokens_collisions(
tokens, old_defs["tokens"] if old_defs is not None else None tokens, old_defs["tokens"] if old_defs is not None else None
) )
@ -1034,8 +1009,9 @@ def sign_definitions(
save_definition(network_dir, ["network"], network["serialized"]) save_definition(network_dir, ["network"], network["serialized"])
try: try:
# TODO: this way only the first network with given slip is saved - save other networks?? # for slip44 == 60 save only Ethereum
save_definition(slip44_dir, ["network"], network["serialized"]) if network["slip44"] != 60 or int(network["chain_id"]) == 1:
save_definition(slip44_dir, ["network"], network["serialized"])
except click.ClickException: except click.ClickException:
pass pass

File diff suppressed because it is too large Load Diff