Commit graph

11620 commits

Author SHA1 Message Date
ThomasV
35761d1241 Save remote policy of chanel in wallet file (for private channels) 2019-09-08 19:14:28 +02:00
SomberNight
1612bca4c8
wine build: add --build to ./configure: prevents cross-comp. misdetect
from Electron-Cash/Electron-Cash/commit/e87021a78dbdeb50e9cfa51ddf0c1ef60c7688e0
2019-09-08 18:55:31 +02:00
SomberNight
b381fd84fb
build: when building libsecp256k1, patch Makefile.am before autogen.sh
apparently this could have caused issues on MacOS

based on Electron-Cash/Electron-Cash@69f6cd0aa0
2019-09-08 18:47:30 +02:00
SomberNight
abde8ff169
wallet: fix maturity off-by-one
based on Electron-Cash/Electron-Cash@c70957eb13
2019-09-08 18:26:04 +02:00
SomberNight
e3d5475f03
kivy: commit png icons (for svg resources) into repo 2019-09-08 17:05:06 +02:00
SomberNight
b1dc281cba
kivy amount_dialog: truncate btc amounts to max precision
closes #5624
2019-09-08 15:41:10 +02:00
ThomasV
d5d9f5b46c fix #5618 2019-09-08 12:06:21 +02:00
SomberNight
83fcdbd561
lnchannel: handle htlc-address collisions
We were previously generating an incorrect commitment_signed msg if there were
multiple htlcs sharing the same scriptPubKey.
2019-09-07 08:54:41 +02:00
SomberNight
00f15d491b
lnpeer: somewhat nicer log messages 2019-09-07 07:29:22 +02:00
SomberNight
d4da4aa56c
lnrouter: fix off-by-one in NUM_MAX_EDGES_IN_PAYMENT_PATH 2019-09-06 18:36:21 +02:00
SomberNight
25c372a3e0
lnworker.invoices access now uses lock
(qt gui thread vs asyncio thread race)

Traceback (most recent call last):
  File "/home/user/wspace/electrum/electrum/gui/qt/main_window.py", line 1685, in do_send
    self.pay_lightning_invoice(self.payto_e.lightning_invoice)
  File "/home/user/wspace/electrum/electrum/gui/qt/main_window.py", line 1667, in pay_lightning_invoice
    self.invoice_list.update()
  File "/home/user/wspace/electrum/electrum/gui/qt/invoice_list.py", line 73, in update
    _list = self.parent.wallet.get_invoices()
  File "/home/user/wspace/electrum/electrum/wallet.py", line 525, in get_invoices
    out += self.lnworker.get_invoices()
  File "/home/user/wspace/electrum/electrum/util.py", line 401, in
    return lambda *args, **kw_args: do_profile(args, kw_args)
  File "/home/user/wspace/electrum/electrum/util.py", line 397, in do_profile
    o = func(*args, **kw_args)
  File "/home/user/wspace/electrum/electrum/lnworker.py", line 1007, in get_invoices
    for key, (invoice, direction, status) in self.invoices.items():
RuntimeError: dictionary changed size during iteration
2019-09-06 18:27:47 +02:00
SomberNight
509df9ddaf
create class for ShortChannelID and use it 2019-09-06 18:09:05 +02:00
SomberNight
251db638af
only require libsecp256k1 if lightning is enabled
related: #5606
2019-09-06 15:08:15 +02:00
ThomasV
e5ff4fc7cd fix #5605 2019-09-06 13:43:00 +02:00
ThomasV
5e92f637a6 fix CLI exception handling 2019-09-06 12:38:13 +02:00
ThomasV
35b0b3a43c Fix CLI. Some commands require wallet_path. Return error on exception. 2019-09-06 11:06:08 +02:00
ThomasV
5faa0ade3d ignore exceptions in payserver 2019-09-06 08:06:26 +02:00
SomberNight
712c3f1248
commands: try to fix tests 2019-09-05 23:22:11 +02:00
SomberNight
edf186da0d
channeldb.load_data: attempt at fixing race
closes #5525
2019-09-05 18:32:45 +02:00
SomberNight
4f741cfccc
lnpeer: longer timeouts 2019-09-05 18:31:51 +02:00
SomberNight
58681e4d07
follow-up prev (commands) 2019-09-05 18:30:04 +02:00
ThomasV
9ec9e1760a CLI: always use the daemon's cmd_runner, and pass the 'wallet'
parameter explicitly to each command that requires it.
Previous code was relying on side effects to set the wallet.
This should fix #5614
2019-09-05 17:57:51 +02:00
SomberNight
0deb12cb2b
kivy: fix ln channel open via scan_qr 2019-09-05 17:06:42 +02:00
ThomasV
45f3e28d38 qt: minor fixes 2019-09-05 15:00:45 +02:00
ThomasV
28da62f51b add PayServer settings to settings_dialog 2019-09-05 14:43:27 +02:00
ThomasV
96d3c36e4a Qt: move settings dialog to a separate module 2019-09-05 13:21:18 +02:00
ThomasV
9d595f1fe1 fix websocket messages 2019-09-05 11:45:28 +02:00
ThomasV
94e7e94e2f fix ssl config names, add new config tab 2019-09-05 11:36:50 +02:00
ThomasV
466c2bd293 for now, use PR_PAID for onchain unconfirmed 2019-09-05 11:33:09 +02:00
ThomasV
128285a050 http server: add ssl and bip70 signed requests 2019-09-05 10:57:50 +02:00
SomberNight
9d65120e59
commands: fix "close_wallet" 2019-09-04 20:16:47 +02:00
SomberNight
1bd9b3a66a
commands: fix "restore" cmd
Previously commands did not run on the asyncio thread but now they do.
"restore" was polling like "while 1: time.sleep()", blocking the event loop.

Now "restore" does not sync the wallet; which is actually cleaner
as previously this wallet would never get unloaded from the daemon (syncing forever).

This is also symmetric with the "create" cmd which also does not try to sync with the network.

However now it became difficult to write a script that restores a wallet and wants to wait
until it gets synced. Workaround for now is to poll with "list_wallets" whether it's synced.

We could create a new command that blocks until the loaded wallet gets synced.
2019-09-04 20:15:54 +02:00
SomberNight
de83ab6d4a
CLI: remove timeout for offline commands
e.g. when interacting with hw wallets (e.g. signmessage)
it does not make sense to time out

also, str(e) of some exceptions such as TimeoutError is ""...
2019-09-04 14:35:04 +02:00
SomberNight
b0902940b5
README: mention submodule init 2019-09-04 14:03:39 +02:00
SomberNight
99b83f7527
fix #5617 2019-09-04 13:53:38 +02:00
SomberNight
a42a773d19
storage: replace STO_EV_* ints with IntEnum 2019-09-04 13:31:49 +02:00
ThomasV
54776ca1d9 disable http server by default 2019-09-04 13:07:44 +02:00
ThomasV
deb97567fb Qt: fix request menu 2019-09-04 12:52:32 +02:00
ThomasV
0d1ffe5642 fix submodule 2019-09-04 12:39:02 +02:00
ThomasV
747ab7a0a2 Integrate http_server (previously in electrum-merchant)
Use submodule to fetch HTML and CSS files
2019-09-04 12:20:05 +02:00
ThomasV
bd57880799 do not raise exception when add_own_channel adds channel update from the cache 2019-09-04 08:01:08 +02:00
ThomasV
e286ed1c13 add_own_channel does not need to be async 2019-09-03 21:01:45 +02:00
SomberNight
9372eacc29
hw wallets: show DeviceUnpairableError nicely in qt gui
need to subclass UserFacingException for main_window.on_error
2019-09-03 19:19:58 +02:00
SomberNight
bb2c3475cc
qt main_window: fix receive_at, rm dead code 2019-09-03 18:56:09 +02:00
SomberNight
8cd8c6612d
hw wallets: fix "show address" functionality in qt receive tab 2019-09-03 18:37:48 +02:00
SomberNight
ff94240139
qt receive tab: fix on-chain pay.requests without amount 2019-09-03 18:33:49 +02:00
SomberNight
c3504cec94
follow-up a4b24df4bb 2019-09-03 17:53:11 +02:00
SomberNight
073a09f926
wallet/keystore: small inheritance clean-up 2019-09-03 16:24:05 +02:00
ThomasV
a4b24df4bb fix json error in listrequests 2019-09-03 14:51:07 +02:00
ThomasV
2801539087 fix create_menu error #5609 2019-09-03 14:50:34 +02:00