fiatjaf
c81e61e4fe
guards and safety timeouts around paymentChecker intervals.
2020-10-15 12:32:28 -03:00
fiatjaf
bdbb58b2b0
wrap memo columns in payments table.
2020-10-15 00:59:00 -03:00
fiatjaf
be7d36214a
use payments/sse on the core wallet UI.
...
still fallback to the invoice polling (now with a 5 seconds interval
because less than that is too annoying).
this fixes issues with /lnurlwallet invoices not getting paid in time,
so we update the UI automatically when they do get paid.
(see https://t.me/lnbits/7069 )
2020-10-15 00:18:57 -03:00
fiatjaf
f02ec67f35
add lntxbot invoices listener.
2020-10-14 23:58:57 -03:00
fiatjaf
d528d4e09e
fix: wallet layout.
2020-10-14 23:13:55 -03:00
fiatjaf
ec4b558638
fix: domain variable assignment in pay_lnurl.
2020-10-14 22:44:23 -03:00
fiatjaf
0dc60d4795
increase timeouts for http wallets when stuff may take more than 5 seconds.
...
before we were using requests which had no default timeouts, but httpx has a
default timeout of 5 seconds. should have noticed that earlier.
when the timeout expires we are left with a pending payment on the db with a
temporary checking_id so we can never know if it was completed or not.
this is still an issue, because technically a lightning payment may take 2 weeks
or more, and we must have a way to dispatch a payment and check for it later.
that should be the default (and we already do check for the payment status later,
so half of the work is done), but on the other hand backends like lnpay and
opennode do not give us a checking_id before the thing is already settled.
2020-10-13 20:39:24 -03:00
fiatjaf
e1501e8ed6
fix bug with lnurl-withdraw dialog being skipped directly to the previous invoice shown.
2020-10-13 15:20:58 -03:00
fiatjaf
1529ebb689
lnurlpay comment.
2020-10-13 15:18:34 -03:00
fiatjaf
bcdc065cc0
mypy fixes.
2020-10-13 14:46:23 -03:00
fiatjaf
cf0bd7ece8
displaying lnurlpay success_actions.
2020-10-13 13:57:26 -03:00
fiatjaf
8d135489ab
fix: invoice parsing JS bug from the lnurl implementation.
2020-10-12 23:21:45 -03:00
fiatjaf
69063190ab
also catch httpx.ConnectError whenever we do catch httpx.RequestError.
2020-10-12 23:21:45 -03:00
fiatjaf
bc2207ba27
actually paying and withdrawing with lnurl.
2020-10-12 23:21:45 -03:00
fiatjaf
3cd15c40fc
lnurl-pay and lnurl-withdraw UI.
2020-10-12 23:21:45 -03:00
fiatjaf
7a5159f293
send/create/scan buttons for clear LNURL support.
2020-10-12 23:21:45 -03:00
fiatjaf
b1f30390b0
retrieve preimage from wallet backends, save it and show on UI dialog.
...
closes https://github.com/lnbits/lnbits/issues/77
2020-10-12 23:19:16 -03:00
fiatjaf
f2ea8a0c74
fix lndrest payment checking: b64/hex mismatch.
...
finally fixes https://github.com/lnbits/lnbits/issues/55
and https://github.com/lnbits/lnbits/issues/110
2020-10-12 23:18:58 -03:00
fiatjaf
b5a07c7ae7
add status() method to wallets to be used in initial check.
2020-10-12 22:30:19 -03:00
fiatjaf
d5d85d16e6
fix: auth headers variable name on opennode.py
2020-10-12 20:59:09 -03:00
fiatjaf
2894944b1e
pending=False on /sse payments.
2020-10-09 22:05:39 -03:00
fiatjaf
31820e041c
/sse returns payment as objects instead of arrays.
2020-10-09 21:08:01 -03:00
fiatjaf
1d00060419
harden sse connections to backends a little.
2020-10-09 20:55:58 -03:00
fiatjaf
7f41d73a84
SSE-based invoices stream for LNbitsWallet.
2020-10-09 17:06:50 -03:00
fiatjaf
f638a1088e
lnurlp: fix querystring handling in success_url.
2020-10-09 16:40:49 -03:00
fiatjaf
ea3418c21d
lnurlp: support success_text and success_url.
2020-10-09 16:17:16 -03:00
fiatjaf
f6bcff01f4
presort vendored paths list.
...
an attempt to fix https://github.com/lnbits/lnbits/issues/99 .
2020-10-08 22:10:21 -03:00
fiatjaf
33fa540744
adjust docs to match 91853
2020-10-08 21:51:40 -03:00
fiatjaf
6f72f1fe6d
fix typo: LND_MACAROON -> LND_REST_MACAROON
2020-10-08 16:24:23 -03:00
fiatjaf
76633fb71f
lndrest: check last 20 payments instead of first 20.
...
fixes https://github.com/lnbits/lnbits/issues/110
2020-10-08 16:08:13 -03:00
fiatjaf
9185342c72
simplify environment variables required.
...
instead of multiple keys/macaroons with different permissions we request only one.
if someone wants to use lnbits with an invoice macaroon they're free to do it and
we will just fail on 'pay' methods, as before.
this also grandfathers the previous environment variables names so everything keeps
working without people having to change their setups.
in the meantime some bugs with lntxbot and c-lightning were fixed and the `requests`
dependency was eliminated because I can't organize myself into meaningful chunks of
changes.
2020-10-08 16:03:21 -03:00
fiatjaf
35f8e3334c
fix typo: LnbitsWallet -> LNbitsWallet.
2020-10-06 23:04:25 -03:00
fiatjaf
0b1f3c22e0
lndhub: fix "token" -> "refresh_token".
2020-10-06 21:53:43 -03:00
fiatjaf
24c8201920
add current git commit to summary.
2020-10-06 17:42:33 -03:00
fiatjaf
9a16dfa960
remove annoying warnings and unnecessary prints.
...
show a summary of some settings on startup when running __main__.py
2020-10-06 12:59:08 -03:00
fiatjaf
c5352c0309
register channel listeners instead of callbacks.
...
makes for a little less black magic and more reasonable use of nurseries
and less unnecessary pseudo-requests.
2020-10-06 01:50:56 -03:00
fiatjaf
95e8573ff8
SSE endpoint for paid invoices.
...
also move very essential stuff from core/tasks.py to tasks.py so things
are more organized.
2020-10-06 00:40:18 -03:00
fiatjaf
4e68a0e7e6
lndrest: two small fixes.
2020-10-05 22:43:49 -03:00
fiatjaf
16541d40c6
show more data in txinfo modal and fee on main table.
...
- also center-align icons in main table.
- and use "x time ago" instead of raw dates by default in main table
(raw date is accessible on a tooltip, on the modal and on the CSV export).
2020-10-05 22:38:06 -03:00
fiatjaf
bb965e4119
lndrest: account for when there are pending checking_ids from other sources.
2020-10-05 22:16:28 -03:00
fiatjaf
5ead82f57c
fix /lnurlwallet again. db.commit() and wait 3 seconds.
...
should finally fix https://github.com/lnbits/lnbits/issues/103
2020-10-05 20:33:01 -03:00
fiatjaf
1eac618a25
lnurlp: allow creation of pay_links without webhook_url.
2020-10-05 20:12:24 -03:00
fiatjaf
39c331a7b9
fix opennode stupid syntax errors.
2020-10-05 08:46:20 -03:00
fiatjaf
6e6ce093f0
guard against lndrest URLs without a leading http...
2020-10-05 08:45:57 -03:00
fiatjaf
1ce9936561
better handling of missing dependencies on lndgrpc.
2020-10-05 08:45:32 -03:00
fiatjaf
e408febf97
hypercorn -k trio
2020-10-04 23:09:11 -03:00
fiatjaf
c3ded859df
fix requirements after rebase.
2020-10-04 14:07:52 -03:00
fiatjaf
f5b8ed8fc6
make lndgrpc work using the purerpc library and a manually-declared method.
2020-10-04 12:06:54 -03:00
fiatjaf
9994e61615
migrate to trio so c-lightning sockets stop hanging.
2020-10-04 12:06:20 -03:00
fiatjaf
e74cf33f90
broken invoice listener on c-lightning and other fixes around wallets.
2020-10-04 12:05:59 -03:00
fiatjaf
b3c69ad49c
invoice listeners support on lnd and other fixes around wallets/
2020-10-04 12:05:01 -03:00
fiatjaf
90c640b659
fix async so now it is a mess that works.
2020-10-04 12:05:01 -03:00
fiatjaf
28e6f40bea
async fixes on _invoice_listener.
2020-10-04 12:05:01 -03:00
fiatjaf
bbe8d05af4
migrate from aiohttp to httpx following master.
2020-10-04 12:04:59 -03:00
fiatjaf
2c92205703
async invoice listeners through webhooks: lnpay and opennode.
2020-10-04 12:04:49 -03:00
fiatjaf
74117ffc57
lnurlp webhooks.
2020-10-04 12:04:49 -03:00
fiatjaf
04222f1f01
basic invoice listeners.
2020-10-04 12:04:47 -03:00
fiatjaf
e2f6c20e3b
update docs so master is runnable.
2020-10-02 14:59:29 -03:00
fiatjaf
08b2ce5c05
update requirements.txt
2020-10-02 08:40:50 -03:00
fiatjaf
88b8826bfd
fix balance calculation vue glitch.
2020-09-29 20:04:02 -03:00
fiatjaf
211ac0391b
overengineered async fix for /lnurlwallet internal hanging.
2020-09-29 18:24:08 -03:00
fiatjaf
e0b8470d40
show unpaid invoices, balance calculated on server-side so isn't affected.
2020-09-29 15:43:11 -03:00
fiatjaf
2dfae9ecc1
adapt Procfile hypercorn call.
2020-09-28 21:11:34 -03:00
fiatjaf
49baa07141
fix proxyfix.
2020-09-28 00:21:53 -03:00
fiatjaf
39cd96594e
pass appropriate parameters to create_payment on lnurlwallet.
2020-09-24 13:09:02 -03:00
fiatjaf
cd8a447ba0
pytest quibbles and dev dependencies.
2020-09-17 22:41:30 -03:00
fiatjaf
ef0bdf8363
mypy quibbles.
2020-09-16 20:24:17 -03:00
fiatjaf
75047c5bc3
fix static extensions js url.
2020-09-16 20:21:42 -03:00
fiatjaf
2b38207100
mimic x_proto, x_host params from old ProxyFix.
2020-09-15 17:19:34 -03:00
fiatjaf
5513b34a66
change 1 to true on env vars because that is supported now.
2020-09-15 17:19:11 -03:00
fiatjaf
6928f431a7
poor man's flask-assets.
2020-09-15 15:54:05 -03:00
fiatjaf
3a0762ff82
proxy fix (x-forwarded-...).
2020-09-14 23:56:25 -03:00
fiatjaf
42c6620a07
quart run settings and hypercorn on docker/Procfile.
2020-09-14 23:28:14 -03:00
fiatjaf
f01028eac7
migrate from flask to quart.
...
also remove all flaskiness from static file serving.
and reference all vendored scripts on the base tempĺate for simplicity.
2020-09-14 16:03:25 -03:00
fiatjaf
f452b9c00d
withdraw: replace location.hostname with location.host.
...
fixes https://github.com/lnbits/lnbits/issues/88
2020-09-14 15:46:25 -03:00
fiatjaf
1e2dd412c7
lnurlp: remove wrong /pay/ segments from docs.
2020-09-14 09:35:58 -03:00
fiatjaf
e6ad42dbe1
update prettier to 2.1.1
2020-09-14 09:14:51 -03:00
fiatjaf
1faf0b152c
remove annoying print().
2020-09-13 21:48:46 -03:00
fiatjaf and fiatjaf
f4fffc19aa
lndhub extension frontend.
2020-09-12 21:55:13 -03:00
fiatjaf and fiatjaf
6210305791
checking pending invoices and payments from lndhub interface.
2020-09-12 21:55:13 -03:00
fiatjaf and fiatjaf
ce038193cf
lndhub extension backend.
2020-09-12 21:55:13 -03:00
fiatjaf
5ac91ee2cf
db commits at the right places when sending payments.
...
fixing vulnerabilities introduced in https://github.com/lnbits/lnbits/pull/90
2020-09-11 21:25:44 -03:00
fiatjaf and fiatjaf
4855e2cd3d
make every request a database transaction.
2020-09-11 14:17:09 -03:00
fiatjaf and fiatjaf
487f082eb2
take extra care on check_internal()
2020-09-11 14:17:09 -03:00
fiatjaf
130beaf38a
fix undeclared ok error.
2020-09-06 23:39:46 -03:00
fiatjaf
ab6229806c
fix: column is called hash, not payment_hash.
2020-09-06 22:15:29 -03:00
fiatjaf and fiatjaf
ffa3c3f6a6
python -m lnbits
2020-09-04 21:33:30 -03:00
fiatjaf and fiatjaf
b8de30423f
remove walrus operator because python3.7
2020-09-04 21:33:30 -03:00
fiatjaf and fiatjaf
c965bca41d
migration tracking.
2020-09-04 21:33:30 -03:00
fiatjaf
8b7028d728
add VoidWallet and make it the default.
2020-09-03 21:43:32 -03:00
fiatjaf
dcd3f80974
fix: invoice.payee is None by default.
2020-09-03 08:53:17 -03:00
fiatjaf
753e9c5b15
make linting workflow reflect what is done locally (Makefile).
2020-09-02 23:16:23 -03:00
fiatjaf
dc3d96c6a8
fix many mypy complaints, specially on bolt11.py
2020-09-02 22:21:56 -03:00
fiatjaf
ce28db76c9
add a dialog with payment details for each payment.
...
for outgoing payments this needs a preimage to be good,
but we don't have it yet because we don't get it from
backends.
2020-09-02 19:19:19 -03:00
fiatjaf
197af922d0
use {"tag": ext} for extension-related payments.
2020-09-02 12:44:54 -03:00
fiatjaf
4447a48724
deleting expired invoices based on their actual expiry date.
...
also fixes a possible bug that could have caused pending outgoing
payments to be deleted and affecting the balance. probably never happened.
2020-09-02 11:10:48 -03:00
fiatjaf
d2650d6e2c
don't try to check payments that start with temp_ or internal_.
2020-09-02 11:10:48 -03:00
fiatjaf
b56877d470
make db.py context manager operate in a transaction.
2020-09-02 11:10:48 -03:00
fiatjaf
bf3c44b3c4
extra fields on apipayments + index payments by payment_hash
2020-09-02 11:10:48 -03:00
fiatjaf
b4a6b45645
only check pending payments on "check_pending".
2020-08-31 22:55:19 -03:00