diff --git a/contrib/msggen/msggen/gen/grpc2py.py b/contrib/msggen/msggen/gen/grpc2py.py index cbd0bf0452da..dfba1b7d031f 100644 --- a/contrib/msggen/msggen/gen/grpc2py.py +++ b/contrib/msggen/msggen/gen/grpc2py.py @@ -83,9 +83,6 @@ def generate(self, service: Service) -> None: # `doc/schemas`. Do not edit this file manually as it would get # overwritten. - import json - - def hexlify(b): return b if b is None else b.hex() @@ -109,7 +106,7 @@ def remove_default(d): self.write("""\ - def decodekeysend_routes2py(m): # manual override + def decodekeysend_routes2py(m): # manual override return remove_default({ "expirydelta": m.expirydelta, "feebase": amount2msat(m.feebase), @@ -122,7 +119,7 @@ def decodekeysend_routes2py(m): # manual override self.write("""\ - def decodepay_routes2py(m): # manual override + def decodepay_routes2py(m): # manual override return remove_default({ "cltv_expiry_delta": m.cltv_expiry_delta, "fee_base_msat": amount2msat(m.fee_base_msat), @@ -189,7 +186,7 @@ def {converter_name}(m): elif isinstance(f, ArrayField) and isinstance(f.itemtype, PrimitiveField): rhs = self.converters[f.itemtype.typename].format(name=name) self.write( - f' "{name}": [{rhs} for i in {rhs}], # ArrayField[primitive] in generate_composite\n', + f' "{name}": [{rhs} for i in {rhs}], # ArrayField[primitive] in generate_composite\n', cleanup=False, ) diff --git a/contrib/pyln-testing/pyln/testing/grpc2py.py b/contrib/pyln-testing/pyln/testing/grpc2py.py index c8f6f15adeeb..9523cc673652 100644 --- a/contrib/pyln-testing/pyln/testing/grpc2py.py +++ b/contrib/pyln-testing/pyln/testing/grpc2py.py @@ -2,9 +2,6 @@ # `doc/schemas`. Do not edit this file manually as it would get # overwritten. -import json - - def hexlify(b): return b if b is None else b.hex() @@ -85,7 +82,7 @@ def listpeers_peers_log2py(m): def listpeers_peers2py(m): return remove_default({ "log": [listpeers_peers_log2py(i) for i in m.log], # ArrayField[composite] in generate_composite - "netaddr": [m.netaddr for i in m.netaddr], # ArrayField[primitive] in generate_composite + "netaddr": [m.netaddr for i in m.netaddr], # ArrayField[primitive] in generate_composite "connected": m.connected, # PrimitiveField in generate_composite "features": hexlify(m.features), # PrimitiveField in generate_composite "id": hexlify(m.id), # PrimitiveField in generate_composite @@ -332,8 +329,8 @@ def checkmessage2py(m): def close2py(m): return remove_default({ - "txids": [hexlify(m.txids) for i in hexlify(m.txids)], # ArrayField[primitive] in generate_composite - "txs": [hexlify(m.txs) for i in hexlify(m.txs)], # ArrayField[primitive] in generate_composite + "txids": [hexlify(m.txids) for i in hexlify(m.txids)], # ArrayField[primitive] in generate_composite + "txs": [hexlify(m.txs) for i in hexlify(m.txs)], # ArrayField[primitive] in generate_composite "type": str(m.item_type), # EnumField in generate_composite }) @@ -384,7 +381,7 @@ def createinvoice2py(m): def datastore2py(m): return remove_default({ - "key": [m.key for i in m.key], # ArrayField[primitive] in generate_composite + "key": [m.key for i in m.key], # ArrayField[primitive] in generate_composite "generation": m.generation, # PrimitiveField in generate_composite "hex": hexlify(m.hex), # PrimitiveField in generate_composite "string": m.string, # PrimitiveField in generate_composite @@ -405,14 +402,14 @@ def datastoreusage2py(m): def createonion2py(m): return remove_default({ - "shared_secrets": [hexlify(m.shared_secrets) for i in hexlify(m.shared_secrets)], # ArrayField[primitive] in generate_composite + "shared_secrets": [hexlify(m.shared_secrets) for i in hexlify(m.shared_secrets)], # ArrayField[primitive] in generate_composite "onion": hexlify(m.onion), # PrimitiveField in generate_composite }) def deldatastore2py(m): return remove_default({ - "key": [m.key for i in m.key], # ArrayField[primitive] in generate_composite + "key": [m.key for i in m.key], # ArrayField[primitive] in generate_composite "generation": m.generation, # PrimitiveField in generate_composite "hex": hexlify(m.hex), # PrimitiveField in generate_composite "string": m.string, # PrimitiveField in generate_composite @@ -450,13 +447,13 @@ def dev_forget_channel2py(m): def emergencyrecover2py(m): return remove_default({ - "stubs": [hexlify(m.stubs) for i in hexlify(m.stubs)], # ArrayField[primitive] in generate_composite + "stubs": [hexlify(m.stubs) for i in hexlify(m.stubs)], # ArrayField[primitive] in generate_composite }) def getemergencyrecoverdata2py(m): return remove_default({ - "backed_up_channel_ids": [hexlify(m.backed_up_channel_ids) for i in hexlify(m.backed_up_channel_ids)], # ArrayField[primitive] in generate_composite + "backed_up_channel_ids": [hexlify(m.backed_up_channel_ids) for i in hexlify(m.backed_up_channel_ids)], # ArrayField[primitive] in generate_composite "can_create_penalty": m.can_create_penalty, # PrimitiveField in generate_composite "filedata": hexlify(m.filedata), # PrimitiveField in generate_composite }) @@ -478,7 +475,7 @@ def recover2py(m): def recoverchannel2py(m): return remove_default({ - "stubs": [m.stubs for i in m.stubs], # ArrayField[primitive] in generate_composite + "stubs": [m.stubs for i in m.stubs], # ArrayField[primitive] in generate_composite }) @@ -538,7 +535,7 @@ def listinvoicerequests2py(m): def listdatastore_datastore2py(m): return remove_default({ - "key": [m.key for i in m.key], # ArrayField[primitive] in generate_composite + "key": [m.key for i in m.key], # ArrayField[primitive] in generate_composite "generation": m.generation, # PrimitiveField in generate_composite "hex": hexlify(m.hex), # PrimitiveField in generate_composite "string": m.string, # PrimitiveField in generate_composite @@ -914,7 +911,7 @@ def listpeerchannels_channels_alias2py(m): def listpeerchannels_channels_channel_type2py(m): return remove_default({ - "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite + "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite "names": [str(i) for i in m.names], # ArrayField[composite] in generate_composite }) @@ -1001,13 +998,13 @@ def listpeerchannels_channels_updates2py(m): def listpeerchannels_channels2py(m): return remove_default({ "closer": str(m.closer), # EnumField in generate_composite - "features": [m.features for i in m.features], # ArrayField[primitive] in generate_composite + "features": [m.features for i in m.features], # ArrayField[primitive] in generate_composite "htlcs": [listpeerchannels_channels_htlcs2py(i) for i in m.htlcs], # ArrayField[composite] in generate_composite "inflight": [listpeerchannels_channels_inflight2py(i) for i in m.inflight], # ArrayField[composite] in generate_composite "opener": str(m.opener), # EnumField in generate_composite "state": str(m.state), # EnumField in generate_composite "state_changes": [listpeerchannels_channels_state_changes2py(i) for i in m.state_changes], # ArrayField[composite] in generate_composite - "status": [m.status for i in m.status], # ArrayField[primitive] in generate_composite + "status": [m.status for i in m.status], # ArrayField[primitive] in generate_composite "channel_id": hexlify(m.channel_id), # PrimitiveField in generate_composite "close_to": hexlify(m.close_to), # PrimitiveField in generate_composite "close_to_addr": m.close_to_addr, # PrimitiveField in generate_composite @@ -1074,7 +1071,7 @@ def listclosedchannels_closedchannels_alias2py(m): def listclosedchannels_closedchannels_channel_type2py(m): return remove_default({ - "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite + "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite "names": [str(i) for i in m.names], # ArrayField[composite] in generate_composite }) @@ -1228,7 +1225,7 @@ def decode_offer_recurrence2py(m): def decode_restrictions2py(m): return remove_default({ - "alternatives": [m.alternatives for i in m.alternatives], # ArrayField[primitive] in generate_composite + "alternatives": [m.alternatives for i in m.alternatives], # ArrayField[primitive] in generate_composite "summary": m.summary, # PrimitiveField in generate_composite }) @@ -1272,11 +1269,11 @@ def decode2py(m): "invoice_fallbacks": [decode_invoice_fallbacks2py(i) for i in m.invoice_fallbacks], # ArrayField[composite] in generate_composite "invoice_paths": [decode_invoice_paths2py(i) for i in m.invoice_paths], # ArrayField[composite] in generate_composite "invreq_paths": [decode_invreq_paths2py(i) for i in m.invreq_paths], # ArrayField[composite] in generate_composite - "offer_chains": [hexlify(m.offer_chains) for i in hexlify(m.offer_chains)], # ArrayField[primitive] in generate_composite + "offer_chains": [hexlify(m.offer_chains) for i in hexlify(m.offer_chains)], # ArrayField[primitive] in generate_composite "offer_paths": [decode_offer_paths2py(i) for i in m.offer_paths], # ArrayField[composite] in generate_composite - "proof_leaf_hashes": [hexlify(m.proof_leaf_hashes) for i in hexlify(m.proof_leaf_hashes)], # ArrayField[primitive] in generate_composite - "proof_missing_hashes": [hexlify(m.proof_missing_hashes) for i in hexlify(m.proof_missing_hashes)], # ArrayField[primitive] in generate_composite - "proof_omitted_tlvs": [m.proof_omitted_tlvs for i in m.proof_omitted_tlvs], # ArrayField[primitive] in generate_composite + "proof_leaf_hashes": [hexlify(m.proof_leaf_hashes) for i in hexlify(m.proof_leaf_hashes)], # ArrayField[primitive] in generate_composite + "proof_missing_hashes": [hexlify(m.proof_missing_hashes) for i in hexlify(m.proof_missing_hashes)], # ArrayField[primitive] in generate_composite + "proof_omitted_tlvs": [m.proof_omitted_tlvs for i in m.proof_omitted_tlvs], # ArrayField[primitive] in generate_composite "restrictions": [decode_restrictions2py(i) for i in m.restrictions], # ArrayField[composite] in generate_composite "type": str(m.item_type), # EnumField in generate_composite "unknown_invoice_request_tlvs": [decode_unknown_invoice_request_tlvs2py(i) for i in m.unknown_invoice_request_tlvs], # ArrayField[composite] in generate_composite @@ -1555,7 +1552,7 @@ def fundchannel_complete2py(m): def fundchannel_channel_type2py(m): return remove_default({ - "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite + "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite "names": [str(i) for i in m.names], # ArrayField[composite] in generate_composite }) @@ -1573,7 +1570,7 @@ def fundchannel2py(m): def fundchannel_start_channel_type2py(m): return remove_default({ - "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite + "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite "names": [str(i) for i in m.names], # ArrayField[composite] in generate_composite }) @@ -1756,7 +1753,7 @@ def listhtlcs2py(m): def multifundchannel_channel_ids_channel_type2py(m): return remove_default({ - "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite + "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite "names": [str(i) for i in m.names], # ArrayField[composite] in generate_composite }) @@ -1823,7 +1820,7 @@ def openchannel_abort2py(m): def openchannel_bump_channel_type2py(m): return remove_default({ - "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite + "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite "names": [str(i) for i in m.names], # ArrayField[composite] in generate_composite }) @@ -1840,7 +1837,7 @@ def openchannel_bump2py(m): def openchannel_init_channel_type2py(m): return remove_default({ - "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite + "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite "names": [str(i) for i in m.names], # ArrayField[composite] in generate_composite }) @@ -1865,7 +1862,7 @@ def openchannel_signed2py(m): def openchannel_update_channel_type2py(m): return remove_default({ - "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite + "bits": [m.bits for i in m.bits], # ArrayField[primitive] in generate_composite "names": [str(i) for i in m.names], # ArrayField[composite] in generate_composite }) @@ -1905,7 +1902,7 @@ def plugin2py(m): def renepaystatus_paystatus2py(m): return remove_default({ - "notes": [m.notes for i in m.notes], # ArrayField[primitive] in generate_composite + "notes": [m.notes for i in m.notes], # ArrayField[primitive] in generate_composite "status": str(m.status), # EnumField in generate_composite "amount_msat": amount2msat(m.amount_msat), # PrimitiveField in generate_composite "amount_sent_msat": amount2msat(m.amount_sent_msat), # PrimitiveField in generate_composite @@ -2004,8 +2001,8 @@ def setchannel2py(m): def setconfig_config2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite "config": m.config, # PrimitiveField in generate_composite "dynamic": m.dynamic, # PrimitiveField in generate_composite "plugin": m.plugin, # PrimitiveField in generate_composite @@ -2084,8 +2081,8 @@ def spliceout2py(m): def dev_splice2py(m): return remove_default({ - "dryrun": [m.dryrun for i in m.dryrun], # ArrayField[primitive] in generate_composite - "log": [m.log for i in m.log], # ArrayField[primitive] in generate_composite + "dryrun": [m.dryrun for i in m.dryrun], # ArrayField[primitive] in generate_composite + "log": [m.log for i in m.log], # ArrayField[primitive] in generate_composite "psbt": m.psbt, # PrimitiveField in generate_composite "tx": m.tx, # PrimitiveField in generate_composite "txid": m.txid, # PrimitiveField in generate_composite @@ -2216,8 +2213,8 @@ def wait2py(m): def listconfigs_configs_addr2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite }) @@ -2244,8 +2241,8 @@ def listconfigs_configs_always_use_proxy2py(m): def listconfigs_configs_announce_addr2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite }) @@ -2286,8 +2283,8 @@ def listconfigs_configs_autolisten2py(m): def listconfigs_configs_bind_addr2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite }) @@ -2342,16 +2339,16 @@ def listconfigs_configs_conf2py(m): def listconfigs_configs_currencyrate_add_source2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite "plugin": m.plugin, # PrimitiveField in generate_composite }) def listconfigs_configs_currencyrate_disable_source2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite "plugin": m.plugin, # PrimitiveField in generate_composite }) @@ -2394,8 +2391,8 @@ def listconfigs_configs_disable_mpp2py(m): def listconfigs_configs_disable_plugin2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite }) @@ -2500,8 +2497,8 @@ def listconfigs_configs_ignore_fee_limits2py(m): def listconfigs_configs_important_plugin2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite }) @@ -2521,8 +2518,8 @@ def listconfigs_configs_lightning_dir2py(m): def listconfigs_configs_log_file2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite }) @@ -2599,15 +2596,15 @@ def listconfigs_configs_pid_file2py(m): def listconfigs_configs_plugin2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite }) def listconfigs_configs_plugin_dir2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite }) @@ -2669,8 +2666,8 @@ def listconfigs_configs_signet2py(m): def listconfigs_configs_subdaemon2py(m): return remove_default({ - "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite - "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite + "sources": [m.sources for i in m.sources], # ArrayField[primitive] in generate_composite + "values_str": [m.values_str for i in m.values_str], # ArrayField[primitive] in generate_composite }) @@ -2743,7 +2740,7 @@ def preapproveinvoice2py(m): def staticbackup2py(m): return remove_default({ - "scb": [hexlify(m.scb) for i in hexlify(m.scb)], # ArrayField[primitive] in generate_composite + "scb": [hexlify(m.scb) for i in hexlify(m.scb)], # ArrayField[primitive] in generate_composite }) @@ -2948,7 +2945,7 @@ def bkpr_editdescriptionbyoutpoint2py(m): def bkpr_report2py(m): return remove_default({ - "report": [m.report for i in m.report], # ArrayField[primitive] in generate_composite + "report": [m.report for i in m.report], # ArrayField[primitive] in generate_composite }) @@ -3074,8 +3071,8 @@ def askrene_listlayers_layers2py(m): "channel_updates": [askrene_listlayers_layers_channel_updates2py(i) for i in m.channel_updates], # ArrayField[composite] in generate_composite "constraints": [askrene_listlayers_layers_constraints2py(i) for i in m.constraints], # ArrayField[composite] in generate_composite "created_channels": [askrene_listlayers_layers_created_channels2py(i) for i in m.created_channels], # ArrayField[composite] in generate_composite - "disabled_channels": [m.disabled_channels for i in m.disabled_channels], # ArrayField[primitive] in generate_composite - "disabled_nodes": [hexlify(m.disabled_nodes) for i in hexlify(m.disabled_nodes)], # ArrayField[primitive] in generate_composite + "disabled_channels": [m.disabled_channels for i in m.disabled_channels], # ArrayField[primitive] in generate_composite + "disabled_nodes": [hexlify(m.disabled_nodes) for i in hexlify(m.disabled_nodes)], # ArrayField[primitive] in generate_composite "node_biases": [askrene_listlayers_layers_node_biases2py(i) for i in m.node_biases], # ArrayField[composite] in generate_composite "layer": m.layer, # PrimitiveField in generate_composite "persistent": m.persistent, # PrimitiveField in generate_composite @@ -3141,8 +3138,8 @@ def askrene_create_layer_layers2py(m): "channel_updates": [askrene_create_layer_layers_channel_updates2py(i) for i in m.channel_updates], # ArrayField[composite] in generate_composite "constraints": [askrene_create_layer_layers_constraints2py(i) for i in m.constraints], # ArrayField[composite] in generate_composite "created_channels": [askrene_create_layer_layers_created_channels2py(i) for i in m.created_channels], # ArrayField[composite] in generate_composite - "disabled_channels": [m.disabled_channels for i in m.disabled_channels], # ArrayField[primitive] in generate_composite - "disabled_nodes": [hexlify(m.disabled_nodes) for i in hexlify(m.disabled_nodes)], # ArrayField[primitive] in generate_composite + "disabled_channels": [m.disabled_channels for i in m.disabled_channels], # ArrayField[primitive] in generate_composite + "disabled_nodes": [hexlify(m.disabled_nodes) for i in hexlify(m.disabled_nodes)], # ArrayField[primitive] in generate_composite "node_biases": [askrene_create_layer_layers_node_biases2py(i) for i in m.node_biases], # ArrayField[composite] in generate_composite "layer": m.layer, # PrimitiveField in generate_composite "persistent": m.persistent, # PrimitiveField in generate_composite @@ -3343,7 +3340,7 @@ def listchannelmoves2py(m): def listchainmoves_chainmoves2py(m): return remove_default({ - "extra_tags": [m.extra_tags for i in m.extra_tags], # ArrayField[primitive] in generate_composite + "extra_tags": [m.extra_tags for i in m.extra_tags], # ArrayField[primitive] in generate_composite "primary_tag": str(m.primary_tag), # EnumField in generate_composite "account_id": m.account_id, # PrimitiveField in generate_composite "blockheight": m.blockheight, # PrimitiveField in generate_composite @@ -3432,9 +3429,9 @@ def sendamount2py(m): def createproof_proofs2py(m): return remove_default({ - "invoice_fields_included": [m.invoice_fields_included for i in m.invoice_fields_included], # ArrayField[primitive] in generate_composite - "invreq_fields_included": [m.invreq_fields_included for i in m.invreq_fields_included], # ArrayField[primitive] in generate_composite - "offer_fields_included": [m.offer_fields_included for i in m.offer_fields_included], # ArrayField[primitive] in generate_composite + "invoice_fields_included": [m.invoice_fields_included for i in m.invoice_fields_included], # ArrayField[primitive] in generate_composite + "invreq_fields_included": [m.invreq_fields_included for i in m.invreq_fields_included], # ArrayField[primitive] in generate_composite + "offer_fields_included": [m.offer_fields_included for i in m.offer_fields_included], # ArrayField[primitive] in generate_composite "bolt12": m.bolt12, # PrimitiveField in generate_composite }) @@ -3457,12 +3454,12 @@ def xkeysend2py(m): def graceful2py(m): return remove_default({ - "pending_htlc_expiries": [m.pending_htlc_expiries for i in m.pending_htlc_expiries], # ArrayField[primitive] in generate_composite - "pending_peers": [hexlify(m.pending_peers) for i in hexlify(m.pending_peers)], # ArrayField[primitive] in generate_composite + "pending_htlc_expiries": [m.pending_htlc_expiries for i in m.pending_htlc_expiries], # ArrayField[primitive] in generate_composite + "pending_peers": [hexlify(m.pending_peers) for i in hexlify(m.pending_peers)], # ArrayField[primitive] in generate_composite }) -def decodekeysend_routes2py(m): # manual override +def decodekeysend_routes2py(m): # manual override return remove_default({ "expirydelta": m.expirydelta, "feebase": amount2msat(m.feebase), @@ -3472,7 +3469,7 @@ def decodekeysend_routes2py(m): # manual override }) -def decodepay_routes2py(m): # manual override +def decodepay_routes2py(m): # manual override return remove_default({ "cltv_expiry_delta": m.cltv_expiry_delta, "fee_base_msat": amount2msat(m.fee_base_msat),