URI: 
       tfollow-up: SimpleConfig is supposed to be singleton - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit d1026b5afeae5873022427e3f344d000df5a1c4d
   DIR parent 16e293c289ddba7c055f6cccaddd7315f09fb3ba
  HTML Author: SomberNight <somber.night@protonmail.com>
       Date:   Tue, 10 Sep 2019 16:38:10 +0200
       
       follow-up: SimpleConfig is supposed to be singleton
       
       see cefa4762ba904ef92d32b4c90005013dd7a7ac4a
       and #5629
       
       Diffstat:
         M electrum/network.py                 |       7 +++----
         M electrum/scripts/block_headers.py   |       5 ++++-
         M electrum/scripts/estimate_fee.py    |       5 ++++-
         M electrum/scripts/get_history.py     |       5 ++++-
         M electrum/scripts/peers.py           |       6 +++++-
         M electrum/scripts/txradar.py         |       4 +++-
         M electrum/scripts/watch_address.py   |       5 ++++-
       
       7 files changed, 27 insertions(+), 10 deletions(-)
       ---
   DIR diff --git a/electrum/network.py b/electrum/network.py
       t@@ -234,7 +234,7 @@ class Network(Logger):
        
            LOGGING_SHORTCUT = 'n'
        
       -    def __init__(self, config: SimpleConfig=None):
       +    def __init__(self, config: SimpleConfig):
                global INSTANCE
                INSTANCE = self
        
       t@@ -244,9 +244,8 @@ class Network(Logger):
                assert self.asyncio_loop.is_running(), "event loop not running"
                self._loop_thread = None  # type: threading.Thread  # set by caller; only used for sanity checks
        
       -        if config is None:
       -            config = {}  # Do not use mutables as default values!
       -        self.config = SimpleConfig(config) if isinstance(config, dict) else config  # type: SimpleConfig
       +        assert isinstance(config, SimpleConfig), f"config should be a SimpleConfig instead of {type(config)}"
       +        self.config = config
                blockchain.read_blockchains(self.config)
                self.logger.info(f"blockchains {list(map(lambda b: b.forkpoint, blockchain.blockchains.values()))}")
                self._blockchain_preferred_block = self.config.get('blockchain_preferred_block', None)  # type: Optional[Dict]
   DIR diff --git a/electrum/scripts/block_headers.py b/electrum/scripts/block_headers.py
       t@@ -7,10 +7,13 @@ import asyncio
        
        from electrum.network import Network
        from electrum.util import print_msg, json_encode, create_and_start_event_loop, log_exceptions
       +from electrum.simple_config import SimpleConfig
       +
       +config = SimpleConfig()
        
        # start network
        loop, stopping_fut, loop_thread = create_and_start_event_loop()
       -network = Network()
       +network = Network(config)
        network.start()
        
        # wait until connected
   DIR diff --git a/electrum/scripts/estimate_fee.py b/electrum/scripts/estimate_fee.py
       t@@ -6,10 +6,13 @@ from numbers import Number
        
        from electrum.network import filter_protocol, Network
        from electrum.util import create_and_start_event_loop, log_exceptions
       +from electrum.simple_config import SimpleConfig
        
        
       +config = SimpleConfig()
       +
        loop, stopping_fut, loop_thread = create_and_start_event_loop()
       -network = Network()
       +network = Network(config)
        network.start()
        
        @log_exceptions
   DIR diff --git a/electrum/scripts/get_history.py b/electrum/scripts/get_history.py
       t@@ -6,6 +6,7 @@ import asyncio
        from electrum import bitcoin
        from electrum.network import Network
        from electrum.util import json_encode, print_msg, create_and_start_event_loop, log_exceptions
       +from electrum.simple_config import SimpleConfig
        
        
        try:
       t@@ -14,8 +15,10 @@ except Exception:
            print("usage: get_history <bitcoin_address>")
            sys.exit(1)
        
       +config = SimpleConfig()
       +
        loop, stopping_fut, loop_thread = create_and_start_event_loop()
       -network = Network()
       +network = Network(config)
        network.start()
        
        @log_exceptions
   DIR diff --git a/electrum/scripts/peers.py b/electrum/scripts/peers.py
       t@@ -4,9 +4,13 @@ import asyncio
        from electrum.network import filter_protocol, Network
        from electrum.util import create_and_start_event_loop, log_exceptions
        from electrum.blockchain import hash_raw_header
       +from electrum.simple_config import SimpleConfig
       +
       +
       +config = SimpleConfig()
        
        loop, stopping_fut, loop_thread = create_and_start_event_loop()
       -network = Network()
       +network = Network(config)
        network.start()
        
        @log_exceptions
   DIR diff --git a/electrum/scripts/txradar.py b/electrum/scripts/txradar.py
       t@@ -4,6 +4,7 @@ import asyncio
        
        from electrum.network import filter_protocol, Network
        from electrum.util import create_and_start_event_loop, log_exceptions
       +from electrum.simple_config import SimpleConfig
        
        
        try:
       t@@ -12,9 +13,10 @@ except:
            print("usage: txradar txid")
            sys.exit(1)
        
       +config = SimpleConfig()
        
        loop, stopping_fut, loop_thread = create_and_start_event_loop()
       -network = Network()
       +network = Network(config)
        network.start()
        
        @log_exceptions
   DIR diff --git a/electrum/scripts/watch_address.py b/electrum/scripts/watch_address.py
       t@@ -6,6 +6,7 @@ import asyncio
        from electrum.network import Network
        from electrum.util import print_msg, create_and_start_event_loop
        from electrum.synchronizer import SynchronizerBase
       +from electrum.simple_config import SimpleConfig
        
        
        try:
       t@@ -14,9 +15,11 @@ except Exception:
            print("usage: watch_address <bitcoin_address>")
            sys.exit(1)
        
       +config = SimpleConfig()
       +
        # start network
        loop = create_and_start_event_loop()[0]
       -network = Network()
       +network = Network(config)
        network.start()