Commit Graph

2706 Commits

Author SHA1 Message Date
dni ⚡
31a51f3cbc
add debug logging into tests (#895)
Co-authored-by: dni <dni.khr@gmail.com>
2022-08-17 15:57:56 +02:00
dni ⚡
d649e6a5c0
fix migrations, add documentation, hopefully fix workflow (#899)
* fix migrations, add documentation, hopefully fix workflow

* renaming to test-migration and add migration

Co-authored-by: dni <dni.khr@gmail.com>
2022-08-17 15:42:01 +02:00
calle
24de8f6611
isort api.py (#898) 2022-08-17 14:27:52 +02:00
callebtc
65f27afd76 upadte systemd docs to poetry 2022-08-17 14:25:19 +02:00
calle
790f0efda7
Chore/unhashed description expressive error (#894)
* dont assume field

* expressive error for desciprion_hash and unhashed_description in format that isnt hex
2022-08-17 00:59:11 +02:00
Tiago Vasconcelos
7bba742faf
delete tips first... (#888) 2022-08-16 17:01:53 +02:00
dni ⚡
3dc00f67db
add pending column to CSV export on wallet page, issue #887 (#889)
* add pending, isPaid columns to CSV export on wallet page, issue #887

* prettier formatting

* remove isPaid from csv export

* added comment

Co-authored-by: dni <dni.khr@gmail.com>
2022-08-16 17:01:32 +02:00
dni ⚡
ee4049ec1f
fix javascript issue, Fixes: #890 (#891)
Co-authored-by: dni <dni.khr@gmail.com>
2022-08-16 17:01:20 +02:00
dni ⚡
88ec440ea1
another testcase the fails similar to #847 (#892)
* another testcase the fails similar to #847

* proper fix

* revert to statuscode 401 and code improvements @calle

Co-authored-by: dni <dni.khr@gmail.com>
2022-08-16 17:01:05 +02:00
Joe
8956bdc954
Update installation.md (#884)
* Update installation.md

I needed to run this additional command to install python3.9-specific distutils. Without this, installation of several poetry dependencies (idna, pyparsing, sniffio) failed with message: 
ModuleNotFoundError: No module named 'distutils.cmd'

* Update installation.md
2022-08-15 16:22:20 +02:00
Lee Salminen
6aef9bfd45
Add NFC support to TPOS Extension (#856)
* WIP

* styling

* WIP

* WIP

* WIP

* Clean up for PR

* isort

* hold abortContoller for a while longer
2022-08-15 15:37:10 +02:00
calle
4ac73f1a79
Lnurlp/url_validation_fix (#883)
* dont assume field

* fix https check
2022-08-15 00:20:57 +02:00
calle
befe96257d
Fix/header_check_fix_2 (#880)
* dont assume field

* check better
2022-08-14 23:17:53 +02:00
calle
9bc99f796b
Fix/header_lookup_none (#879)
* dont assume field

* fix header lookup
2022-08-14 22:59:02 +02:00
calle
0f760bf39e
Lnurlp: use unhashed_description instead of description_hash (#878)
* dont assume field

* pass unhashed_description instead of description_hash for LNURL stuff

* more
2022-08-14 21:59:36 +02:00
Lee Salminen
3df66334db
clean up mobile layout per @callebtc (#874) 2022-08-14 19:41:26 +02:00
calle
c85be8dd22
dont assume field (#875) 2022-08-14 19:40:46 +02:00
Lee Salminen
fc427e7ccc
resolves issue #872 & #815, error deleting lnurlp/lnurlw links (#877)
* resolves issue #872, error deleting lnurlp link

* apply the same fix for lnurlw in issue #815
2022-08-14 19:38:26 +02:00
Lee Salminen
c32ff1de59
New Extension: Invoicing (#733)
* initial commit

* add docs

* black & prettier

* mobile styles

* add print view

* prettier

* make format

* initial migrations un-messed

* make migrations work for sqlite

* add invoices table

* clean migrations

* add migration to conv

* fix card size

* hopefully fix test migration

* add missing status

* timestamp

* init testing

* remove draft invoice by default on create

* what should i test

* make format

* raise if not invoice

* new test and renaming

* fix issue reported by @talvasconcelos which prevented users from setting status on creation

* readme

* run black

* trying to make tests work

* make it work again

* send paid amount

* partial pay flow

* good coding

* can't get these test to work

* clean up and commenting

* make format

* validation for 2 decimals

Co-authored-by: ben <ben@arc.wales>
Co-authored-by: Tiago vasconcelos <talvasconcelos@gmail.com>
2022-08-13 21:37:44 +02:00
Tiago Vasconcelos
197ff7d054
Core: reserve fee as an .env variable (#631)
* reserve fee as an .env variable

* fixed bad import

* Update .env.example

Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>

* Update lnbits/core/services.py

Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>

* Update lnbits/core/services.py

Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>

* Update lnbits/settings.py

Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>

* variable consistent names

* fix services.py variable names

* percent default fix

* Update lnbits/settings.py

int to float

* Update lnbits/settings.py

int to float

* Update .env.example

int to float

* make format

* fixed failing bleskomat test, expecting 2000 msats fee

* Update tests/extensions/bleskomat/test_lnurl_api.py

revert to 2 sat

* Update .env.example

* Update lnbits/settings.py

Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-13 20:19:08 +02:00
dni ⚡
d989441587
added test for issue #847 and fixed it! (#848)
* added test for empty post data, for issue #847

* black

* fixed the failing testcase

* Update lnbits/decorators.py

Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>

Co-authored-by: dni <dni.khr@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-13 14:47:29 +02:00
dni ⚡
034813a1ab
stuck in retrying backend loop, fix issue #652 (#862)
* maybe solution to issue #652

* formatting, when precommit merge?

* Update lnbits/app.py

* Update lnbits/app.py

Co-authored-by: dni <dni.khr@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-13 14:46:47 +02:00
calle
28661903b6
return http error UNAUTHORIZED instead of BAD_REQUEST if key is missing (#869)
* return http error UNAUTHORIZED instead of BAD_REQUEST if key is missing

* fix regtest (#867)

Co-authored-by: dni <dni.khr@gmail.com>

* return http error UNAUTHORIZED instead of BAD_REQUEST if key is missing

Co-authored-by: dni  <office@dnilabs.com>
Co-authored-by: dni <dni.khr@gmail.com>
2022-08-13 14:41:44 +02:00
dni ⚡
32a09f7359
add apache2 reverse proxy documentation (#868)
* add apache2 reverse proxy documentation

* add certbot

Co-authored-by: dni <dni.khr@gmail.com>
2022-08-13 14:41:23 +02:00
calle
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
dni ⚡
3457ff101e
fix regtest (#867)
Co-authored-by: dni <dni.khr@gmail.com>
2022-08-12 21:05:13 +02:00
Arc
d1e1cbed41
Merge pull request #863 from motorina0/onchain_review_fixes
onchain extension - review & fix
2022-08-11 13:24:17 +01:00
Vlad Stan
e20cfd3e6d fix: handle serial port disconnect 2022-08-11 15:06:32 +03:00
Vlad Stan
6b57c8b2a7 chore: code format 2022-08-11 14:31:14 +03:00
Vlad Stan
e884e3b003 fix: look&feel on small screens 2022-08-11 14:22:14 +03:00
Vlad Stan
3d1ea76676 feat: add Copy button for addresses 2022-08-11 13:20:29 +03:00
Vlad Stan
a6fba27554 fix: address link to mempool.space 2022-08-11 13:02:02 +03:00
calle
8dfb4329d1
ssl cert creation method using openssl (#860) 2022-08-10 10:32:43 +02:00
calle
05edd908f0
fix lnurlw balance_check (#854) 2022-08-09 12:48:10 +02:00
calle
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
Vlad Stan
1f139884fe
WatchOnly Extension - add Serial Port communication (#839)
* feat: add `Share PSBT` button with options

* feat: add basic communication via the serial port

* chore: code format

* feat: send data to and from serial port

* fix: port disconnect

* feat: handle psbt extract

* feat: show signed transaction details

* fix: handle Connect/Disconnect failure state

* feat:small UI improvements

* feat: broadcast transaction (partial solution)

* feat: integrate psbt response from HWW

* feat: login and send commands to HWW

* feat: ui improvements

* feat: ui/ux improvements

* feat: more small UI impreovemsnts

* feat: simplify UI

* feat: add `help` command

* feat: add wipe command

* feet: add `seed` command

* feat: add `restore` command

* feat: always show PSBT input text (for outside PSBTs)

* feat: show spinner while signing tx

* feat: hide panels after transaction is broadcast

* feat: basic use of custom components

* refactor: move components one folder up

* refactor: extract wallet-config

* refactor: extract `wallet-list` component

* refactor: clean-up

* chore: code format html component files

* refactor: extract address-list component

* refactor: extract `history` component

* refactor: extract `utxo-list` component

* feat: UI/UX improvements

* feat: partial payment redesign

* refactor: rename `fee` to `fee-rate`

* refactor: rename component

* refactor: extract `send-to` component

* refactor: payment: first migration

* fix: init `sendToList`

* fix: change address

* fix: change address and `Select All` coins

* feat: show custom fees & two way binding for addresses

* fix: scanAddressesWithAmount

* fix: max amount

* fix: coin selection mode

* chore: code clean-up

* feat: shuffle the UI

* fix: change amount

* feat: update tx size in real time

* fix: coin selection

* fix: show erro messages

* fix: psbt generation

* refactor: move serial port logic

* refactor: payment component

* refactor: code clean-up; use `slot` for `serial-signer`

* feat: toggle serial port

* feat: add Disconnect command

* feat: prompt for `Connect` and `Login` before signing

* refactor: send psbt to device

* feat: extract signed transaction

* refactor: code clean-up

* feat: show auth green icon

* chore: code clean-up

* feat: show console

* feat: allow `Connect` from dropdown menu

* fix: stop if serial port cannot be open

* feat: confirm outputs and fee

* feat: add cancel command

* fix:  add `sats-denominated` for confirmations

* feat: wait for HWW to authenticate, then open dialog

* feat: share PSBT as text

* refactor: extract `refreshAddresses`

* feat: small UI improvements

* feat: add default `Mainnet` network

* feat: fix mempool endpint

* feat: propagate config update only when explicitly updated

* feat: add network for wallet accounts

* fix: stop scanning when network changed

* chore: code clean-up

* chore: code clean-up

* feat: show hardware device Xpub option

* fix: handle failed to parse psbt

* feat: add accounts using the HWW

* fix: testnet is in the bip32 derivation path

* feat: add spinner while wallet account is created

* fix: check network and masterpub for duplicate accounts

* feat: integrate transaction broadcast

* feat: add password confirmation for `Wipe` and `Restore`

* fix: fingerprint is not unique per account (it is the fingerprint of the master)

* chore: code clean-up, remove `masterpub_fingerprint`

* fix: account name diplay

* chore: code format

* fix: memppol links

* fix: shortcut buttons

* fix: note update

* chore: code format

* chore: clean-up rebase left overs

* chore: clean-up

* feat: less technical labels for addresses

* feat: add serial port config params

* fix: address type selection

* chore: drop `mempool` table

* fix: change & fee value

* fix: handle no input signed scenario

* fix: sat/btc unit

* fix: small UI stuff

* doc: update the readme

* Update README.md
2022-08-09 11:00:09 +02:00
Vlad Stan
63849a0894
Generalize conv.py (#849)
* feat: generalize the script for  `sqlite` to `postgres`

* fix: revert db connection params

* doc: remove manual conversion docs

* chore: fix formatting

* fix: add back instructions for `mock_data.zip`

* fix: exclude SQLite tables from migration

* fix: rename `your_extension.db` to `your_extension.sqlite3`
2022-08-09 10:45:50 +02:00
Tiago Vasconcelos
af8af54376
Fix/hotfix custom design (#850)
* allow to toggle custom desing on and off

* make custom design off by default, toggle custom design
2022-08-09 10:05:37 +02:00
calle
b83fb1d5d8
VoidWallet: return PaymentStatus(None) (#845) 2022-08-04 18:40:46 +02:00
calle
7fc1361475
cln invoice only int (#844) 2022-08-04 17:40:04 +02:00
calle
9b27c2da01
argparser respect boolean arguments (#842) 2022-08-04 16:37:48 +02:00
dni ⚡
48a57513f4
create new Dockerfile using poetry (#806)
* create new Dockerfile using poetry

* dont use unsure docker hub image

* add example env variable to docker command

* remove copy of lnbits, and order of commands

* add build.py for static files

* add compiled resources to docker ignore, so we don't accidently add it to image

* use generic python

* CMD with arguments

Co-authored-by: dni <dni.khr@gmail.com>
2022-08-04 08:05:51 +02:00
2624789
fa2a0ab1bd
Fix Get a withdraw link (#617) 2022-08-03 15:06:25 +02:00
calle
8535d70d36
Poetry dev (#837)
* black and isort for tests

* black and isort for build

* use poetry in Makefile, update pyproject.toml dependencies and add configs for black, pytest, mypy, isort there

* switching github workflow to poetry

* set mininum version to python 3.7

* fix tests

* add types-protobuf to dev packages

* fix cln regtest

* update docs

* try fix 1

* mypy fix2

* fix isort formatting workflow

* add prettier to dev docs

* multiple valid python version for pyproject

* update poetry.lock

* remove development installation, not needed anymore

* fix migration workflows

* format into one test

* fix yaml

* fix pipeline

* fix pipeline

* fix again

* fix

* rename checks

* remove venv tests

* venv test once

Co-authored-by: dni <dni.khr@gmail.com>
2022-08-03 14:10:32 +02:00
calle
2edaa0ee03
Poetry: uvicorn with .env and command line arguments (#836)
* fixed poetry logs

* make isort happy

* Poetry: uvicorn .env and command line arguments

* restore commands.py

* format

* own it

Co-authored-by: dni <dni.khr@gmail.com>
2022-08-03 13:16:50 +02:00
calle
91fefdb83d
migration for extensions (#835) 2022-08-03 11:27:08 +02:00
fusion44
989c6b51ba
Updates to documentation (#574)
* fix: rpc library install when using LND

fixes #563

* chore: improve some out of date docs

Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-03 10:03:01 +02:00
Arc
d38ff896f6
update dev docs for internal testing before pushing (#801) 2022-08-03 09:55:20 +02:00
MatthewCroughan
28af0a2100
nix: add defaultText to services.lnbits.package (#803)
Without this, evaluating the module doesn't provide a default value visible on search.nixos.org
2022-08-03 09:52:04 +02:00
Tiago Vasconcelos
716a30a0fc
make instant wallet available in custom vouchers (#830) 2022-08-03 09:51:16 +02:00