dfdce54e57
fix(lnd): enable MPP via max_parts=16 and time_pref in SendPaymentV2 ( #3916 )
...
Co-authored-by: dni ⚡ <office@dnilabs.com >
2026-06-08 15:33:48 +03:00
dni ⚡ and GitHub
b98515df14
chore: update pyright to latest and fix new issues ( #3978 )
2026-06-03 11:46:53 +02:00
dni ⚡ and GitHub
691b7ad055
refactor: lndgrpc, update grpcs file, use types and enums, LookupInvoiceV2 ( #3469 )
2025-11-10 15:07:00 +01:00
Vlad Stan and GitHub
87f25ea715
fix: LND GRPC macaroon fields ( #3444 )
2025-10-24 13:49:33 +03:00
5ba06d42d0
feat: use uv instead of poetry for CI, docker and development ( #3325 )
...
Co-authored-by: arcbtc <ben@arc.wales >
2025-08-21 16:17:19 +02:00
dni ⚡
5e9919c5c5
feat: toggle holdinvoice depending on fundingsource Feature ( #3262 )
2025-07-15 11:15:16 +02:00
f91c933919
feat: HodlInvoices (Rebase) ( #2869 )
...
Co-authored-by: pseudozach <git@pseudozach.com >
Co-authored-by: dni ⚡ <office@dnilabs.com >
Co-authored-by: Vlad Stan <stan.v.vlad@gmail.com >
2025-07-15 11:15:14 +02:00
dni ⚡
a16078a6ba
chore: update python packages + formatting + cleanup ( #3221 )
2025-07-08 10:17:27 +02:00
Vlad Stan and dni ⚡
695e9b6471
[feat] Add stripe payments ( #3184 )
2025-07-08 10:17:19 +02:00
dni ⚡ and GitHub
3b350858c7
refactor: untangle lnd's macaroon encryption with AESCipher class ( #3152 )
2025-05-13 12:07:38 +02:00
dni ⚡ and GitHub
6a9089fd98
fix: lnd/lndrest failed canceled/expired invoices ( #3143 )
2025-05-05 11:31:11 +03:00
c4d0540e76
feat: preimages for incoming payments, fundingsource saves preimage on create_invoice ( #3085 )
...
Co-authored-by: Vlad Stan <stan.v.vlad@gmail.com >
2025-04-30 11:03:19 +02:00
dni ⚡ and GitHub
ffecd03c4b
refactor: fundingsource Invoice-, PaymentResponses ( #3089 )
2025-04-25 11:52:54 +02:00
eae5002b69
fix: pay invoice status ( #2481 )
...
* fix: rest `pay_invoice` pending instead of failed
* fix: rpc `pay_invoice` pending instead of failed
* fix: return "failed" value for payment
* fix: handle failed status for LNbits funding source
* chore: `phoenixd` todo
* test: fix condition
* fix: wait for payment status to be updated
* fix: fail payment when explicit status provided
---------
Co-authored-by: dni ⚡ <office@dnilabs.com >
2024-05-10 11:49:50 +02:00
Vlad Stan and GitHub
4ac30116a9
feat: add settings.lnbits_running ( #2450 )
...
* feat: add `settings.lnbits_runing `
2024-04-22 12:33:53 +03:00
Vlad Stan and GitHub
67fdb77339
test: unit tests for lndrpc ( #2442 )
2024-04-19 13:21:21 +02:00
dni ⚡ and GitHub
98ec59df96
feat: adhere to ruff's B rules ( #2423 )
...
* feat: adhere to ruff's `B` rules
last of the ruff checks.
closes #2308
* B904
* B008
* B005
* B025
* cleanup on fake
2024-04-17 13:11:51 +02:00
Vlad Stan and GitHub
352fd23c0b
refactor: dev-friendly payment status name ( #2322 )
...
* refactor: dev-friendly payment status name
* refactor: change `PaymentStatus(True, ...)` to `PaymentSuccessStatus(...)`
2024-03-13 16:17:33 +01:00
Pavol Rusnak
8eabf53642
introduce Wallet.normalize_endpoint to remove code duplication
2024-01-22 10:06:22 -06:00
Pavol Rusnak
824a8fa7c8
refactor __init__ functions of Wallets (funding sources)
...
- better error messages when a conf variable is not provided
- unify approaches among different source files
2024-01-22 10:06:22 -06:00
Vlad Stan and GitHub
031ce14857
refactor: extract AESCipher to crypto.py ( #2202 )
2024-01-15 11:51:15 +02:00
dni ⚡ and GitHub
8f0c1f6a80
[REFACTOR] grpcio and protofbuf for lndgrpc is not optional ( #1886 )
...
also removed dead code def get_ssl_context
black
2023-09-11 14:24:37 +01:00
dni ⚡ and GitHub
4e6f229db2
[CHORE] string formatting default length 88 ( #1887 )
...
* [CHORE] string formatting default length 88
uses blacks default off 88 and enabled autostringformatting
* formatting
* nitpicks jackstar
fix
2023-08-24 10:26:09 +01:00
dni ⚡ and GitHub
f0a66e41fb
[CHORE] flake8 issues E402, E721 and F821 ( #1874 )
...
* F821: undefine name
disabled and logged webhook_listener for opennode and lnpay because they are obviously not working
* E402: module level import not at top of file
* E721 fixes, only popped up for python3.9 not 3.10
2023-08-16 12:22:14 +02:00
dni ⚡ and GitHub
355806608b
[CHORE] E722 bare exception fix ( #1871 )
...
* [CHORE] E722 bare exception fix
remove all bare exceptions from codebase and change it in `.flake8`
2023-08-16 12:17:54 +02:00
Pavol Rusnak and dni ⚡
9c8a79eb9b
fix pyright lnbits/wallets
...
Co-authored-by: dni ⚡ <office@dnilabs.com >
2023-04-04 07:34:50 +02:00
Pavol Rusnak
a49a654137
fix flake8 F401+F403 (module imported but unused + unable to detect undefined names)
2023-01-30 11:46:45 +00:00
Pavol Rusnak
f6bd8684d3
fix flake8 E712 (comparison-to-bool)
2023-01-30 11:46:44 +00:00
Pavol Rusnak
15d7fbeace
run autoflake
...
```
autoflake -i --remove-unused-variables $(find . -name "*.py")
```
2023-01-30 11:46:43 +00:00
f0d58a8365
Wallets: add custom invoice expiry ( #1396 )
...
* expiry for fakewallet
* expiry for lnd
* lnbits backend
* fix: eclair descriptionHash fixed and expiry added
* cln and sparko
* test expiry
* Eclair from AdminUI and bugfix for nonexistent payments
* add to settings and .env and remove lntxbot
* remove duplicate and format
* add invoice expiry
* add min max and step
* UI works now
* test should fail, sanity check, will revert
* revert, ready for merge
Co-authored-by: Tiago Vasconcelos <talvasconcelos@gmail.com >
2023-01-26 11:08:40 +01:00
Pavol Rusnak
3d0c66f0f6
remove unnecessary argument encoding from bytes.decode() and str.encode()
...
the encoding parameter defaults to utf-8, so it's not needed
2023-01-03 22:38:28 +01:00
Pavol Rusnak
a377381942
use bytes.fromhex/hex builtins instead of binascii.hexlify/unhexlify
2022-12-29 16:46:35 +01:00
dni ⚡
ad81bb322a
change settings in wallets
2022-10-05 13:05:11 +02:00
calle and GitHub
b0bedd53df
Fix lndgrpc preimage ( #998 )
2022-09-22 11:15:28 +03:00
calle and GitHub
2ee10e28c5
Backend: Unstuck outgoing payments ( #857 )
...
* first attempts
* lndrest works
* fix details
* optional fee update
* use base64.urlsafe_b64encode
* return paymentstatus
* CLN: return pending for pending invoices
* grpc wip
* lndgrpc works
* cln: return pending for pending invoices really this time
* retry wallet out of exception
* wip eclair
* take all routines into try except
* cliche: return error
* rename payment.check_pending() to payment.check_status()
* rename payment.check_pending() to payment.check_status()
* eclair: works
* eclair: better error check
* opennode: works
* check payment.checking_id istead of payment.ok
* payment.ok check as well
* cln: works?
* cln: works
* lntxbot: works
* lnbits/wallets/lnpay.py
* cln: error handling
* make format
* lndhub full detail update
* spark: wip
* error to False
* wallets: return clean PaymentResponse
* opennode: strict error
* cliche: works
* lnbits: works
* cln: dont throw error
* preimage not error
* fix cln
* do not add duplicate payments
* revert cln
* extra safety for cln
* undo crud changes until tests work
* tasks: better logging and 0.5s sleep for regular status check
* 0.1 s
* check if wallet exists
* lnbits unhashed description
* remove sleep
* revert app.py
* cleanup
* add check
* clean error
* readd app.py
* fix eclaid
2022-08-30 13:28:58 +02:00
calle and GitHub
e5d8c500d2
Wallets/unhashed_description ( #870 )
...
* new argument: unhashed_description
* accept in api
* set unhashed_description for memo case
* bolt11.py: dont be like CLN, accept the hash
* send hash to lnd in b64
* fix cln
* skip descr_hash for cln
* skip
* format
2022-08-13 14:29:04 +02:00
calle and GitHub
4fc0a25d41
Mega-merge 4: Reenable LndWallet gRPC and use TrackPaymentV2 ( #745 )
...
* readd lndgrpc
* debug logging
* Use TrackPaymentV2
* /v2/router/track
* lnd_router_grpc
* flag for blocking check
* error handling
* fix name
* regtest lndgrpc
* new test pipeline
* fix env
* check for description hash
* remove unnecessary asserts for clarity
* assume that description_hash is a hash already
* no lock
* description hashing in backend
* restore bolt11.py
* /api/v1/payments with hex of description
* comment
* refactor wallets
* forgot eclair
* fix lnpay
* bytes directly
* make format
* mypy check
* make format
* remove old code
* WIP status check
* LND GRPC docs
* restore cln to main
* fix regtest
* import
* remove unused import
* format
* do not expect ok
* check ok
* delete comments
2022-08-09 11:49:39 +02:00
calle and GitHub
f1ec7e33f0
Mega-merge 2: Invoice/refactor description hash (WIP) ( #814 )
...
* description hashing in backend
2022-08-01 16:20:25 +02:00
calle and GitHub
f4e7d62ca3
make format everything (#743 )
2022-07-16 14:23:03 +02:00
calle and GitHub
089313f613
Logging with loguru ( #708 )
...
* logging
* requirements
* add loguru dependency
* restore it
* add loguru
* set log level in .env file
* remove service fee print
* set log level
* more logging
* more logging
* more logging
* pyament.checking_id
* fix
2022-07-07 14:30:16 +02:00
calle and GitHub
0f97f8f18b
Fee reserve for lightning backends ( #557 )
...
* preparing fees
* fee_limit_msat
* await resp result
* clightning
* fix tests
* fix test
* add fee to test
* mypy
* invoice_status
* checking id fix
* fee reserve error message
* only for external payments
2022-03-16 07:20:15 +01:00
0764f4fdf1
Support for encrypted macaroons ( #521 )
...
* encrypted macaroons
* fix GRPC env entry
* example config entry
* add pycryptodomex to requirements
* documentation
* Added pycryptodomex to pip file
Co-authored-by: Ben Arc <ben@arc.wales >
2022-02-14 17:54:05 +01:00
Stefan Stammberger
8ea2d20389
fix: wallets not loading when protobuf is missing
2021-11-09 18:15:07 +01:00
Stefan Stammberger
768aa05b11
fix: switch from purerpc to grpcio for LND Wallet
...
purerpc is unmaintained and had some old dependencies.
2021-11-07 17:24:22 +01:00
benarc
1d3bb016a2
I want them to turn black
2021-10-17 18:33:29 +01:00
Tiago vasconcelos and fiatjaf
a32e43b2bb
fix having LND_GRPC_MACAROON as HEXSTRING issue #268
2021-08-06 12:37:30 -03:00
fiatjaf
d4d069fc77
make all methods from all wallets async.
2021-03-24 01:01:09 -03:00
fiatjaf
42bd5ea989
remove exception to black line-length and reformat.
2021-03-24 00:40:32 -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
b5a07c7ae7
add status() method to wallets to be used in initial check.
2020-10-12 22:30:19 -03:00