-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
hw wallet should not be asked for the xpub at m/
. BitBox01 (digitalbitbox) stopped working.
#5816
Comments
Thanks. |
Thanks. What is the purpose of this getting I saw your patch just gets If I understand the purpose better, then we can check which makes most sense (e.g. using one of the above, or adding an api endpoint to give an device identifier, etc.). |
What the code is trying to do is get the bip32 root fingerprint, to be able to properly construct PSBTs. To give a concrete example, if you use a Coldcard hw wallet, the device itself gets sent a PSBT, deserialises that, displays confirmation prompt to the user, signs the tx, serialises a new PSBT and sends that back.
One thing that comes to mind is the custom path Electrum uses for storage encryption: Lines 41 to 44 in d3fd87e
Please whitelist that if possible. |
Thanks. I am not yet very familiar with PSBT, apoloigies for my uninformed questions. Can't the PSBT root xpub just be the account-level xpub, and the input/output derivation paths be two levels ( Edit:
So if the xpub is retrieved with |
Yes I agree this part of bip174 is quite unclear. Relevant discussion: #5672 (comment) |
I think I got the reasoning now. I will think about if we should add a 'get root xfp' api endpoint in the BitBox02. |
I think it would make more sense to use the account xpub (e.g. Outside of Electrum, using the the root xfp makes sense to identify which xpub (if any) is yours, alongside the derivation path from root to derive the key. Inside Electrum, it should be sufficient to use the account-level xpub and fingerprint in the global xpub field (no keypath, zero depth), at least in the BitBox01. Since the account in Electrum already knows which hardware wallet / keystore it is, what the xpub is and what the derivation path is, identification of the signer in PSBT is solved. In the BitBox02, I will probably add the root fingerprint; then the BitBox02 could sign PSBT's without Electrum, e.g. air-gapped or with other wallets. |
There are multiple ways to do change output detection. One way is described in the BIP here. As per the discussion I linked in my previous comment, if you put a i.e. the suggested way of doing things is that you put an account xpub as It is important to distinguish between hardware wallets according to whether they have state or not (besides seed). A Trezor for example is stateless, all the information must be contained within the PSBT. The Coldcard can be used both in a stateless and in a stateful way. Specifically, you can setup a multisig wallet on a Coldcard by importing a txt file detailing xpubs and fingerprints and derivations and script types of cosigners, before and independent of any PSBT. Again, for a stateless hww, all info must be in the PSBT. When signing for multisig inputs and with multisig change outputs, the
Electrum does not even need the Currently, Electrum populates Re exports themselves, there are currently three types of exports:
Further, consider the following example setup: The offline Electrum in this scenario functions as an "Updater" in BIP174 terminology (a second updater; as the online Electrum was also an updater in addition to being the "Creator" as well). Point in the scenario being, if you are cosigning, some design decisions re what to put into PSBT at what point might mean that you require cosigners to run their own Updater on the PSBT before they can sign (as opposed to the Creator's Updater filling in all details). This limits some sdcard usecases. Sorry for the wall of text, this ended up being quite long :) |
commit d93d16eb6a9677aea24feb8ce53a6605d2857a07 Author: Alexander Roth <[email protected]> Date: Sun Jan 26 21:09:43 2020 +0100 Fixed typo commit a8de0a12d4b10ea71692d020038523212b63df1c Author: Alexander Roth <[email protected]> Date: Sun Jan 26 21:07:57 2020 +0100 Code cleanup spaces commit f027b646563f0ecd61c1b9d658be28edb10bf893 Author: Alexander Roth <[email protected]> Date: Sun Jan 26 21:06:41 2020 +0100 Code cleanup spaces commit a586fe25ce5e44f85606da556a3d1061769e5c3f Author: Alexander Roth <[email protected]> Date: Sun Jan 26 21:03:45 2020 +0100 Undo the Readme change commit 8635f8dca8e8c586600400a129046a5c0eee246f Author: Alexander Roth <[email protected]> Date: Sun Jan 26 20:55:45 2020 +0100 Added coloring to the AddressPopup dialog: - Moved the coloring logic (address_colors) from tx_dialog.py to a new file electrum/gui/kivy/util.py - Added background_color to <RefLabel> in main.kv - Calling address_colors in the initialization of AddressPopup and setting the foreground and background color commit e2871542b97e5f1124df5e41e3db4bb9496e880c Merge: 206d947df 11452722a Author: roth <[email protected]> Date: Sun Jan 26 15:28:33 2020 +0100 Merge pull request #1 from spesmilo/master bringing the fork master up-to-date commit 11452722aff3877b7033c2e873f73e906a110a78 Author: SomberNight <[email protected]> Date: Wed Jan 1 07:21:08 2020 +0100 network dns hacks: split from network.py into its own file commit cb88a3b6e45e1261d4926d6d385f8f779a84a2d9 Author: SomberNight <[email protected]> Date: Wed Jan 1 07:00:16 2020 +0100 dns hacks on windows: resolve A and AAAA records in parallel commit a5cd34dc089698ace69d43b3c3f54ffa0f70e18d Author: SomberNight <[email protected]> Date: Wed Jan 22 18:26:29 2020 +0100 follow-up prev (oops, only committed part of the changes) commit d3385e49bb29a169ebf704365ddf723a819ce0ce Author: Axel Gembe <[email protected]> Date: Wed Jan 22 18:16:53 2020 +0100 Build: Install libxkbcommon-x11 in AppImage Newer distributions do not install libxkbcommon-x11 by default anymore and Qt depends on it. ----- taken from https://github.com/Electron-Cash/Electron-Cash/commit/ca3e4501cdc42332f4d7079ef9392c529c9d97b8 commit b560bc92cc86adc716766ca7bbaf7e8aa256fb7b Author: SomberNight <[email protected]> Date: Wed Jan 22 16:28:51 2020 +0100 windows build: maybe fix reproducibility (jsonschema-*.dist-info) commit 4406eebbfef0ccd0a748b4bf4bf190f3c612a6a0 Author: Axel Gembe <[email protected]> Date: Wed Jan 22 12:27:17 2020 +0100 Build: Uninstall Cython from AppImage Cython is not needed at runtime. ----- taken from https://github.com/Electron-Cash/Electron-Cash/commit/c64910055dad6bdcbd01b01121352d2fa3fedb40 related #5859 commit 80025a3af4fa6e456aeac089d41ff4530755b818 Author: SomberNight <[email protected]> Date: Wed Jan 22 12:08:30 2020 +0100 requirements-hw: re-add Cython this reverts ec496a8222938a070fd864571b9d97b4af6f42fc Cython must be pinned down for reproducible builds related #5859 commit c7a21220d5d49375e448f21a5a8baf84f9494107 Author: SomberNight <[email protected]> Date: Tue Jan 21 20:21:14 2020 +0100 mac build: bump pyinstaller version commit 0edd291efe7de25a8b28db5dabdfd2ac9885cd8f Author: SomberNight <[email protected]> Date: Tue Jan 21 20:20:40 2020 +0100 mac build: bump python version (3.6.4->3.7.6) commit a041a0c0755159a7dfe0fd9ca6f30fe50545c8ff Author: SomberNight <[email protected]> Date: Tue Jan 21 16:50:45 2020 +0100 wallet: log when saving already paid invoice (maybe it should not be allowed?) commit 34612c671e0c37418c0aab02dbeb90402b195193 Author: SomberNight <[email protected]> Date: Tue Jan 21 15:39:34 2020 +0100 fix incorrect type hint commit 2880c26d871aefce87a63d89fd156a8d793280ce Author: SomberNight <[email protected]> Date: Tue Jan 21 15:12:25 2020 +0100 qt broadcast tx: don't complain about being "offline" for partial tx commit cb41a0fe89fd96c5ad28fd65377831edb2566bdc Author: SomberNight <[email protected]> Date: Tue Jan 21 14:32:18 2020 +0100 qt send tab paytoedit: use monospace font commit 2e654c94409435a18439eb7c851433cee2ed87ae Author: SomberNight <[email protected]> Date: Tue Jan 21 14:22:25 2020 +0100 qt main_window: trivial clean-up re is_onchain commit e9645db1829a653b9605e205b2f232be545f41b7 Author: SomberNight <[email protected]> Date: Tue Jan 21 14:16:23 2020 +0100 qt send tab: show "Pay" button even in watch-only wallets commit 5fd790dec9a82998153d72e7a4299c36e306c1b0 Author: SomberNight <[email protected]> Date: Tue Jan 21 11:51:02 2020 +0100 follow-up prev These lists are only visible when non-empty. This interacts badly with the internals of maybe_defer_update(). commit 1d0fc6665bbd4d2310c20d54e0c8d9fd224c4ca8 Author: SomberNight <[email protected]> Date: Sun Jan 19 07:31:50 2020 +0100 qt: defer refreshing tabs until they are visible very loosely based on Electron-Cash/Electron-Cash@522e7ca59e5d31f10473064f2149b6c6f9049649 commit 356a0a2865a4ee319e7cc03dabd0ffd1c34e3077 Author: SomberNight <[email protected]> Date: Sun Jan 19 07:02:48 2020 +0100 qt: clean-up in some MyTreeView children (mv code from update to init) commit 18c64515188494f05e517a099a7356d378a14bda Author: SomberNight <[email protected]> Date: Sun Jan 19 05:49:12 2020 +0100 json_db: only deserialize transactions on-demand commit 0fdbf49f089251ef15b0da18ba6522dfbc02ee74 Author: SomberNight <[email protected]> Date: Sat Jan 18 05:52:46 2020 +0100 tests: also run unit tests with python 3.8 on Travis commit 6d270364c66786a3be1d8a783db254f448ef054d Author: SomberNight <[email protected]> Date: Sat Jan 18 04:12:45 2020 +0100 qt paytoedit: properly handle multiple max ('!') outputs commit 5cfafff55d16cef64a1487c6b3ad6b6eadcd6ac7 Author: SomberNight <[email protected]> Date: Sat Jan 18 03:58:15 2020 +0100 qt main_window: rm require_fee_update (dead code) commit b16164da4f5c3fc9717073c7bda8e9618c29c5f2 Author: SomberNight <[email protected]> Date: Sat Jan 18 03:55:07 2020 +0100 qt paytoedit: fixes for pay-to-many (when including "!") commit 3658f870359b54e178d3e9bb9a6e5f15244c7232 Author: rbrooklyn <[email protected]> Date: Fri Jan 17 22:06:34 2020 +0000 Add block explorer support for mynode.local (#5892) commit 1c4728ecc6a8f8d96c40a1130f3e62e245a0c33c Author: SomberNight <[email protected]> Date: Thu Jan 16 19:12:24 2020 +0100 appimage binary: bump python version (3.6.8->3.7.6) commit e65ce96f9d9080fcb46fedf3400007a6cd73abfc Author: SomberNight <[email protected]> Date: Sun Jan 12 04:29:39 2020 +0100 interface: better error msg for main server re SSL cert issues (logger.warning is shown even without -v, if there is a terminal) closes #5884 commit a6dd17bfef29bd7b713af4e74063b666c29dfe8d Author: SomberNight <[email protected]> Date: Sat Jan 11 00:04:00 2020 +0100 fix daemon (don't close instantly) follow-up 37747d74695daf000ffb0db9626191193a6b0555 commit 4fd2745332c0c3a9731e27c5cad707c20182f817 Author: SomberNight <[email protected]> Date: Fri Jan 10 23:27:34 2020 +0100 windows binaries: update nsis commit bab9f687366d9f0ae5decc123e18862ff6f264a9 Author: SomberNight <[email protected]> Date: Fri Jan 10 23:26:47 2020 +0100 windows binaries: update wine commit 547906d1c0d4a9538c381e6d8fa2e9b17c21e02f Author: SomberNight <[email protected]> Date: Fri Jan 10 20:37:43 2020 +0100 windows binaries: update pyinstaller to 3.6 commit bc77091539b799cd6dbc86f25ec15f75970ac70a Author: SomberNight <[email protected]> Date: Fri Jan 10 19:04:16 2020 +0100 requirements: rm pycryptodomex from "binary"-specific list it's already listed now in the "core" requirements.txt file commit 7c090f92ce206891999420a9c7b119491b9ce783 Author: SomberNight <[email protected]> Date: Fri Jan 10 19:01:32 2020 +0100 binaries: use "--no-dependencies" option for pip install All (incl indirect) dependencies are already listed in deterministic-build/requirements*.txt. This option makes it easier to manually rm a dependency from that list for e.g. testing. commit 0b0139c676d158039e7ff2b24d674eb422b06a27 Author: SomberNight <[email protected]> Date: Thu Jan 9 19:22:58 2020 +0100 network.get_transaction: move some response validation logic from Synchronizer commit 94888739d346f970b735daa69f4bb0cec2f73a3b Author: SomberNight <[email protected]> Date: Thu Jan 9 18:21:48 2020 +0100 try to fix "--offline" mode commit 37747d74695daf000ffb0db9626191193a6b0555 Author: SomberNight <[email protected]> Date: Thu Jan 9 17:50:05 2020 +0100 split network main_taskgroup: create daemon.taskgroup network.main_taskgroup restarts every time the proxy settings are changed, many long-running tasks (some introduced with lightning) are not prepared for and do not want this. commit 796853106537e7909729172a1315935028e6765c Author: Nelson Perez <[email protected]> Date: Wed Jan 8 20:14:18 2020 -0500 Restoring old behavior of the outpoint copy to clipboard feature (#5879) * Restoring old behavior of the outpoint copy to clipboard feature * Small code style adjustments commit b14747ecfe9d6df695ff30021a2cf997307b3961 Author: SomberNight <[email protected]> Date: Wed Jan 8 20:06:31 2020 +0100 ecc.ECPubkey: add custom __deepcopy__ implementation With python-ecdsa 0.15, copy.deepcopy(ecdsa.ecdsa.Public_key) started to raise. This fixes the Travis test failures. Also rm unused ECPrivkey._privkey attribute. commit 29cf01524a286b3a6c884a6a05df12a8b759c12f Author: SomberNight <[email protected]> Date: Tue Jan 7 17:59:17 2020 +0100 qt CPFP: handle empty fee field fixes #5875 commit 1059191ebcb6be917d38ab99187f6658007d9c4e Author: SomberNight <[email protected]> Date: Tue Jan 7 16:53:37 2020 +0100 qt installwizard: fix empty filename crash Traceback (most recent call last): File "...\electrum\electrum\gui\qt\installwizard.py", line 256, in on_filename widget_create_new.setVisible(temp_storage and temp_storage.file_exists()) TypeError: setVisible(self, bool): argument 1 has unexpected type 'NoneType' commit d2f132738a2a13d896b11ca984d94930cc1c9aad Author: SomberNight <[email protected]> Date: Thu Jan 2 00:43:49 2020 +0100 wallet: only select mature coins by default this is a regression from #5721 Removed the `TxInput.is_coinbase` method as I think it is a confusing API, instead we now have `TxInput.is_coinbase_input` and `TxInput.is_coinbase_output`. related #5872 commit 6709ec41174300093a5782debe2787f005bd9b07 Author: SomberNight <[email protected]> Date: Wed Jan 1 06:23:51 2020 +0100 dns hacks on windows: cache dns when using dnspython related #4421 related #5337 commit 2d57a689d9bcf36799e1bfb9aa21bcd6a6d048a1 Author: SomberNight <[email protected]> Date: Wed Jan 1 06:21:20 2020 +0100 network/util: increase default timeout of make_aiohttp_session (30->45s) related: #5337 commit 96fa03c11bdc80c7a3313607ab4131fc387f343e Author: SomberNight <[email protected]> Date: Tue Dec 31 03:37:50 2019 +0100 fix paying bip70 payment request with Kivy GUI commit 1d0aa4042a74136e85929edbfe683432ef00591d Author: SomberNight <[email protected]> Date: Tue Dec 31 03:08:47 2019 +0100 fix paying bip70 payment request with Qt GUI commit 787ac5fe994086b994524201fec4b63f876c7c85 Author: SomberNight <[email protected]> Date: Fri Dec 27 17:43:12 2019 +0100 interface: make changing max incoming msg size (1 MB) easier commit c19f9ee755b46701eb07d80370effffebbd67394 Merge: b3c0231b2 967f4d723 Author: ghost43 <[email protected]> Date: Thu Dec 26 17:14:36 2019 +0000 Merge pull request #5865 from shyrwall/master Remove phishing server icarus.tetradrachm.net commit 967f4d7236553e3baf4dea4e0e6145c98b5821a6 Author: Sebastian Hyrwall <[email protected]> Date: Thu Dec 26 23:47:32 2019 +0700 Remove phishing server commit b3c0231b2b32b27cd4dbb417d0e400f0a72aac4b Author: SomberNight <[email protected]> Date: Tue Dec 24 03:30:26 2019 +0100 appimage build: add notes re investigating reproducibility failure commit 5f4162deaa20c5415ebee3844a28575c08275a21 Author: SomberNight <[email protected]> Date: Sat Dec 21 07:33:36 2019 +0100 requirements: bump min python-keepkey to 6.3.1 as 6.3.0 had basic functionality (restore from seed) broken see https://github.com/keepkey/python-keepkey/pull/85 commit ad5c6284c41247527d43fa10626493ca75f15d53 Author: SomberNight <[email protected]> Date: Sat Dec 21 07:00:30 2019 +0100 commands/jsonrpc: fix specifying "wallet" to commands that need it commit 2ca535225d633b548111509db5bd5191819d8fe1 Author: SomberNight <[email protected]> Date: Sat Dec 21 06:53:10 2019 +0100 util.standardize_path: properly handle "~" (user's home directory) notably this is needed when the shell itself does not get a chance to expand "~", e.g. when a path is passed via JSON-RPC >>> os.path.normcase(os.path.realpath(os.path.abspath("~/.electrum/testnet/wallets/delete_me2"))) '/home/user/wspace/electrum/~/.electrum/testnet/wallets/delete_me2' >>> os.path.normcase(os.path.realpath(os.path.abspath(os.path.expanduser("~/.electrum/testnet/wallets/delete_me2")))) '/home/user/.electrum/testnet/wallets/delete_me2' commit 3716594331b575d6346b466d23bdcdbc573483a0 Merge: ace61d2d2 c8d707575 Author: ghost43 <[email protected]> Date: Fri Dec 20 00:51:19 2019 +0000 Merge pull request #5460 from SomberNight/keepkey_enum_20190626 keepkey: use libusb to enumerate devices instead of hid commit c8d7075758ff346d2f5059b2a6fc348587b31831 Author: SomberNight <[email protected]> Date: Fri Dec 20 01:49:56 2019 +0100 requirements: bump min python-keepkey to 6.3.0 commit a8e81c0bd2988ba8921d39b023b0bff115510dd0 Author: SomberNight <[email protected]> Date: Wed Jun 26 20:14:50 2019 +0200 keepkey: use libusb to enumerate devices instead of hid commit ace61d2d20f07db743eb716e71021cb8aacf70e0 Merge: 9b28f6df7 18209fc78 Author: ghost43 <[email protected]> Date: Thu Dec 19 15:54:41 2019 +0000 Merge pull request #5692 from matejcik/trezor-shamir Trezor: support for Shamir backup and recovery commit 18209fc782c08bb4b41d878d8fdedce86d9fa309 Author: SomberNight <[email protected]> Date: Thu Dec 19 16:50:35 2019 +0100 trezor: when restoring, hide Shamir options by default They become visible once user clicks "Show expert settings" commit 9b28f6df7beab821422537f816cbacbe6035f706 Author: SomberNight <[email protected]> Date: Thu Dec 19 14:22:47 2019 +0100 wallet: encrypt storage by default notably, now also in kivy commit 9834d6cd94788fe41bc2b8e87e7642bd918e030a Author: SomberNight <[email protected]> Date: Wed Dec 18 18:23:00 2019 +0100 windows binaries: skip building libusb if already done commit eca769c4ca71c5e950b91f9b7678e6acc1b69d49 Author: SomberNight <[email protected]> Date: Wed Dec 18 17:32:02 2019 +0100 windows binaries: build libusb ourselves Latest libusb does not have official binaries, and it contains some bugfixes we want. related: #5460 based on EchterAgo's work in https://github.com/Electron-Cash/Electron-Cash/commit/ee4bdaf9c0ff304c736f0ae991d3693980311d5f commit 006c6c1a58557f0aa217b9afd68f22dac917e3ca Author: matejcik <[email protected]> Date: Wed Dec 18 12:35:35 2019 +0100 trezor: use BIP39 backup by default even if Shamir is available commit da41e4c289cc96349fbf772b9138f12f6efea44e Author: matejcik <[email protected]> Date: Thu Oct 10 17:36:36 2019 +0200 trezor: bump library requirement commit 3fc70bd97ab6355f07118db5a5fe1ad89682bb13 Author: matejcik <[email protected]> Date: Thu Oct 10 17:31:12 2019 +0200 trezor: implement support for Shamir recovery commit f4e278178693e66c5569f2d4963edd3841e3e8f6 Author: matejcik <[email protected]> Date: Thu Oct 10 17:31:04 2019 +0200 trezor: link button messages to enum names commit 79681c90e024d5a714861886a4bd56ac308878ee Author: SomberNight <[email protected]> Date: Tue Dec 17 22:12:51 2019 +0100 wallet._is_onchain_invoice_paid: support "zero amount" invoice commit 880bd168835a703832dccb368099ec3cd2bdbb63 Author: Axel Gembe <[email protected]> Date: Tue Dec 17 21:41:17 2019 +0100 AppImage: Improve binary stripping Slightly reduces file size, improves build speed and makes build more reproducible. The .comment section contained GCC version information which could cause different build output from just a minor update in GCC. The information is not needed so we strip this. The strip command was invoked using xargs, spawning a new process for each file. This is inefficient as xargs can correctly run the strip command with multiple file names. ----- taken from https://github.com/Electron-Cash/Electron-Cash/commit/43aaf9572f822b977ecffe68f9cce428e5d27c18 commit 33facd151d662fbc9afb62e09867bbf7e7b26325 Author: SomberNight <[email protected]> Date: Tue Dec 17 21:33:07 2019 +0100 ledger.sign_transaction: always do certain output checks commit ee63e84bcfbc8d5861521367ca0b44c3aa411871 Author: SomberNight <[email protected]> Date: Tue Dec 17 21:19:57 2019 +0100 ledger: faster sign_transaction startup Only call Ledger_KeyStore.get_client_electrum() once, as it runs DeviceMgr.scan_devices(), which is slow. commit 6b8c447eb90a0a37f7271681e98f319c8178592a Author: SomberNight <[email protected]> Date: Tue Dec 17 21:10:14 2019 +0100 ledger: support sending to OP_RETURN outputs closes #5849 based on: https://github.com/Electron-Cash/Electron-Cash/commit/ca9b432ff016f734318b13c719370c22e1c28b98 https://github.com/Electron-Cash/Electron-Cash/commit/7bb27eff849e135af486e7611483a54005c797c8 commit 02baae10d75f5ea95eb3096b17556a2d371f0113 Author: SomberNight <[email protected]> Date: Tue Dec 17 18:39:52 2019 +0100 kivy: implement opening storage-encrypted wallet files commit 72491bdf1808e21b7ed24f3bbdad8e8df9325307 Author: SomberNight <[email protected]> Date: Mon Dec 16 21:15:20 2019 +0100 synchronizer: request tx from server if we only have partial local tx Note that there is a slight distinction between `not tx.is_complete()` and `isinstance(tx, PartialTransaction)`, which is that technically you can have a PSBT that is already complete but was not yet converted to a standard bitcoin tx. commit 7b49832a3f4f187e4718cc9d3e649c4453b7548f Author: SomberNight <[email protected]> Date: Mon Dec 16 21:03:34 2019 +0100 payment requests: fix explicit "None" expiration Traceback (most recent call last): File "...\electrum\electrum\gui\qt\main_window.py", line 994, in <lambda> self.create_invoice_button.clicked.connect(lambda: self.create_invoice(False)) File "...\electrum\electrum\gui\qt\main_window.py", line 1123, in create_invoice key = self.create_bitcoin_request(amount, message, expiry) File "...\electrum\electrum\gui\qt\main_window.py", line 1132, in create_bitcoin_request addr = self.wallet.get_unused_address() File "...\electrum\electrum\wallet.py", line 1452, in wrapper addr = func(self, *args, **kwargs) File "...\electrum\electrum\wallet.py", line 1465, in get_unused_address addrs = self.get_unused_addresses() File "...\electrum\electrum\wallet.py", line 1459, in get_unused_addresses in_use_by_request = [k for k in self.receive_requests.keys() if self.get_request_status(k)[0] != PR_EXPIRED] File "...\electrum\electrum\wallet.py", line 1459, in <listcomp> in_use_by_request = [k for k in self.receive_requests.keys() if self.get_request_status(k)[0] != PR_EXPIRED] File "...\electrum\electrum\wallet.py", line 1535, in get_request_status if exp > 0 and time.time() > timestamp + exp: TypeError: '>' not supported between instances of 'NoneType' and 'int' commit 01fc0484841fc8ced7e96798d5f4ca794b37cd41 Author: SomberNight <[email protected]> Date: Sun Dec 15 20:12:51 2019 +0100 CLI: properly auto-upgrade storage when needed even if storage-encrypted previously commands would error if user had an encrypted storage that needed upgrading commit 2c6a1f55fb5bef6e29415aac310f905dae522801 Merge: 61fc00fb9 5c9bd2d2b Author: ThomasV <[email protected]> Date: Sun Dec 15 16:40:46 2019 +0100 Merge pull request #5825 from SomberNight/201912_local_tx_can_be_partial wallet: allow saving partial tx as local (if it has a txid) commit 61fc00fb9ec18faf6039f9da374722e1d4f487aa Merge: 34d652b0f 93cee1ba4 Author: ThomasV <[email protected]> Date: Sat Dec 14 10:51:13 2019 +0100 Merge pull request #5840 from SomberNight/201912_py38_win_dlls_source windows: when running from source, with py3.8+, load DLLs from '.dlls' commit 93cee1ba4d19397fab62a88a8072d33805800c00 Author: SomberNight <[email protected]> Date: Sat Dec 14 06:44:17 2019 +0100 windows: when running from source, with py3.8+, load DLLs from '.dlls' Python 3.8 changed where DLLs are searched for. see https://docs.python.org/3/whatsnew/3.8.html#bpo-36085-whatsnew This potentially affect our binaries when we start shipping python 3.8+, however that is not being addressed here. This commit simply addresses the usecase of running from source, on Windows, using python 3.8. On older Python, a user could build/obtain DLLs and place them anywhere on the system %PATH%, however this no longer works with py3.8, as %PATH% is no longer checked. With py3.8, instead, we now check if there is a folder named '.dlls' in the top-level project directory, and if so, register that as an additional search path. A user who wants to run Electrum from source on Windows using python 3.8 or later, with their custom DLLs, should manually create the '.dlls' folder and put their DLLs there. If they also want to switch between e.g. python 3.7 and 3.8, they should also include '.dlls' in the system %PATH%. When using Electrum, interesting DLLs include at least libsecp256k1.dll, libusb-1.0.dll, libzbar-0.dll. commit 34d652b0f6445bde32a9f963f7f323476fd5630d Author: ThomasV <[email protected]> Date: Fri Dec 13 11:09:18 2019 +0100 follow-up previous commit commit 11f1541cdd6ba56388b97b5cc23d589fc9a687bc Author: ThomasV <[email protected]> Date: Fri Dec 13 11:08:25 2019 +0100 lnworker: save timestamp regardless of channel state commit 206d947dfddf5c17964c696d38501edf803363a6 Merge: 8f1cd8b7b 3a2fe8067 Author: Alexander Roth <[email protected]> Date: Fri Dec 13 10:17:22 2019 +0100 Merge remote-tracking branch 'upstream/master' commit 3a2fe806759d1a476a94a8167f4226e3d017ba28 Author: SomberNight <[email protected]> Date: Thu Dec 12 21:39:46 2019 +0100 qt: also use BlockWaitingDialog in PreviewTxDialog as when 'advanced_preview' is set, ConfirmTxDialog is skipped follow-up 1088cf444497b2548ba69aaaf755da6b83a477a8 commit dbd1c8cf71877dbca03501c07848655fdcf1a5bf Author: SomberNight <[email protected]> Date: Thu Dec 12 21:31:30 2019 +0100 qt TxDialog: visibility of widgets should be set after parenting widget.show() and widget.setVisible(True) results in a blink of an ephemeral window containing the widget; that is, unless the widget has a parent explicitly set or it can be determined via which layout the widget is placed in. commit c9ede074629a4bbb02f94522a32469d5a5eaeadb Author: SomberNight <[email protected]> Date: Tue Dec 10 01:44:21 2019 +0100 wizard: (qt) add dedicated button to create new wallet commit 7324817ff3915012b4f978d8b629657c382d7f70 Merge: 308517d47 1088cf444 Author: ThomasV <[email protected]> Date: Thu Dec 12 17:53:03 2019 +0100 Merge pull request #5833 from SomberNight/201912_qt_blocking_waiting_dialog Qt: introduce BlockingWaitingDialog commit 308517d473d18fdc5a377e7296e0e6ab3f6c92b8 Author: SomberNight <[email protected]> Date: Wed Dec 11 23:07:47 2019 +0100 python 3.8: adapt to breaking changes re asyncio.CancelledError (and TimeoutError) closes #5798 commit fa9b997c70586b2ddcd44b996ec04e35820f5653 Merge: 255bf7caf 252f0960f Author: ThomasV <[email protected]> Date: Wed Dec 11 09:14:36 2019 +0100 Merge pull request #5834 from Electronic-Gulden-Foundation/fix/aiohttp Aiohttp must be lower than 4.0.0 commit 255bf7caf43a9090e7bfe5125bd7959c72419274 Author: SomberNight <[email protected]> Date: Tue Dec 10 23:54:45 2019 +0100 build: update some packages in dockerfiles Ubuntu no longer serves old version commit a5a7c205e36263dca75a182e2549fedcca8b7896 Author: SomberNight <[email protected]> Date: Tue Dec 10 23:31:58 2019 +0100 trivial: add a few log lines for startup commit d08ed6410a49302151ed4122fd4a5047595dc9eb Author: SomberNight <[email protected]> Date: Tue Dec 10 23:01:01 2019 +0100 python3.8: fix DeprecationWarning in qt/paytoedit .../electrum/electrum/gui/qt/paytoedit.py:221: DeprecationWarning: an integer is required (got type float). Implicit conversion to integers using __int__ is deprecated, and may be removed in a future version of Python. self.setMinimumHeight(h) commit 9d0ae2f95b0040312ffe5430a59c7ddbaf8e27d3 Author: SomberNight <[email protected]> Date: Tue Dec 10 22:55:11 2019 +0100 adapt to aiohttp 4.0 related: #5753 commit 252f0960fc4a3914ce8961607f7bc637899a4efc Author: Dennis Ruhe <[email protected]> Date: Tue Dec 10 22:03:17 2019 +0100 Aiohttp must be lower than 4.0.0 commit fcd9752f190d02a04f31137a5910988de2405e68 Author: SomberNight <[email protected]> Date: Tue Dec 10 20:41:47 2019 +0100 keystore: change derive_pubkey API to return bytes commit ea62027599d6efaf6ac6fe3b963e04a833a9950b Author: SomberNight <[email protected]> Date: Tue Dec 10 20:08:41 2019 +0100 wallet: faster decrypt_message for Imported_Wallet commit 869a72831781002546758e906da1c157d967186b Author: SomberNight <[email protected]> Date: Tue Dec 10 19:34:44 2019 +0100 wallet: use abstract base classes commit f08796fe68955e7d2c6381b30a64873e74a3f464 Author: ThomasV <[email protected]> Date: Tue Dec 10 14:45:29 2019 +0100 Allow requests that never expire commit 1088cf444497b2548ba69aaaf755da6b83a477a8 Author: SomberNight <[email protected]> Date: Tue Dec 10 03:34:41 2019 +0100 qt: introduce BlockingWaitingDialog A variant of WaitingDialog that runs the task in the GUI thread, blocking the GUI. It is probably a code smell to actually use this, as operations should not block the GUI... still it provides a middle-ground between blocking the GUI without giving user-feedback and having to refactor existing code (to avoid blocking). commit daef1a8359cc16acd34c8faad7bd91a1061b5b6a Author: SomberNight <[email protected]> Date: Tue Dec 10 03:19:56 2019 +0100 lnworker: don't log InvoiceError lnworker._pay does not need log_exceptions decorator, as we properly await the coroutine commit b99add59c336ef039ae4905287cedc9bf8ef8733 Author: SomberNight <[email protected]> Date: Tue Dec 10 03:17:57 2019 +0100 lnworker: introduce PaymentAttemptLog NamedTuple commit 24ebc77d76cb342502a8443c4edc2a1feff8f067 Author: SomberNight <[email protected]> Date: Tue Dec 10 01:14:38 2019 +0100 ln chan verifier: fix code rot commit 0ab88b821c702b6a424bae8508ce1a9e30b7fa59 Author: SomberNight <[email protected]> Date: Tue Dec 10 00:31:01 2019 +0100 keystore: use abstract base classes, introduce MPKMixin commit f2d42d79ba4f59352697e31cc275f9b436f0b487 Author: SomberNight <[email protected]> Date: Mon Dec 9 19:14:15 2019 +0100 qt: rm redundant line: ConfirmTxDialog.update_tx() already called in ConfirmTxDialog.__init__ commit d641dfe964d7aad3103d99e0db6d9406cc0cd91e Author: SomberNight <[email protected]> Date: Mon Dec 9 17:43:08 2019 +0100 follow-up prev: add comment commit 0828454ef1bda75f7436b39225ed6cd31edc4fa7 Merge: 9d83dea0d 59c5efb09 Author: ThomasV <[email protected]> Date: Mon Dec 9 17:30:10 2019 +0100 Merge pull request #5830 from SomberNight/20191209_wallet_perf wallet perf: significant speedup for make_unsigned_transaction and rel. commit 9d83dea0dcace1eded930308c050d143cf9df4ce Merge: 5f6f7da2a d2a8028cd Author: ThomasV <[email protected]> Date: Mon Dec 9 10:57:14 2019 +0100 Merge pull request #5822 from SomberNight/201912_qt_receive_tab_address qt receive tab: show plain bitcoin address commit 59c5efb090a0f9399cf21d77d5089e457ad0f866 Author: SomberNight <[email protected]> Date: Mon Dec 9 03:43:47 2019 +0100 keystore: cache BIP32Node.from_xkey(self.xpub) This results in significant performance improvements for keystore.can_sign() and wallet._add_txinout_derivation_info() commit f73b6b5d2398f14b353fbdd83145214b157a02ad Author: SomberNight <[email protected]> Date: Mon Dec 9 03:35:20 2019 +0100 keystore: cache derive_pubkey commit 5f6f7da2a1be473a34a125509413d95475011e6a Author: SomberNight <[email protected]> Date: Sun Dec 8 06:56:19 2019 +0100 bitcoin.py: base58 address: make sure all public methods test checksum Note: the checksum was already being checked in practically all cases, by the caller. Moved the check here, to the lower level (but still public) method for sanity. commit 8cf3587aeb0b1fb767aee84792e15f75f90e8f23 Author: SomberNight <[email protected]> Date: Sun Dec 8 06:19:51 2019 +0100 base_encode/base_decode: change to saner API commit 01f94fcf5817be9ff9182bfcda957a8e0e31bf8e Author: SomberNight <[email protected]> Date: Sun Dec 8 06:07:01 2019 +0100 base_encode/base_decode: performance improvement For example, for 50 KB of random data, and base 43, previously, - base_encode took ~38 seconds - base_decode took ~270 seconds now, - base_encode takes ~7.5 seconds - base_decode takes ~6 seconds commit 5c9bd2d2b40f3afee8e6030b5b66f4dcecb289a5 Author: SomberNight <[email protected]> Date: Sun Dec 8 04:33:36 2019 +0100 ln channel open: save funding tx as local tx into wallet commit 30dcab0877c515ff635de7d582dd243728ce7bb5 Author: SomberNight <[email protected]> Date: Sun Dec 8 04:32:44 2019 +0100 wallet: allow saving partial txns as local (but require txid) commit 369d972aed376a59bb21952afa16b43105724a32 Author: SomberNight <[email protected]> Date: Sun Dec 8 03:21:02 2019 +0100 qt: handle exceptions when pressing "Max" button fixes #5783 commit 8f1cd8b7bc63a961f1dcafefdd08a2da184fb3d3 Merge: f052987ba 20bbe85bc Author: Alexander Roth <[email protected]> Date: Sat Dec 7 13:56:14 2019 +0100 Merge remote-tracking branch 'upstream/master' commit d2a8028cde21dacadf0a012cd15a23ea3327419b Author: SomberNight <[email protected]> Date: Sat Dec 7 06:06:36 2019 +0100 qt receive tab: show plain bitcoin address commit 20bbe85bcecb454a4647b675066d6accea37bc78 Author: SomberNight <[email protected]> Date: Sat Dec 7 05:58:58 2019 +0100 receive requests: encode lightning invoices as uppercase -> smaller QRs By encoding bolt11 invoices as uppercase text in QR codes, we can use the alphanumeric mode, which results in non-negligibly smaller QR codes. commit 8e89c0c971645c11e205a163b38e4b35fa3e85de Author: SomberNight <[email protected]> Date: Sat Dec 7 05:42:28 2019 +0100 wallet: some clean-up re get_address_history vs db.get_addr_history note: tests needed changing due to behavioural change in wallet.get_receiving_address() Previously wallet.get_receiving_address used wallet.db.get_addr_history, now it (indirectly) uses wallet.get_address_history, which now also considers local txns. commit d81110014e5a1d32ff424c7a325c7283cd895732 Author: SomberNight <[email protected]> Date: Sat Dec 7 04:28:08 2019 +0100 qt requests/invoices: use TreeView.sortByColumn instead of model.sort sort the view, not the model This way, qt will display the icon indicating the sort order on the relevant column header. commit 9f9b0954e2868a0e0572f3b3b02e2beaaa028e2d Author: SomberNight <[email protected]> Date: Fri Dec 6 22:02:17 2019 +0100 appimage: update package in dockerfile Ubuntu no longer serves old version commit f24dea02776cccf596546b96759f1e403b087295 Author: SomberNight <[email protected]> Date: Fri Dec 6 21:47:28 2019 +0100 add SECURITY.md commit e0eb3c18eb0d399f5b6f37bb9b3d54a368978203 Author: SomberNight <[email protected]> Date: Fri Dec 6 20:41:51 2019 +0100 qt ConfirmTxDialog: don't catch BaseException for make_tx not sure what it is supposed to catch... The examples I could come up with would all be actual bugs; in which case we should let the exception propagate out to the crash reporter. commit a6aa97c3e3a248f24a3e0c5d85f1f48bac230af2 Merge: 2e4cfd074 5b88b8667 Author: ThomasV <[email protected]> Date: Fri Dec 6 20:38:46 2019 +0100 Merge pull request #5820 from SomberNight/201912_ecdsa_sig_r_grinding ECDSA signatures: grind low R to match with Bitcoin Core (take 2) commit 2e4cfd07445bc3f38090fdb3cd52612a55470469 Author: ThomasV <[email protected]> Date: Fri Dec 6 20:17:52 2019 +0100 fix race in NetworkJobOnDefaultServer constructors commit 61aebd0f2dbf83b8e0f6c043036f8f7301b4a158 Author: SomberNight <[email protected]> Date: Fri Dec 6 19:45:55 2019 +0100 (fix) qt coin selection: signatures for coins would persist in memory Scenario: select some UTXOs in the 'Coins' tab. Create a tx and sign it. Close the tx dialog without broadcasting/etc (cancel tx). Signatures would remain for selected UTXOs. Create new tx -> invalid sigs. commit 5b88b8667ee794d58fb8c78feef57be783ecf062 Author: SomberNight <[email protected]> Date: Thu Dec 5 19:24:53 2019 +0100 also grind ecdsa low R when using libsecp256k1, and fix tests note: low R grinding would not have to be duplicated if we trusted the caller to have done it already (as is the case with the classes in ecc.py), and if we propagated the choice of "random_k" as part of the nonce_function passed to libsecp256k1 (which is not currently done) commit d16fd2783cd6c6a537ca3ac44b7b87d8d4ddc7eb Author: junderw <[email protected]> Date: Thu Aug 23 09:27:08 2018 +0200 Add signature Low R grinding to match with Bitcoin Core Ref: https://github.com/bitcoin/bitcoin/pull/13666 Depends on python-ecdsa pull request to allow for extra_entropy Ref: https://github.com/warner/python-ecdsa/pull/92 commit 428b63822b359d56d6ececabf406a43589545d24 Author: SomberNight <[email protected]> Date: Wed Dec 4 20:54:53 2019 +0100 trezor: rm obsolete gui text commit 69720946c1687e887c6571e249bbe08b6d86027b Author: SomberNight <[email protected]> Date: Wed Dec 4 20:53:48 2019 +0100 appimage: update package in dockerfile Ubuntu no longer serves old version commit 3ac8f461a995df8d8ff622dfc3e6031501900b4b Author: Janus Troelsen <[email protected]> Date: Wed Dec 4 13:40:52 2019 -0600 Tests: Remove on_channels_updated (#5819) commit 00a7df13bff555334825e7d381e049906b31e220 Author: SomberNight <[email protected]> Date: Wed Dec 4 20:04:18 2019 +0100 rerun freeze_packages commit 065e98ad35ea4b6e30b8b865a51a931705156b89 Author: ThomasV <[email protected]> Date: Wed Dec 4 18:35:04 2019 +0100 on_open_channel: rm call to non-existing method on_channels_updated commit d3fd87ebd0f4d7b836f6e7f7360f047e330d5698 Author: SomberNight <[email protected]> Date: Mon Dec 2 19:31:17 2019 +0100 hardware wallets: wizard no longer requests xpub at path "m" This was done to calculate the bip32 root fingerprint but it broke the digitalbitbox. The keystore already had a different way to get the root fingerprint for existing wallets, specifically handling this case; the code in base_wizard used when creating new wallets was duplicating that code originally and was then forgotten to be updated. Now these codepaths are unified. closes #5816 commit 68dad21fb467ddb172884048a50f87978e11d3f8 Author: SomberNight <[email protected]> Date: Sun Dec 1 23:24:43 2019 +0100 network: make best_effort_reliable smarter and a bit more lenient related: #5815 commit dfdc1e1d25a87c3283f57e8bd98028352324ca8f Author: ThomasV <[email protected]> Date: Fri Nov 29 18:36:24 2019 +0100 require ecdsa version >= 0.13.3 commit 6659f5c2c0c8136f2c2350f3ff5a6687b8e04677 Merge: 7a080352f ed5300ba1 Author: ThomasV <[email protected]> Date: Fri Nov 29 18:35:37 2019 +0100 Merge pull request #5740 from spesmilo/dependabot/pip/contrib/deterministic-build/ecdsa-0.13.3 build(deps): bump ecdsa from 0.13.2 to 0.13.3 in /contrib/deterministic-build commit 7a080352f8864077875206658bb610113eded7e6 Merge: cfbd83c43 8dbbc21af Author: ThomasV <[email protected]> Date: Fri Nov 29 18:24:08 2019 +0100 Merge pull request #5809 from SomberNight/201911_invoice_paid_detection wallet: better (outgoing) invoice "paid" detection commit 8dbbc21aff766e511331cbaea1d56b479eae138a Author: SomberNight <[email protected]> Date: Thu Nov 28 18:24:00 2019 +0100 wallet: better (outgoing) invoice "paid" detection - no more passing around "invoice" in GUIs, invoice "paid" detection is now handled by wallet logic - a tx can now pay for multiple invoices - an invoice can now be paid by multiple txs (through partial payments) - new data structure in storage: prevouts_by_scripthash - type: scripthash -> set of (outpoint, value) - also, storage upgrade to build this for existing wallets commit cfbd83c43230ad6b31e98120daff8336c3ac0b7a Author: SomberNight <[email protected]> Date: Fri Nov 29 13:12:23 2019 +0100 wallet: minor clean-up commit c0b5ebcc5d51fb149a4b8fa7eae7a492c8ebe03d Author: SomberNight <[email protected]> Date: Fri Nov 29 13:09:21 2019 +0100 tests: fix testcase test_restoring_wallet_with_manual_delete commit adaa016e78667b3051b8661a8b0387a6a04557a4 Author: SomberNight <[email protected]> Date: Fri Nov 29 00:53:18 2019 +0100 LNPeerAddr: fix equality tests and hence lnworker._last_tried_peer follow-up 13d69973555fef8802cce264f7ea324e89e36684 commit f052987bafab1ed86ef9b66585328cf5e0c3d057 Merge: 3061968f8 2ce8dd460 Author: Alexander Roth <[email protected]> Date: Thu Nov 28 22:07:18 2019 +0100 Merge remote-tracking branch 'upstream/master' commit 3061968f8b1cb3954d88f56ba8b8e4b4847e12bc Author: Alexander Roth <[email protected]> Date: Thu Nov 28 22:01:02 2019 +0100 Added required debian package (besides docker-ce) to the apt-get install command commit 2ce8dd460b254bf56c5fbad38aadbaad41331316 Author: roth <[email protected]> Date: Thu Nov 28 21:40:28 2019 +0100 Color-Code Addresses in Kivy UI (#5774) * Added static coloring of the TX output dialog. Coloring was suggested in #5750 commit 786d2b896b507df57bf9f0a0582d1f88ef26e4ae Author: Alexander Roth <[email protected]> Date: Thu Nov 28 21:37:07 2019 +0100 Removed 1 empty line commit b46966b1cdd7b4f862a7ca4f2c4c98ab00e14587 Author: Alexander Roth <[email protected]> Date: Thu Nov 28 21:32:23 2019 +0100 Added space commit 89614c470803549cced3ae4dabd35d56a6ce4ba9 Author: Alexander Roth <[email protected]> Date: Thu Nov 28 21:30:29 2019 +0100 Removed superfluous default colors commit 4007720b3457dbdd83f9c33a77b6e5c2834d87d5 Author: SomberNight <[email protected]> Date: Wed Nov 27 20:29:49 2019 +0100 qt history list: rm and fix magic number commit f7fb14a538bb95be54a8c2d6ec92c936fc183e99 Merge: a13344938 8c30ae78b Author: ThomasV <[email protected]> Date: Wed Nov 27 18:37:50 2019 +0100 Merge pull request #5806 from RCasatta/remove_greenaddress Remove GreenAddress instant plugin commit 8c30ae78be8cbd0a4ef9ceab3d9c3951a6266762 Author: Riccardo Casatta <[email protected]> Date: Wed Nov 27 17:37:31 2019 +0100 remove GreenAddress instant plugin GreenAddress instant feature has been removed from the service, thus there is no reason anymore to keep the plugin commit a13344938f0f8308651612efc86921a0e9b97602 Author: SomberNight <[email protected]> Date: Wed Nov 27 13:08:22 2019 +0100 interface: fix connecting to raw IPv6 (as hostname) on Windows Changed cert pinning filename as on Windows paths cannot contain a colon ':'. commit cee208313494ed5978e7a6c62c3b13c9583c6c93 Author: SomberNight <[email protected]> Date: Wed Nov 27 04:30:38 2019 +0100 qt history list: fix UnboundLocalError when searching closes #5801 commit d430ec4bfc2d4ffb7b43ae63297fa9fa492aac01 Author: SomberNight <[email protected]> Date: Tue Nov 26 00:17:00 2019 +0100 interface.deserialize_server: better ipv6 handling commit 13d69973555fef8802cce264f7ea324e89e36684 Author: SomberNight <[email protected]> Date: Tue Nov 26 00:15:33 2019 +0100 LNPeerAddr: validate arguments no longer subclassing NamedTuple (as it is difficult to do validation then...) commit edba59ef54b4489ddccdbe70b883bfec42be3d3a Author: SomberNight <[email protected]> Date: Mon Nov 25 21:10:53 2019 +0100 LNPeerAddr: nicer str formatting for IPv6 hosts commit ddeb176b3da0c4fcbb6cf2b8d85dd319e2a2bf56 Author: SomberNight <[email protected]> Date: Sat Nov 23 20:50:30 2019 +0100 kivy: fix open_channel (API was changed) commit 557987d4ebfca40902e741254734f13e9150f1d9 Author: SomberNight <[email protected]> Date: Sat Nov 23 20:28:46 2019 +0100 add/fix some open_channel related type hints commit 038036f350349812c2affa8a7a77188fd2dc5b3a Author: ThomasV <[email protected]> Date: Sat Nov 23 19:56:40 2019 +0100 minor follow-up prev commit commit fd8236538a955d51e0fd3268576f34fca2eaed51 Author: ThomasV <[email protected]> Date: Sat Nov 23 13:30:05 2019 +0100 Open lightning channels with partially signed tx. Fixes #5379. commit 9c9ceb702a3a7bd0b535793db1c3478e4a402c01 Author: ThomasV <[email protected]> Date: Sat Nov 23 15:12:16 2019 +0100 fix #5729 commit b9e5edd704534648bb4b016f216955ed176f447f Author: ThomasV <[email protected]> Date: Sat Nov 23 14:51:39 2019 +0100 fix #5728 commit 06589df812d85597b0dc635f8d4e502cbdcfb5a6 Author: ThomasV <[email protected]> Date: Sat Nov 23 12:46:43 2019 +0100 simplify add_transaction commit fc85dcead64fbd5c808b72bccd98bf7083bb96d1 Author: ThomasV <[email protected]> Date: Sat Nov 23 11:37:01 2019 +0100 follow-up previous commit commit 6c62fb03ac1231012faed03e5ec610b13386be63 Author: ThomasV <[email protected]> Date: Sat Nov 23 11:02:31 2019 +0100 fix #5733 commit 88307357ec3798e6d78720c74bae46d68c622bb8 Author: SomberNight <[email protected]> Date: Fri Nov 22 22:59:33 2019 +0100 add some type hints mostly related to hw wallets commit 770ae6d8785c5deaa1ba3b827ed27d10522e141a Author: SomberNight <[email protected]> Date: Fri Nov 22 22:11:56 2019 +0100 fix tests commit bda9a407d9b7bd1bcf6c5510b09502692c7c4294 Author: SomberNight <[email protected]> Date: Fri Nov 22 21:37:15 2019 +0100 trivial: don't print frequent-case log line in lnpeer.mark_open commit 268e2453229d7ea7e0049aa79f36cc17fd94fc6e Author: SomberNight <[email protected]> Date: Fri Nov 22 21:33:56 2019 +0100 lnpeer: only set initialized after both sent AND received "init" had a trace where we tried to send "funding_locked" before being initialized: D | lnpeer.Peer.[iq7zhmhck54vcax2vlrdcavq2m32wao7ekh6jyeglmnuuvv3js57r4id.onion:9735] | Sending FUNDING_LOCKED E | lnworker.LNWallet | Exception in on_update_open_channel: AttributeError("'LNTransport' object has no attribute 'sk'") Traceback (most recent call last): File "...\electrum\electrum\util.py", line 999, in wrapper return await func(*args, **kwargs) File "...\electrum\electrum\lnworker.py", line 674, in on_update_open_channel peer.send_funding_locked(chan) File "...\electrum\electrum\lnpeer.py", line 876, in send_funding_locked self.send_message("funding_locked", channel_id=channel_id, next_per_commitment_point=per_commitment_point_second) File "...\electrum\electrum\lnpeer.py", line 102, in send_message self.transport.send_bytes(raw_msg) File "...\electrum\electrum\lntransport.py", line 93, in send_bytes lc = aead_encrypt(self.sk, self.sn(), b'', l) AttributeError: 'LNTransport' object has no attribute 'sk' commit 61dfcba092c8b2ad68a5821010bd1a16fd1d57cc Author: ThomasV <[email protected]> Date: Tue Oct 29 08:02:14 2019 +0100 Refactor channel states: - persisted states are saved - state transitions are checked - transient states are stored in channel.peer_state - new channel states: 'PREOPENING', 'FUNDED' and 'REDEEMED' - upgrade storage to version 21 commit c31fa059fe01a38ae5f382715283fbec5f6dca9a Author: SomberNight <[email protected]> Date: Fri Nov 22 16:09:42 2019 +0100 cli: clear up "rbf" arg for "payto" cmd in help text; and use eval_bool related: #5791 (previously rbf was a str, and it was casted to a bool directly, i.e. only the empty string "" evaluated as False) commit 420b1a66362bf9b3965afbb58953eaf41c3c06f3 Author: SomberNight <[email protected]> Date: Fri Nov 22 15:54:34 2019 +0100 cli: load_wallet now auto-upgrades the WalletStorage when needed previously it would bail out and just return False commit 3d88d6870cf509632d2cdcfd8beabd973a8c363f Author: SomberNight <[email protected]> Date: Fri Nov 22 15:48:22 2019 +0100 cli: fix load_wallet for storage-encrypted wallets commit 8e08ca7cb11f0addec8d82adc8ac6db01557f4f1 Author: ThomasV <[email protected]> Date: Fri Nov 22 15:06:37 2019 +0100 simplify network callbacks in lnworker commit b469df5283f9ba890555666299338974fbf3a308 Author: ThomasV <[email protected]> Date: Thu Nov 21 20:16:04 2019 +0100 check channel funding_tx amount and script in save_short_channel_id commit c2b0039935cc00530f1eb583ea152885e86b9b81 Author: SomberNight <[email protected]> Date: Thu Nov 21 18:51:38 2019 +0100 bitcoin.py: remove some remnants of TYPE_ADDRESS, TYPE_SCRIPT commit 03cc63205fbc7eb46466d91ee5029450df42c0d4 Author: SomberNight <[email protected]> Date: Thu Nov 21 17:55:00 2019 +0100 trivial: use logger.exception instead of traceback.print_exc commit 6f246a83b307a63b80b0d98c1f0f3c606e45170a Author: SomberNight <[email protected]> Date: Thu Nov 21 17:46:00 2019 +0100 qt coin selection: allow selecting an empty set Using this, the user can force "bump fee" not to add new inputs. closes #5719 commit 11f54aee60d6de3413812318b8cc826365a43051 Author: SomberNight <[email protected]> Date: Thu Nov 21 17:21:54 2019 +0100 qt utxo list: spend_list is now a set (and renamed) this is a small performance improvement ("if x in spend_list" was linear) and the "order" of selected coins does not matter anyway commit 216d9e3c4db091ccccb0919b67022c65a9e55962 Author: SomberNight <[email protected]> Date: Thu Nov 21 16:37:43 2019 +0100 lnpeer: (fix) force_close_channel was not awaited in some cases commit d5b27e5be1711aa6a0c883929d92e11a344153de Merge: 6b195437e 423c4b069 Author: ghost43 <[email protected]> Date: Thu Nov 21 15:21:17 2019 +0000 Merge pull request #5787 from xaya/http-request-auth Return 401 from RPC server for missing auth commit 423c4b06951253bd626970ea82179e2cfb55f3ea Author: Daniel Kraft <[email protected]> Date: Thu Nov 21 15:12:14 2019 +0100 Return 401 from RPC server for missing auth. When no (supported) authentication is passed to the JSON-RPC server, return a 401 HTTP error code instead of 403. This indicates to the client that authentication is required, and also requests that to be sent using the "basic" method. The previously-returned code 403 is now only returned if authentication is passed but not valid. There are some JSON-RPC clients out there that only send authentication after a 401 code requested it. Those fail to connect to the Electrum RPC interface even if the correct password is configured. Those same clients can e.g. connect to Bitcoin Core successfully, which already implements logic matching this change. See also https://stackoverflow.com/questions/3297048/403-forbidden-vs-401-unauthorized-http-responses. commit 6b195437ed191db0cfde67a364280982b47143bf Author: SomberNight <[email protected]> Date: Thu Nov 21 05:01:59 2019 +0100 wallet: "future" txns num conf is now negative flipped the sign so that TxMinedInfo.conf can be consistently used in inequalities commit 1526bc9ccf1125cd2c8c650748116050da95d778 Author: SomberNight <[email protected]> Date: Thu Nov 21 03:01:55 2019 +0100 qt: consistently show tooltip when copying to clipboard commit 048285f95e966351a19b51b46864030da21f5465 Author: Alexander Roth <[email protected]> Date: Wed Nov 20 21:25:36 2019 +0100 #5750 Set the default color of the components to black commit 9fe79171186e9e98aab266282c055a90dac9de18 Author: Johann Bauer <[email protected]> Date: Wed Nov 20 21:11:41 2019 +0100 Qt: Remove unused color from color scheme commit 67bab545635798f3f413d1725bcb1d912eb81b61 Author: Alexander Roth <[email protected]> Date: Wed Nov 20 19:31:42 2019 +0100 #5750 Renamed loop variable commit 06de2660cface26402890096419bc714a6b9b679 Author: SomberNight <[email protected]> Date: Wed Nov 20 19:29:29 2019 +0100 kivy: support invoices with "max" amount closes #5781 commit 49284f716b90a266b4664b364d7c0303ac4ba123 Author: SomberNight <[email protected]> Date: Wed Nov 20 18:43:05 2019 +0100 wallet: bump fee now supports coin selection related: #5719 commit fec96775089a1831a49bbd1a0e7d06d29b2d4021 Author: SomberNight <[email protected]> Date: Wed Nov 20 18:00:45 2019 +0100 qt open channel: minor dialog fixes commit cd9477c0da88288c6b92f430b533bf3026c84b67 Author: SomberNight <[email protected]> Date: Wed Nov 20 17:45:28 2019 +0100 ln: qt channel open: fix max channel size commit ae04434206525b1ec55127b9e752a330c5dbde5f Author: SomberNight <[email protected]> Date: Wed Nov 20 17:14:14 2019 +0100 ln: update list of fallback nodes with some popular nodes from 1ml.com commit 4057140e6a7d858128b8a70aafdf649922073435 Author: SomberNight <[email protected]> Date: Wed Nov 20 03:21:59 2019 +0100 lightning qr codes: more robust parsing kivy qr code handling did not accept "lightning:" prefix or uppercase commit d1c262def078098599220d6ae189a90700ece0c9 Author: SomberNight <[email protected]> Date: Tue Nov 19 22:17:52 2019 +0100 qt tx dialog: small clean-up in constructors commit 97056ae44dca6775c8aff56033ff461060984079 Author: SomberNight <[email protected]> Date: Tue Nov 19 21:22:49 2019 +0100 qt send tab: subtract 2fa fee when clicking "spend max" commit ca6654c10234e1d3ded7ff0c6b1f42fa25438010 Author: SomberNight <[email protected]> Date: Tue Nov 19 20:26:50 2019 +0100 qt send tab: don't allow paying multiple invoices that spend max '!' commit 710e9621b5ec2257d92538ae26dd33ff48aa86da Author: SomberNight <[email protected]> Date: Tue Nov 19 20:13:16 2019 +0100 qt tx dialog: allow blanking feerate Previously it was impossible to rm the last character in feerate_edit. e.g. if you held down "backspace", we would keep refilling the field as soon as it became empty. commit 13b858ab26f3eda6e89330ec9dfe707eecc95d62 Author: SomberNight <[email protected]> Date: Tue Nov 19 19:35:57 2019 +0100 qt tx dialog: disable "Finalize" btn if tx is None e.g. NotEnoughFunds due to too high fee commit 66ddedb97ea2eef37cb9355de35e5ad534013373 Author: SomberNight <[email protected]> Date: Tue Nov 19 19:29:10 2019 +0100 qt tx dialog: small fee edit fix scenario: enter extremely high feerate (which we cannot satisfy) then click into fee_edit. At that moment, fee_edit is empty and both feerate_edit and fee_edit are considered frozen. As fee_edit has priority, we would construct a tx with default fee. Now, instead, we won't construct this default fee tx ~as if the click to fee_edit did not happen. commit 8bd27851a47707e2c4a039c7675f01e66fbfb939 Author: SomberNight <[email protected]> Date: Tue Nov 19 18:41:44 2019 +0100 qt tx dialog: only allow "save as local" for complete txns commit aa3d817ef20f630333d06678c434564baf20b7a3 Author: SomberNight <[email protected]> Date: Mon Nov 18 20:56:49 2019 +0100 qt: clean-up imports commit b8e4ce9ba1d3e8c600bd4f1ebe8055fb42d1152d Author: SomberNight <[email protected]> Date: Mon Nov 18 18:13:26 2019 +0100 hardware wallets: handle when label is None follow-up 56c3de0e1eb28f6017286f51c37c5c45b86690bd commit aa37979100b9119414026862444bfdb13295e6d3 Author: ThomasV <[email protected]> Date: Mon Nov 18 10:22:20 2019 +0100 fix #5761 commit b9cf095e1a0e44121fd4f3b1861c14ff82d36931 Author: ThomasV <[email protected]> Date: Mon Nov 18 05:48:21 2019 +0100 fix #5761 commit ade47e331a6c5ab9c386eedce1f67b766ecb4ec3 Merge: 47e0b4cd0 f2ca651dc Author: ThomasV <[email protected]> Date: Mon Nov 18 05:12:25 2019 +0100 Merge branch 'master' of github.com:spesmilo/electrum commit 47e0b4cd02a31d4bb7290aa56b1cc0246e16df06 Author: ThomasV <[email protected]> Date: Mon Nov 18 05:12:13 2019 +0100 fix #5765 commit f2ca651dc4d0327ed99c5cf3766ba58ed9855c50 Merge: 6b9971a46 643bc9d80 Author: ghost43 <[email protected]> Date: Mon Nov 18 02:11:06 2019 +0000 Merge pull request #5775 from JeremyRand/resolver-wallet Fix missing wallet argument to _resolver commit 643bc9d802042deb0d186f7b37328af614ef725e Author: JeremyRand <[email protected]> Date: Mon Nov 18 01:31:33 2019 +0000 Fix missing wallet argument to _resolver commit 64d53258930a3014cab1f1cbe74d9cf38b858c27 Author: Alexander Roth <[email protected]> Date: Sun Nov 17 19:37:46 2019 +0100 Moved color property next to the background color commit 4bfd0b0f0fd378538a62a672df86791ca9988bb3 Author: Alexander Roth <[email protected]> Date: Sun Nov 17 19:34:47 2019 +0100 Changed color coding to hex codes - It uses exactly the same background colors as the qt version - Improved readability commit 6b9971a4666bd3bbd0cd16ea6c4f8e88f40fc878 Author: ThomasV <[email protected]> Date: Sun Nov 17 19:29:48 2019 +0100 fix #5767 commit 0a8f5113405253d528241b7ed3a6641fe99ff5f9 Author: ThomasV <[email protected]> Date: Sun Nov 17 19:25:11 2019 +0100 fix #5772 commit d47256ed552a12b97eacd69fc9b25e66259ecde5 Author: Alexander Roth <[email protected]> Date: Sun Nov 17 18:58:49 2019 +0100 Code cleaning - Tabs to spaces - Broke long lines - Removed a superfluous class TopLabelExtended and replaced by TopLabel - set background color by default to black - added spaces after comma commit a453189d37d52a5cf1e9edb9ac8045165910ba1c Author: ThomasV <[email protected]> Date: Sun Nov 17 17:08:09 2019 +0100 fix #5766 commit af21a4a8d6b30ccce1f0ab8565afbf12d1074781 Author: ThomasV <[email protected]> Date: Sun Nov 17 16:58:35 2019 +0100 fix #5770 commit aeb4afed4be3cd8a0a365083feeb3796c4ae832c Author: Alexander Roth <[email protected]> Date: Sun Nov 17 16:49:46 2019 +0100 Added correct coloring Further works needs to be done: - check if color scheme can be derived - clean up code commit ed5300ba1d593e94c9675df1b61b67bcda3a56e8 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat Nov 2 09:23:39 2019 +0000 build(deps): bump ecdsa in /contrib/deterministic-build Bumps [ecdsa](https://github.com/warner/python-ecdsa) from 0.13.2 to 0.13.3. - [Release notes](https://github.com/warner/python-ecdsa/releases) - [Changelog](https://github.com/warner/python-ecdsa/blob/master/NEWS) - [Commits](https://github.com/warner/python-ecdsa/compare/python-ecdsa-0.13.2...python-ecdsa-0.13.3) Signed-off-by: dependabot[bot] <[email protected]>
I'll reclose actually, as the original issue was solved. |
Hi
Since bafe8a2#diff-4eaf9a810a587a7d17bc1910a7cf00feR423, a HW wallet is asked for the xpub at "m/". For security reasons, the BitBox01 and BitBox02 (we are preparing a plugin for Electrum) do not support getting the root xpub.
I am unsure about the context of why this was added (#5715 seems related), but is there a way to not require this? In theory, the account-level xpub should be sufficient.
With this commit, the BitBox01 (digitalbitbox) plugin stopped working.
The text was updated successfully, but these errors were encountered: