Commit Graph

674 Commits

Author SHA1 Message Date
Sebastian
892b3b500a
fix: transfor from backup proporsal status to purchase status and fix denom query 2022-10-21 12:24:23 -03:00
Sebastian
f4b92578b0
fix: support for empty denom_selection when recoverying from backup 2022-10-21 12:14:06 -03:00
Sebastian
5ba7956f49
unlockBackup was not unlocking: not updating when backup state is ready also nextBackupTimestap = now tries to backup in a loop 2022-10-21 11:08:10 -03:00
Sebastian
5da924a760
storePayReplaySuccess should also considre PayingReplay 2022-10-21 11:06:31 -03:00
Sebastian
4dac65e557
mapping missing purchase state with backup state 2022-10-21 11:04:36 -03:00
Sebastian
e63f202e36
better workaround with duplication 2022-10-21 10:11:41 -03:00
Sebastian
683c89ab71
workaround: Failed transaction was started here 2022-10-21 09:26:53 -03:00
c2e7510cec
embedded wallet: improve 'init' request
Allow specifying crypto worker type, pass through version info from
'initWallet'.
2022-10-19 15:44:28 +02:00
ec7a3c8133
wallet-core: bump DB version 2022-10-19 15:43:00 +02:00
f697b20a91
wallet-core: return versions in init response 2022-10-19 15:36:57 +02:00
81d6f2c796
wallet-core: remove bogus log 2022-10-18 14:01:55 +02:00
Sebastian
57892db20a
extends parseId to include tmb 2022-10-17 13:50:17 -03:00
Sebastian
995b6b4e96
sync parseTx with the new makeTx 2022-10-17 13:36:39 -03:00
Sebastian
d1f43ca5f2
added v6 migration skip and removed rowId field when rowId is undefined (otherwise autoincrement value won't work) 2022-10-17 11:44:23 -03:00
e5e469575b
wallet-core: API types refactoring 2022-10-17 01:03:36 +02:00
e4f2587cab
webextension: introduce typesafe wallet-core API client 2022-10-16 23:11:34 +02:00
ea1aff81df
wallet-cli: tweaks to withdrawal CLI 2022-10-16 22:58:53 +02:00
b52b074a8d
wallet-core: show instructed amount as raw amount for withdrawal 2022-10-16 22:18:24 +02:00
8d4a7d6103
wallet-core: CLI improvements, ToS fetching fixes 2022-10-16 20:15:55 +02:00
fbb7dd9e7e
wallet-core, wallet-cli: add status to exchange list, add detail query to CLI 2022-10-15 21:26:36 +02:00
d98d49aa58
wallet-core: address another DB FIXME 2022-10-15 16:25:44 +02:00
a41d1ee53e
wallet-core: put signing keys in separate object store 2022-10-15 16:03:48 +02:00
bd88dcebbc
wallet-core: simplify exchanges list response 2022-10-15 12:59:26 +02:00
e075134ffc
wallet-core: simplify coin record
we only track the allocation now, not the remaining amount
2022-10-15 11:53:16 +02:00
4d70391f3d
wallet-core: address another DB FIXME 2022-10-14 23:01:41 +02:00
3a2b96f3c2
wallet-core: address DB FIXME 2022-10-14 22:56:29 +02:00
b36807aa0f
-fix ID parsing 2022-10-14 22:49:32 +02:00
0c8e56c324
wallet-core: properly separate different types of IDs 2022-10-14 22:47:11 +02:00
eec6695be0
wallet-core: DB tweaks, consistent file naming convention 2022-10-14 22:38:40 +02:00
a57fcb144d
wallet-core: pull out ToS into separate object store 2022-10-14 22:10:10 +02:00
f1cba79c65
wallet-core: DB tweaks 2022-10-14 22:10:10 +02:00
398e79d0d6
-remove obsolete README section 2022-10-14 22:10:10 +02:00
6acddd6d70
wallet-core: get rid of duplicated withdrawal info API 2022-10-14 18:48:03 +02:00
ca8da4ed38
wallet-core: only allow enabling dev mode via separate request 2022-10-13 15:24:47 +02:00
83d4a1addc
use node16 for wallet-core, delete unused taler-config-lib package 2022-10-13 15:14:49 +02:00
ded00b680a
wallet-core: implement enabling/disabling dev mode 2022-10-12 22:27:50 +02:00
3da1e82a24
wallet-core: skeleton for dev-experiments 2022-10-12 21:20:22 +02:00
8bfa77200e
wallet-core: handle missing purchase status cases 2022-10-12 21:19:14 +02:00
Sebastian
610df1c9cf
create a fee description timeline for global fee and wire fees 2022-10-12 15:58:10 -03:00
Sebastian
cb44202440
adding global fee info from exchange 2022-10-12 14:37:26 -03:00
Sebastian
f184ecb06b
pretty 2022-10-10 14:54:14 -03:00
Christian Grothoff
eb71c788ac
-fix typos 2022-10-10 17:50:00 +02:00
19f3e6321d
wallet-core: put contract terms into separate object store 2022-10-09 02:23:06 +02:00
8ac5080607
wallet-core: more DB and refund fixes 2022-10-08 23:45:49 +02:00
3897bd4f01
wallet-core: spec/clarify explicit refresh transaction 2022-10-08 23:21:34 +02:00
526f4eba95
wallet-core: Clean up merchant payments DB schema 2022-10-08 23:07:07 +02:00
eace0e0e7a
-organize imports 2022-10-07 14:45:55 +02:00
f479ca0139
wallet-core: fix/deduplicate funding payto URI generation for withdrawals 2022-10-07 14:45:25 +02:00
a93a0cae13
wallet-core: fix busy wait when long-polling for manual withdrawal 2022-10-07 14:23:23 +02:00
1256c8704b
-logging 2022-10-07 12:47:31 +02:00
957f9a5efb
wallet-core: fix default auditor/exchange loading logic 2022-10-05 18:31:56 +02:00
99ace8b7d2
integration tests: make test-wallet-cryptoworker pass 2022-10-05 16:01:59 +02:00
70d37e4ed3
integration tests: test crypto worker
We test instantiations of both crypto workers that are available for
node.
2022-10-05 15:45:28 +02:00
efc4ac8dca
wallet-core: add missing worker-common.ts file 2022-10-05 15:18:14 +02:00
dd14e67c70
wallet-core: improve crypto worker code duplication
Also add new testCrypto call for later testing
2022-10-05 12:52:49 +02:00
4d232fd565
wallet-core: canonicalize base URL from bank on withdrawal 2022-10-05 11:11:51 +02:00
66ae0dd220
wallet-core: more info in error message 2022-10-05 10:22:32 +02:00
21fd8074cd
wallet-core: more info in types 2022-10-04 18:45:01 +02:00
3cecb7e4b4
wallet-core: better API docs 2022-10-04 15:30:18 +02:00
37d27ba437
restructure api types 2022-10-04 13:12:23 +02:00
3bf4ce7f13
wallet-core: return correct status from processReserveBankStatus 2022-09-30 13:22:00 +02:00
0a3f9979b2
firefox hotfix 2022-09-30 13:11:17 +02:00
0cf147ba98
wallet-core: don't run into busy loop if only long-polling tasks are left 2022-09-28 19:07:37 +02:00
37243d4d8c
Revert "fix: long polling doesnt wait"
This reverts commit 4382e090ab.
2022-09-28 19:04:42 +02:00
Sebastian
4382e090ab
fix: long polling doesnt wait 2022-09-28 13:38:36 -03:00
Sebastian
7ce1cea1c7
fix: missing crypto error handling improvement 2022-09-28 13:15:31 -03:00
25eb7624b3
wallet-core: improve crypto worker error handling 2022-09-26 14:40:11 +02:00
2337ddab61
wallet-core: fix withdrawal state machine 2022-09-23 21:47:38 +02:00
8d19b80153
wallet-core: backwards compatibility for bankAccounts store, naming conventions 2022-09-23 21:00:51 +02:00
72336b149b
wallet-core: do not block when accepting a manual withdrawal 2022-09-23 20:38:26 +02:00
Sebastian
fbf0502672
add bank account record 2022-09-23 15:18:49 -03:00
2489001d83
bump versions 2022-09-23 10:32:04 +02:00
4649469b58
wallet-core: DB improvements 2022-09-21 22:50:42 +02:00
a398959670
wallet-core: use more numeric fields 2022-09-21 22:50:42 +02:00
7d6bcd42ea
wallet-core: use numeric status field to allow range queries 2022-09-21 22:50:42 +02:00
Sebastian
2caef6dcf2
moving deposit group fee into taler util 2022-09-21 15:45:41 -03:00
26cf19ab6c
wallet-cli: add --expect-success flag, exit with error on max retries 2022-09-21 19:53:38 +02:00
28b4489bea
wallet-core: make basic backup work again 2022-09-21 12:40:11 +02:00
Sebastian
7adaeff0a5
pretty 2022-09-20 20:26:47 -03:00
Sebastian
415874fdfb
check age mask before 2022-09-20 20:26:47 -03:00
16a5bb4083
wallet-core: make basic backup work again 2022-09-20 23:17:42 +02:00
f63765b9f7
wallet-core: fix tipping with age restricted denoms 2022-09-19 17:08:04 +02:00
ffe6a95214
wallet-core: handle suspended coins properly in refresh 2022-09-19 14:42:04 +02:00
d34f8e48da
wallet-core: make coin availability accounting idempotent 2022-09-19 12:48:11 +02:00
d759c7e78a
-comment 2022-09-19 12:21:15 +02:00
f1f332e0a6
-also check for revoked 2022-09-19 12:21:00 +02:00
e4679fba51
wallet-core: only pay with coins of offered denominations 2022-09-19 12:19:58 +02:00
fd752f3171
wallet-core: hide transient pay errors 2022-09-19 12:13:31 +02:00
cffc4347a0
wallet-core: add wire method check in new coin selection 2022-09-19 11:28:47 +02:00
Sebastian
ba5f8ad386
p2p was not returning the value 2022-09-17 18:40:03 -03:00
Sebastian
860f10e6f0
pretty 2022-09-16 14:27:24 -03:00
4b72bbd017
wallet-core: fix mixed age restrictions 2022-09-16 17:51:07 +02:00
117baf0e5b
-fix compiler error 2022-09-16 17:41:13 +02:00
183c836614
-wallet-core: merge DenominationInfo and DenomInfo 2022-09-16 17:35:06 +02:00
16e7814445
-move declaration 2022-09-16 17:21:54 +02:00
d6c545a0ba
-prettier, fix type error 2022-09-16 17:04:32 +02:00
374d3498d8
-cleanup 2022-09-16 16:34:00 +02:00
b91caf977f
wallet-core: support age restrictions in new coin selection 2022-09-16 16:32:21 +02:00
2747bc260b
wallet-core: support forced coins in new coin selection algo 2022-09-16 16:31:16 +02:00
b7f7b95602
wallet-core: towards faster coin selection 2022-09-16 16:31:16 +02:00
Sebastian
5d08379139
working on #7357
getTransactionById is introduced:
 with that we move all transaction information building into a function
transactionId was added in every response that creates a tx
2022-09-16 11:13:09 -03:00
a66b636dee
wallet-core: restructure denomination record for easier querying 2022-09-14 21:27:03 +02:00
c021876b41
wallet-core: cache fresh coin count in DB 2022-09-14 20:40:38 +02:00
Sebastian
9d044058e2
fixing properly adding query params 2022-09-14 08:37:33 -03:00
Sebastian
f026a8d326
import a complete database from cli 2022-09-14 08:19:59 -03:00
962bfde214
wallet-core: fix withdrawTestBalance command 2022-09-13 17:41:47 +02:00
676ae5102b
fix test and logging 2022-09-13 16:10:42 +02:00
48540f6264
wallet-core: introduce easier syntax for transactions 2022-09-13 16:10:42 +02:00
13e7a67477
wallet-core: uniform retry handling 2022-09-13 16:10:41 +02:00
b645d793df
wallet-core: fix creation of refresh session after peer-{push,pull} 2022-09-12 20:52:01 +02:00
Sebastian
27201416c7
ref #7323 2022-09-12 10:58:09 -03:00
fc413bb5ec
wallet-core: make bank access API URL optional in runIntegrationTest 2022-09-12 14:09:28 +02:00
9b2d6d766f
include age commitment proof in refreshed coins 2022-09-08 14:02:09 +02:00
319d51dc42
bump DB major version 2022-09-06 23:19:53 +02:00
Sebastian
1e00724a0d
listExchangesDetailed to getExchangeDetailedInfo & ageRestriction taken from the denoms 2022-09-06 17:17:50 -03:00
3f5a76751b
wallet-core: make listExchanges return less data
Since the webextension UI depends on the full response, we have a
temporary listExchangesDetailled request.
See https://bugs.taler.net/n/7323 for details.
2022-09-05 21:09:28 +02:00
Sebastian
e0e33a88db
adding informantion about the service worker version on the setting page 2022-09-05 13:04:31 -03:00
43b893b8c4
consider supported wire types when selecting coins
Also add an integration test to check for the correct wallet behavior.
2022-09-05 15:38:47 +02:00
27fb2d2970
wallet-core: fix format of purse deposits 2022-09-05 13:26:09 +02:00
300242637f
wallet-core: include age restriction in p2p signature, mark coins as spent 2022-09-05 12:55:46 +02:00
9fe0e74256
wallet-core: fix withdrawal of age-restricted denoms without age restriction 2022-09-01 22:43:57 +02:00
ec43b6a5bf
wallet-core: fix issue with crock encoding of age restrictions 2022-09-01 22:26:22 +02:00
Sebastian
94eeab8ad0
more information about p2p:
- added the contract terms on WgInfoBankPeerPush and WgInfoBankPeerPull, so we can show summary and expiration in the ui
 - added info: PeerInfoShort on Transaction* type
 - definition of completed p2p tx:
   - push debit: Amounts.cmp(sentAmount, pickedUpAmount) === 0. is this transfer already picked up? (not working)
   - pull debit: pi.paid, is this invoice already paid?
   - pull credit: wsr.timestampFinish, has someone already paid my invoice?
   - push credit: wsr.timestampFinish, have I already picked up this?
 - changed the txId of peer pull debit to have the incomingId instead of pursePub (allow deletion)
2022-09-01 08:42:45 -03:00
Sebastian
d84424202d
p2p tx rendering 2022-08-31 00:20:35 -03:00
Sebastian
6610a0b9d7
add senderWire to the withdrawal group again, group payto to avoid duplication 2022-08-29 13:23:22 -03:00
Sebastian
eef2d47020
exchange selection: timeline done 2022-08-26 01:09:47 -03:00
30e8fd83c2
wallet-core: fix revocation, re-introduce reserves object store 2022-08-26 01:18:01 +02:00
70d0199572
integration tests: various fixes 2022-08-25 23:35:29 +02:00
499e003ff8
specify bank access API separately in tests 2022-08-25 18:34:25 +02:00
22bc73ac4b
wallet-core: fix db index on withdraw URI 2022-08-25 17:49:24 +02:00
f3231ccdf9
wallet-core: put taler:// URIs in transactions list 2022-08-24 22:42:30 +02:00
a11ac57535
wallet-core: p2p support for transactions list 2022-08-24 22:17:19 +02:00
bf516a77e8
fix idb bug, p2p integration test 2022-08-24 21:07:13 +02:00
42c2b7508f
wallet-core: fix withdrawal idempotency 2022-08-24 19:44:24 +02:00
d32d2895ce
-get p2p pull integration test to run through 2022-08-24 11:11:02 +02:00
bc434ebb83
use fakebank for integration tests 2022-08-23 22:30:05 +02:00
f3ff5a7225
peer-to-peer pull payments MVP
p2p pull wip
2022-08-23 20:35:11 +02:00
Sebastian
d1980c39fc
moved wireInfo and denomInfo into taler-util so it can be used from the ui 2022-08-18 16:02:16 -03:00
Sebastian
f5441a682d
fix: for bitcoin withdrawal the exchange payto:// is not enough and the withdrawal payto should always have the reserve pub 2022-08-18 11:30:16 -03:00
Sebastian
17e627c2f0
default exchange 2022-08-17 16:12:44 -03:00
ac8f116780
implement peer to peer push payments 2022-08-16 17:55:12 +02:00
Sebastian
4409d8384b
add delivery info in the parse contract terms and a function to get info from a proposalId 2022-08-08 13:53:04 -03:00
Sebastian
84634a4ab4
removed the type check when accessing h_age_com 2022-07-21 10:32:30 -03:00
aff3100d89
proper handling of coin with age restriction
When a coin with age restriction is used for payment, the contract might
or might not require an attestation of minimum age.

When it does, we sent the signed minimum age along with the whole age
commitment (array of pubkeys).

Added:  When the contract doesn't require a minimum age, we still sent
the hash of the age commitment, as this is needed for the deposit of the
coin.
2022-07-21 11:35:31 +02:00
f11483b511
wallet-core: implement accepting p2p push payments 2022-07-12 17:41:14 +02:00
b214934b75
wallet-core: P2P push payments (still incomplete) 2022-07-08 11:08:30 +02:00
Sebastian
ccd289904d
- typo fix 2022-06-26 15:52:32 -03:00
716da3246b
wallet-core: correctly report 'confirmed' status of bank integrated withdrawal 2022-06-10 13:38:59 +02:00
f57dc7bf7a
wallet-core: implement and test forced coin/denom selection 2022-06-10 13:03:47 +02:00
Boss Marco
b00635c140
increase timeouts for retries 2022-06-08 10:58:54 +02:00
Boss Marco
f8c814cf95
reserve long polling longer, add withdrawOnly to bench1 2022-06-07 13:42:34 +02:00
Sebastian
adb0277f4e
-removing bad console log 2022-06-01 11:35:50 -03:00
d780e9b187
wallet-core: only attest age if required/possible 2022-06-01 11:54:45 +02:00
f9192d986f
wallet-core: refunds transactions should be sorted after payments 2022-06-01 10:47:46 +02:00
59a2119dcb
integration tests: one variable for pybank/libeufin switch 2022-06-01 10:14:23 +02:00
59bc54422f
wallet-core: only schedule auto-refresh check if exchange update has no last error 2022-05-31 15:44:22 +02:00
2e6f3b3569
-error reporting, code formatting 2022-05-31 15:08:31 +02:00
Sebastian
029340469a
show refund info in purchase
notify refund pending with accept button on the purchase details
better payto box
2022-05-29 01:23:21 -03:00
9dfef2100d
wallet-core: long-poll longer for reserve status 2022-05-19 13:30:04 +02:00
609a9cb1d5
wallet-core: use less aggressive retries 2022-05-19 11:19:43 +02:00
25af1987b2
-formatting 2022-05-19 11:01:07 +02:00
b2931fbac6
wallet-core: clamp claim retry properly 2022-05-19 10:36:58 +02:00
Sebastian
611a57ca0a
fix: update retry info before return also for purchase 2022-05-18 16:39:36 -03:00
Sebastian
5595e942b4
fix: update retry info before return 2022-05-18 15:57:10 -03:00
Sebastian
145714b335
fix: to skip the operation maxRetries need to be calculated first 2022-05-18 14:44:55 -03:00
Sebastian
c67d0bff1d
all retryInfo function in the same namespace, adding missing retryInfo increment 2022-05-18 14:41:51 -03:00
Sebastian
115e5bf353
fix: do not cancel all operation processing when one of them reach maxRetries, just skip 2022-05-18 14:38:27 -03:00
Sebastian
e4ea201943
feat: awaiting refund 2022-05-14 18:09:49 -03:00
Sebastian
37690dd22c
handling service worker waiting phase 2022-05-06 17:29:52 -03:00
Sebastian
4491118494
add restricted option to manual withdraw 2022-05-04 16:26:53 -03:00
f16d2e52d5
wallet-core: implement batch withdrawal 2022-05-03 17:53:37 +02:00
Sebastian
b4e219f7ff
add missing allowedExchanges for calculating getFeeForDeposit 2022-05-03 00:34:37 -03:00
Sebastian
dc842eab6b
deposit from payto 2022-05-03 00:16:03 -03:00
Sebastian
e5c9f588e4
add prepareRefund operation to gather information about the refund before confirm 2022-05-02 19:21:13 -03:00
9996c27488
wallet-core: make coin selection aware of age restriction 2022-04-29 21:05:28 +02:00
Sebastian
038dcbc9b7
fix #5845 added run-gc on webex 2022-04-29 15:49:16 -03:00
Sebastian
508f5d2ea7
simplify alarm and check webRequest without using 'in' 2022-04-28 15:55:20 -03:00
Sebastian
b239ae1029
keep alive manifest v3 2022-04-28 13:26:29 -03:00
a165afa682
wallet-core: implement age restriction support 2022-04-27 00:50:17 +02:00
3c68b2d776
wallet-core: fix loop index 2022-04-18 22:00:26 +02:00
68b4d0c4de
wallet-cli: allow generating segwit addresses 2022-04-18 21:23:48 +02:00
d1b4cc994b
anastasis-core: async provider synchronization 2022-04-15 12:56:16 +02:00
098d1eb7eb
wallet-core: request reserve status with long poll timeout 2022-04-14 23:06:49 +02:00
Sebastian
ec9aed276a
fix: timer API should be exported from src/index 2022-04-13 13:54:54 -03:00
Sebastian
a644efe1ab
add a timer parameter in the wallet constructor in order to resolve #7120 2022-04-11 15:10:16 -03:00
Sebastian
bb56d61424
fix old API, crypto impl now used objects 2022-04-06 12:08:49 -03:00
c9adb4a5e2
english 2022-03-30 20:42:07 +02:00
123b92b3aa
wallet: logging, timestamp parsing backwards compatibility 2022-03-30 20:41:21 +02:00
bbd6ccf1c7
wallet: allow forced denom selection for tests 2022-03-29 21:22:03 +02:00
cb18b9813e
wallet: fix type error 2022-03-29 13:50:45 +02:00
c265e7d019
wallet: make retries more robust and consistent 2022-03-29 13:48:51 +02:00
f5d194dfc6
wallet: cancellation for deposit 2022-03-28 23:59:16 +02:00
80e43db2ca
wallet: timeout handling refactoring WIP 2022-03-28 23:21:49 +02:00
24b7110776
vendor CancellationToken 2022-03-28 20:24:09 +02:00
Sebastian
e5f21ec5bb
fix build, tipAmountEffective = selectedDemons.totalCoinValue 2022-03-28 14:51:17 -03:00
2ba6692c6a
fix fee discrepancy
The withdrawal call-to-action and withdrawal transaction details dialog
showed different fees, as the "overhead" for unwithdrawable amounts in a
reserve was not included in the withdrawal CTA.

The withdrawal CTA now shows the same fees as the transaction details.
2022-03-28 16:11:58 +02:00
Sebastian
1243efb409
synchronousWorker is replaced by synchronousWorkerNode, fix msg.args => msg.req 2022-03-25 16:57:59 -03:00
Sebastian
2c6b83ffea
created a sync worker for web based on the node version, then split for both 2022-03-24 11:42:06 -03:00
303c6e99b3
wallet: allow using RPC crypto in more places 2022-03-24 01:59:08 +01:00
454b55aa56
wallet: remove excessive logging 2022-03-24 01:13:40 +01:00