• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

spesmilo / electrum
62%
master: 62%

Build:
Build:
LAST BUILD BRANCH: qml_helpdialog_styling
DEFAULT BRANCH: master
Repo Added 10 Nov 2017 08:46AM UTC
Files 88
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH 202510_synchronizer_guess_status1
branch: 202510_synchronizer_guess_status1
CHANGE BRANCH
x
Reset
  • 202510_synchronizer_guess_status1
  • 140325-force-close-exception
  • 202006_fee_spike_buffer
  • 202006_jsonschema_rm
  • 202006_release_notes
  • 202006_review_channel_open_flow
  • 20230321_ply
  • 202304_util_age
  • 202401_wallet_fullrbf
  • 202501_bump_min_python
  • 202501_funding_pubkey_deriv
  • 202501_lnpeer_tramp_test1
  • 202502_keepkey
  • 202503_asyncio_gc
  • 202503_avoid_reuse
  • 202503_bump_freeze_packages
  • 202503_ci_py313
  • 202503_config_cv_setter
  • 202503_configvar_plugins
  • 202503_is_frozen_futuretx
  • 202503_plugins_init_exception
  • 202503_regtest_configvars
  • 202503_rm_ledger_hw1
  • 202504_cirrus_test
  • 202504_harden_memory_linux
  • 202504_locale
  • 202505_adb_get_tx_height
  • 202505_adb_get_tx_height_test
  • 202505_adb_transaction_lock
  • 202505_ban_unicode
  • 202505_build1
  • 202505_chan_save_error
  • 202505_ci_bump_ex
  • 202505_network_oneserver_text
  • 202505_pad_protocol_3
  • 202505_refactor_chains
  • 202505_refactor_chains2
  • 202505_refactor_lnchannel_ctx_updates
  • 202505_transaction_verify_sig_2
  • 202506_base64_trailing_garbage
  • 202506_ci_bump_ex
  • 202506_daemon_walletkey
  • 202506_gui_swapserver_pubkey
  • 202506_iface_headers3
  • 202506_iface_headers_backwards
  • 202506_lnwatcher_to_wait_until_fees_go_down
  • 202506_qml_lnurl_btn_disabled
  • 202506_qt_mac_camera_permission
  • 202506_qt_qrtextedit_rm_dupe
  • 202506_qtmultimedia
  • 202506_regtest_swapserver
  • 202506_txbatcher_cleanup
  • 202507_android_chain_hack
  • 202507_android_rm_blacklist
  • 202507_interface_fast_forward
  • 202507_issue10021
  • 202507_jsonpatch_monkeypatch_exc
  • 202507_keystore_cleanup
  • 202507_logging_only_once
  • 202507_qml_crash_reporter_flickable
  • 202507_qt_confirm_txdialog_fee
  • 202507_qt_crash_felix_2
  • 202507_sorted_nets_list
  • 202507_syntax_check_i18n_format_strings
  • 202507_walletdb_add_configvar_partial_writes
  • 202507_walletdb_add_configvar_partial_writes_4
  • 202508_change_gap_limit_for_change
  • 202508_cmd_format_satoshis
  • 202508_commands_onchain_history
  • 202508_debug_mem
  • 202508_fix_old_keystore_check_password
  • 202508_iface_cache_broadcast_tx
  • 202508_kswizard_multisig
  • 202508_lnpeer_rate_limits
  • 202508_lower_minrelayfee
  • 202508_max_logfile_size
  • 202508_qml_wallet_ks_password
  • 202508_release462
  • 202508_swap_sanity_check_costs
  • 202508_swaps_check_cltv_safety
  • 202508_swaps_dm_replies
  • 202508_swaps_more_cleanup
  • 202508_swaps_parsing
  • 202508_test_keystore_wizard
  • 202508_tests_wizard
  • 202508_typehint_callables
  • 202508_wallet_delete_address
  • 202508_wallet_verified_event
  • 202509_adb_spv
  • 202509_bash_subshell_set_e
  • 202509_ci_appimage
  • 202509_consoletaint
  • 202509_getwallet_win_path
  • 202509_lnreserve_usechangeoff
  • 202509_plugin_offline_cmd
  • 202509_storage_oschmod
  • 202509_sweep_none
  • 202509_tests_clear_callbacks
  • 202509_tests_for_old_hex_seed
  • 202509_tox
  • 202509_type_hints_qml_txf
  • 202509_wallet_rbf_candidates
  • 202510_android_desc
  • 202510_ci_py314
  • 202510_proto16
  • 202510_tx_cleanup
  • 202511_keystore_lrucache
  • 202511_lnrouter_copypaste
  • 202511_lnsweep_keepwatching
  • 202511_lnsweep_refactor_preimage
  • 202511_p4a_hacks
  • 202511_pr10230_1
  • 202511_qml_feehistogram_colours
  • 202511_tests_mixed_spend
  • 202511_trampoline_recursion
  • 202512_jsondb_key
  • 202512_lnworker_get_chan_by_id
  • 202512_lnworker_split
  • 202512_nwc_dontmutateevent
  • 202512_openalias
  • 22nd_century_certs
  • 2fa_conf_qt
  • 2fa_segwit
  • 3.0.2
  • 3.0.3
  • 3.0.4
  • 3.0.5
  • 3.0.6
  • 3.0.x
  • 3.1
  • 3.1.0
  • 3.1.1
  • 3.1.2
  • 3.1.3
  • 3.2.0
  • 3.2.1
  • 3.2.2
  • 3.2.3
  • 3.2.4
  • 3.2.x
  • 3.3.0
  • 3.3.1
  • 3.3.2
  • 3.3.3
  • 3.3.3.1
  • 3.3.4
  • 3.3.5
  • 3.3.6
  • 3.3.7
  • 3.3.8
  • 4.0.0b0
  • 4.0.0b1
  • 4.0.1
  • 4.0.2
  • 4.0.3
  • 4.0.4
  • 4.0.5
  • 4.0.6
  • 4.0.7
  • 4.0.8
  • 4.0.9
  • 4.1.0
  • 4.1.1
  • 4.1.2
  • 4.2.0
  • 4.2.1
  • 4.2.2
  • 4.2.x
  • 4.3.0
  • 4.3.1
  • 4.3.2
  • 4.3.3
  • 4.3.4
  • 4.3.x
  • 4.4.0
  • 4.4.1
  • 4.4.2
  • 4.4.3
  • 4.4.4
  • 4.4.5
  • 4.4.6
  • 4.4.x
  • 4.5.0
  • 4.5.0b0
  • 4.5.0b1
  • 4.5.1
  • 4.5.2
  • 4.5.3
  • 4.5.4
  • 4.5.5
  • 4.5.5-fdroid
  • 4.5.6
  • 4.5.7
  • 4.5.8
  • 4.5.x
  • 4.6.0
  • 4.6.0b1
  • 4.6.1
  • 4.6.2
  • EagleTM-serversjson-1
  • accounting_addresses
  • add_ecc_and_aionostr_submodules
  • add_felix_pgp_key
  • add_logging_whitelist
  • add_logging_whitelist_simpler
  • add_remove_plugins
  • add_revealer_infos
  • add_swapserver_summary_cli
  • add_transaction
  • addresses_dict
  • addresses_ref
  • aiorpcx
  • aiorpcx-async-headers-rebased
  • aiorpcx-connection-lost
  • aiorpcx-fx
  • allow_lnaddress_contacts
  • allow_more_genesis_in_crash_reporter
  • anchor_commitments_2022
  • anchor_output_sweeping_lower_fee
  • android-qml
  • android-qml-repro
  • android15_edge_to_edge_compatibility
  • android_16kb_page_alignment
  • android_permissions_support
  • android_qml_qrscan_signals
  • android_qr_scanner_lifecycle
  • append_to_encrypted
  • appimage-debian-base
  • asyncio
  • attr_invoices
  • autoremove_invoices
  • basic_mpp
  • basic_mpp_send
  • batch_payments_manager
  • batching_candidates
  • beta-test
  • bolt12
  • buildozer_qml
  • bump_aiorpcx
  • bump_fee_txbatcher
  • capacity_warning_zero_amount
  • change_android_qr_lib
  • change_plugin_keyfile_path
  • changes_to_release_notes
  • channel_announcements
  • channel_backup_version
  • channel_forceclosing_warning
  • channel_states
  • check_hold_invoice_show_htlc_cltv
  • check_wallet_file_writable
  • ci-qml-beta
  • cleanup_event_loop
  • cleanup_lnutil
  • cli_fix_wallet_path
  • cli_get_preimage
  • closing_states
  • coin_chooser_no_outputs
  • command_fetch_swap_providers
  • common_taskthread
  • concurrent_lookup_of_payment_identifier
  • config_current_wallet
  • confirm_tx_dialog
  • conflicting_channels
  • daemon_error_forwarding
  • debug_failing_regtest
  • debug_ln_payment_failure
  • debug_not_enough_balance
  • dedicated_data_type_for_swap_offers
  • dependabot/pip/contrib/deterministic-build/aiohttp-3.7.4
  • dependabot/pip/contrib/deterministic-build/cryptography-3.2
  • dependabot/pip/contrib/deterministic-build/cryptography-3.3.2
  • dependabot/pip/contrib/deterministic-build/ecdsa-0.13.3
  • dependabot/pip/contrib/deterministic-build/urllib3-1.26.4
  • dependabot/pip/contrib/deterministic-build/urllib3-1.26.5
  • deprecation_warning_coroutinefunction
  • detect_address_reuse
  • deterministic_node_id
  • disable_check_amt_to_forward_for_trampoline
  • disable_disabling_i_agree_ToU
  • disable_gossip_compression
  • dm_replies_no_defaultdict
  • docker_win
  • dont_connect_to_other_networks
  • dont_delete_config_on_syntax_error
  • draft
  • dust_override
  • electrum_ecc_submodule
  • enable_anchors_default
  • enforce_requested_min_final_cltv_delta
  • enforce_unified_password_qml_button
  • fail_normal_swap
  • failed_trampoline_routes
  • fee_descriptor_names
  • fee_policies
  • fee_policy_static_rate_fallback
  • fee_ui
  • file_layout_change_for_master
  • fingerprint
  • fix_10097
  • fix_10117
  • fix_10144
  • fix_10324
  • fix_10350
  • fix_4111
  • fix_8100
  • fix_8213
  • fix_8547
  • fix_8712
  • fix_9440
  • fix_9536
  • fix_9700
  • fix_9761
  • fix_9829
  • fix_ToU_workaround
  • fix_add_peer
  • fix_block_exception_dialog
  • fix_bolt11_pi_exceptions
  • fix_cake_diagram
  • fix_channel_freezing
  • fix_channel_removal_assert
  • fix_ci
  • fix_ci_aiohttp
  • fix_ci_pip
  • fix_command_gettransaction
  • fix_confirm_tx_dialog_timer_exc
  • fix_enable_gossip
  • fix_exception_suggest_swap_to_send
  • fix_fee_disagreement_ln
  • fix_fee_slider_qml_channel_open
  • fix_fiat_history_export
  • fix_flaky_swapserver_list_qml
  • fix_history_export
  • fix_is_initialized_race_swap_manager
  • fix_issue_10053
  • fix_issue_10057
  • fix_issue_10065
  • fix_jit_channel_openings_regtest
  • fix_ledger_exception
  • fix_lightning_can_receive_offline_peer
  • fix_lightning_num_sats_can_send
  • fix_lnwatcher_9789
  • fix_lnwatcher_callback
  • fix_make_barcode_scanner_log_vars
  • fix_missing_menu_icons_macos
  • fix_network_tab_selection
  • fix_new_channel_exception
  • fix_node_ann_exception
  • fix_node_ann_features
  • fix_osx_extract_sigs
  • fix_padding_qml_exc_dialog
  • fix_password_command
  • fix_payto
  • fix_plugin_aiohttp_client_session
  • fix_plugins_dialog_bad_state
  • fix_qml_label_setting
  • fix_qml_wizard_exception
  • fix_qr_input_from_file
  • fix_rbf_csv
  • fix_receive_unknown_htlc_failed
  • fix_revealer_backup
  • fix_rswap_exception
  • fix_save_payment_info
  • fix_setDesktopFilename_warning
  • fix_show_transaction_user_cancelled
  • fix_suggest_peer
  • fix_swap_exception
  • fix_swap_exception_send_change_to_lightning
  • fix_swap_pay_invoice
  • fix_swap_update_relays
  • fix_swapserver_budget
  • fix_swapserver_trampoline
  • fix_tc_submarine_payment
  • fix_terms_wizard_windows
  • fix_too_large_onion_payload
  • fix_tui_crash
  • fix_tx_dialog_exception
  • fix_update_amount
  • fix_watchtower_exception
  • fix_wine_unsign
  • follow_system_theme
  • follow_up_8619
  • followup_10277
  • followup_10303
  • followup_tos_qt
  • format_cli_help
  • fs_permissions_check
  • fully_spend_utxo
  • future_tx_fee
  • gossip_cln_feature_workaround
  • gossip_forwarding
  • gossip_info
  • gossip_timestamp_filter
  • group_transactions
  • handle_qe_swap_task_exceptions
  • handle_shutil_copyfile_exception
  • hi_res_old_icons
  • history_cleanup
  • history_recycle_view
  • historybuttons
  • hold_invoice_cli
  • hold_invoice_cli_hash
  • hook_transaction_dialog_address_menu
  • htlc_slots_left
  • hw_password_encryption
  • hww_offline_err_fix
  • i18n_timelock_recovery
  • improve_cmdline_help
  • improve_lnfee_slider
  • improve_not_enough_funds_mentioning_frozen
  • improve_qml_passphrase_wizard
  • improve_relay_string_input
  • improve_reverse_swap_mining_fee
  • improve_send_change_to_ln
  • improve_swaps_send_dm
  • improve_windows_installer_safety
  • improved_trampoline_error
  • jit
  • jit-accept-non-recoverable
  • jit-block-preimage
  • jit-gui-improvements
  • jit-improve-qml
  • jit-invoice-creation
  • jit-regtest
  • jit-update-funded-state
  • jit-update-unfunded-state
  • jit_htlc_switch_fixes
  • jsondb_pointers
  • jsondict
  • jsonpatch
  • jsonpatch-ln
  • jsonpatch_encapsulate
  • jsonpatch_new
  • jsonrpc_nodeps
  • just_in_time_channels
  • just_in_time_channels_refactored
  • keystore_wizard
  • keystorewizard_scriptandderivation
  • kivy_fix_6201
  • kivy_new
  • libera-verify-245857204
  • lightning
  • lightning_pass_invoice_not_bolt11
  • lightning_pay_assertion_error
  • lightning_requests
  • listconfig
  • ln_chan_reest_20190801
  • ln_disable_fallback_fee
  • ln_fee_updates
  • ln_gossip
  • ln_jsonrpc
  • ln_kivy
  • ln_router
  • ln_rpc
  • ln_test
  • ln_watcher
  • lnmsg
  • lnpay_collect_failed_htlcs
  • lnpeer_dont_send_gossip_before_init
  • lnpeer_remove_zlib_compression
  • lnsweep
  • lnsweep_201905
  • lnsweep_dicts
  • lnsweep_txin
  • lnurl_withdraw
  • lnurlw_exc
  • lnwatcher_fix_9987
  • lnwatcher_not_async
  • lnwatcher_trigger_callbacks
  • lnworker_channelopen_min_amount
  • lnworker_imports
  • load_wallet_refactor
  • local_tx
  • locale_depreciation
  • macos-deterministic
  • make_segwit_default
  • master
  • match_htlc_witness_templates
  • matplotlib_warning
  • max-no-local-tx
  • max_cltv_lnpay
  • maybe_complete_wallet_path
  • mempoolfees
  • merge_openchannel_htlc_state_machine
  • modern_fee_negotiation
  • more_release_notes
  • move-webapi-to-electrum-merchant
  • move_commands_to_init
  • move_constants
  • move_fonts_all_guis
  • move_hw_wallet
  • mpp_aggregate
  • multisig_wizard
  • mutinynet
  • mv_android
  • network_dialog_connect_combo
  • network_use_bookmarks
  • new_file_headers
  • new_lightning
  • no-local-inputs
  • no_addr_keys_for_requests
  • no_dynfee_estimates
  • no_set_label
  • no_storage_sync
  • node_ann_dns
  • nostr_proxy
  • nostr_relays_config_description
  • nostr_swap_server_wait_unlock
  • notary
  • notarytool
  • nsis-test
  • nwc
  • nwc_incoming_event_filtering
  • onion_messages
  • onion_messages_cleanup
  • onion_messages_unittest
  • open_channel_dialog_fix
  • open_channel_with_max
  • open_channel_without_signing
  • osx_sign_self_signed_cert
  • p4a_cryptodome
  • pass_paysession_in_route_building
  • password_lineedit
  • pay_to_many_label
  • payment_sent_colon
  • persist_lnwatcher
  • plugin-commands
  • plugin_config_vars
  • plugin_manifest_json
  • plugin_pubk_user_prompt
  • plugin_update
  • plugins_import_dir_and_zip
  • plugins_in_wizard
  • prepare_standalone_ecc
  • prevent_fail_swap_exception
  • prevent_swapserver_spam
  • privacy_analysis
  • privacy_analysis2
  • proper_cleanup_after_swap_failed
  • psbt_nostr
  • psbt_nostr_ephemeral_event
  • psbt_nostr_fixes
  • psbt_nostr_proxy
  • psbt_nostr_qml_choices
  • psbt_nostr_send_description
  • psbt_nostr_verify_authors
  • pull/9613
  • pull/9781
  • pull/9797
  • pull/9986
  • qabstractitemmodel
  • qml_bip21_request_if_label_or_amount
  • qml_buttons
  • qml_calc_max_amount
  • qml_change_to_lightning_option
  • qml_channelopener_user_feedback
  • qml_close_invoicedialog_after_onchain_broadcast_success
  • qml_create_storage_exc
  • qml_dashboard
  • qml_feebump_cancel_txmon_fixes
  • qml_fix_forceclose_exception
  • qml_forward_swap_user_tx_finalize
  • qml_freeze_reused_address_utxos
  • qml_helpdialog_styling
  • qml_input_output_color
  • qml_invoice_dialog
  • qml_invoice_validation_error
  • qml_issue_noamt_lninvoice_sticky_override_amt
  • qml_lightning_invoice_insufficient_balance
  • qml_lnurl_amount
  • qml_manual_fee_feerate_edit
  • qml_msat_precision
  • qml_nostr_servers_config
  • qml_oneserver
  • qml_pressandhold
  • qml_psbt_nostr_toggle
  • qml_psbt_over_nostr
  • qml_send_to_same_address_invoice_status_fix
  • qml_singletons
  • qml_swap_success_popup
  • qml_swapserver_ordering
  • qml_terms_of_use
  • qml_timestamp_precision
  • qml_txdetails_update_on_feehistogram
  • qml_txdialog_sane_values
  • qt6
  • qt_expired_invoice
  • qt_fiat_fixes
  • qt_fix_lightning_icon_gossip_sync
  • qt_network_layout_to_widgets
  • qt_network_tab_move_sentence
  • qt_no_request_details_when_multiple_selected
  • qt_paytoedit_completer
  • qt_richlabel
  • qt_seedwidget_copy_button
  • qt_standardmodel
  • qt_swaps_handle_usercancelled
  • qt_transaction_invoice_label
  • qt_vkbd
  • rbf_batch
  • rbf_swap
  • recursive_config
  • red_amount_warning
  • refactor_htlc_handling
  • refactor_trampoline_forwarding
  • refactored_watcher
  • register_method
  • regtest_lnd
  • release_channel
  • release_notes_4_5_1
  • remove_multi_hop_legacy_trampoline_option
  • remove_newline_rawtx
  • remove_outdated_anchor_localtx
  • remove_pbkdf2
  • replace_pgp_pubkey
  • request_fclose_gossip
  • request_gossip
  • requirements
  • reserve_input_check_make_unsigned_transaction
  • resumable_channels
  • resumable_channels2
  • return_preimage_cli
  • save_without_broadcast
  • send_change_to_lightning
  • settings_dialog
  • simnet
  • simple_parser
  • simpler_ui
  • simplify_lnsweep
  • simplify_subswap_fee
  • split_noise
  • static_remotekey
  • storage_db
  • structured_plugin_storage
  • submarine_payment_func
  • submarine_swaps
  • support_3rd_party_signers_release_sh
  • swap_announce_liquidity
  • swap_cb
  • swap_cleanup_check
  • swap_dialog_followup
  • swap_dm_relays
  • swap_fee_slider
  • swap_nostr_event_type
  • swap_prepayment_fix
  • swap_providers_button
  • swaps_over_nostr
  • swaps_over_nostr_qml
  • swaps_prepayment
  • swapserver_icon
  • swapserver_plugin
  • swapserver_show_amounts
  • sweep_anchors
  • tc_disable_signing_in_preview
  • terms_of_use_separate
  • test_dont_settle_htlcs_forwarding
  • test_is_private_netaddress_expand
  • test_travis
  • thomasv_f321x
  • timelock_recovery_destination_validation
  • timelockrecovery
  • trampoline
  • trustedcoin_kivy
  • txbatcher_clean_local_tx
  • txbatcher_do_not_remove_local_tx
  • txbatcher_fix_to_sweep_now
  • txbatcher_notenoughfunds
  • txbatcher_without_password_in_memory
  • txbatcherror
  • unique_password
  • update_appimagetool
  • update_notifications
  • update_swap_liquidity_on_events
  • updated_mainnet_fallback_nodes
  • use_asyncio_dnspython_methods
  • use_change_cb
  • use_electrum_ecc
  • use_ephemeral_dm
  • use_relays_directly
  • userspace_plugins_v2
  • utilities
  • verify_events
  • wallet_rename
  • wallet_requires_unlock
  • wallet_stop_and_start
  • warning_on_close
  • watcher_db
  • watchtower
  • watchtower_plugin
  • whitepaper_waiting_dialog
  • windows_disable_screenshot
  • xml_clipboard

29 Oct 2025 07:14PM UTC coverage: 62.164% (+0.8%) from 61.369%
5036000356859904

Pull #10290

CirrusCI

SomberNight
synchronizer: rm redundant get_history call if new block mined unconf

This is an optimisation and possible hardening against traffic analysis.

After a new block is mined, we sometimes receive "blockchain.scripthash.subscribe" notifications. If so, this is often due to the just mined block including mempool txs we already knew about.

Normally we would call the "blockchain.scripthash.get_history" RPC, to get full history of the affected scripthash.
Instead now we first optimistically guess that all mempool txs touching this scripthash just got mined and see if by assuming that we can reproduce the announced sh status.
- if yes, we saved a network RTT by not having to call "blockchain.scripthash.get_history"
- if no, we request the history from the server using the RPC
Pull Request #10290: synchronizer: rm redundant get_history call if new block mined unconf

23 of 24 new or added lines in 1 file covered. (95.83%)

1 existing line in 1 file now uncovered.

23215 of 37345 relevant lines covered (62.16%)

0.62 hits per line

Relevant lines Covered
Build:
Build:
37345 RELEVANT LINES 23215 COVERED LINES
0.62 HITS PER LINE
Source Files on 202510_synchronizer_guess_status1
  • Tree
  • List 88
  • Changed 11
  • Source Changed 0
  • Coverage Changed 11
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
50360003... 202510_synchronizer_guess_status1 synchronizer: rm redundant get_history call if new block mined unconf This is an optimisation and possible hardening against traffic analysis. After a new block is mined, we sometimes receive "blockchain.scripthash.subscribe" notifications. If s... Pull #10290 29 Oct 2025 07:20PM UTC SomberNight CirrusCI
62.16
See All Builds (12648)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc