Commit Graph

962 Commits

Author SHA1 Message Date
1fceb13517
wallet-core: allow zero amounts in payments again 2023-01-12 11:22:43 +01:00
Sebastian
335d22b12b
when as number instead of string, fix codec used before declaration, pretty 2023-01-11 15:30:14 -03:00
3641e4cf0c
-check in integration test 2023-01-11 17:16:15 +01:00
143a4fe4ac
wallet-core: refresh when aborting payments 2023-01-11 17:14:49 +01:00
5fc0cb7927
-more to rename 2023-01-11 14:36:29 +01:00
c3fdbd291f
wallet-core: introduce abortPay request
This request supersedes the abortPayWithRefund request, as that's too
implementation-focused and does not describe well what's happening.

Also, abortPay can be forced to transition a transaction immediately
into an "aborted" state (either from "paying" or "aborting").
2023-01-11 14:33:35 +01:00
afd6f48b57
wallet-core: remember applied DB fixups 2023-01-11 14:20:23 +01:00
668d7a213e
wallet-core: implement database fixups 2023-01-11 14:19:24 +01:00
a82d8fab69
wallet-core: KYC mvp
Only hard withdrawal KYC is supporte so far, and no long-polling is done
yet.
2023-01-10 17:31:36 +01:00
Sebastian
da5b42025a
if the order is not found, marked the payment as failed 2023-01-10 11:24:46 -03:00
Sebastian
8a70edb2f8
add 'when' to error-detail and remove error as normal response when doing backup 2023-01-09 20:09:54 -03:00
Sebastian
14f3d1e06d
wallet-core pretty 2023-01-09 08:33:41 -03:00
417c07f3f4
wallet-core: insufficient balance details for p2p payments 2023-01-06 13:55:08 +01:00
c2c35925bb
wallet-core: allow failure result in peer payment coin selection 2023-01-06 11:08:45 +01:00
80639429a2
wallet-core: test insufficient balance response, also use it for deposit groups 2023-01-06 10:32:44 +01:00
92f1b5928c
wallet-core: implement insufficient balance details
For now, only for merchant payments
2023-01-05 18:45:54 +01:00
f4e1e8e6e7
-minor insufficient balance tweaks 2023-01-04 15:44:36 +01:00
7d02e42123
wallet-core: define insufficient balance details 2023-01-04 15:18:58 +01:00
60374078f4
wallet-core: test crypto dispatcher, fix timeout handling 2023-01-04 13:24:24 +01:00
f26cbe7c1f
-qjs fixes 2023-01-04 09:55:10 +01:00
d48ea17c63
-logging, skip defaults in test 2023-01-02 21:00:43 +01:00
d98711cb51
use native KDF / hash state if available 2022-12-23 13:19:41 +01:00
0b6002bbbc
crypto rename 2022-12-21 18:31:54 +01:00
Sebastian
15d76cf77c
add WALLET_HTTP_REQUEST_GENERIC_TIMEOUT to error map 2022-12-20 13:43:42 -03:00
68811cc5f5
-missing file, internal benchmark 2022-12-08 15:02:05 +01:00
a1c5f00aed
wallet: fix p2p coin selection
The p2p coin selection didn't work properly when all available denoms
are needed.

Thanks to Florian Jung for finding the issue and suggesting a fix.
2022-12-06 19:45:04 +01:00
Sebastian
dcddc4c53a
revert the Lost payment result 2022-11-25 12:18:52 -03:00
Sebastian
c121eb875e
fix: ageRestriction option was missing 2022-11-25 12:12:14 -03:00
Sebastian
e05ba843a0
fix 7465 2022-11-24 23:16:01 -03:00
Sebastian
dc08d7d20e
fixing import db when pkey is number 2022-11-22 15:15:40 -03:00
Sebastian
d8088e30da
fix #7394 2022-11-18 11:29:24 -03:00
Sebastian
6dc4fda73a
fix #7477 2022-11-17 17:07:24 -03:00
Sebastian
1a63d56bfd
fix #7411, also making the backup payment visible 2022-11-16 16:05:13 -03:00
233a354b47
fixes and polyfills for quickjs 2022-11-11 20:52:53 +01:00
344b4f62a2
quickjs preparations, clearer worker(-factory) names 2022-11-10 13:54:39 +01:00
Sebastian
5c742afbdf
feature: 7440 add expiration to p2p 2022-11-08 13:00:34 -03:00
66460e5650
repo: bump versions to v0.9.0 2022-11-04 12:44:34 +01:00
747bfcc267
bump db version 2022-11-02 19:07:46 +01:00
4321cdadb9
bump versions 2022-11-02 19:06:24 +01:00
cc2122b50c
wallet-core: fix coin allocation when doing refresh 2022-11-02 19:05:06 +01:00
566248aec4
wallet-core: add byStatus indices for peer payment object stores 2022-11-02 18:31:05 +01:00
8442452c33
wallet-core: get rid of AmountJson in public API 2022-11-02 18:24:54 +01:00
d50294f76e
wallet-core: DB FIXMEs (amount format) 2022-11-02 18:23:17 +01:00
6c3ef31d9a
wallet-core: DB FIXMEs 2022-11-02 17:09:59 +01:00
14456bb942
wallet-core: address DB FIXMEs 2022-11-02 17:02:42 +01:00
91e069c742
bump versions 2022-11-02 15:00:05 +01:00
1e6e1a22cd
wallet-core: fix exchange management test case, surface exchange update error info in list 2022-11-02 14:23:26 +01:00
fe011321a4
wallet-core: compute residual amount for recoup properly 2022-11-02 13:40:03 +01:00
87bc4a6fcd
wallet-core: fix recoup issue 2022-11-02 12:50:34 +01:00
aab3f917c4
-harness fixes for kyc 2022-11-01 17:52:51 +01:00
504d9f09b4
wallet-core: remove kyc and wad fee 2022-11-01 17:26:24 +01:00
ab48d3df6e
-rename 2022-11-01 15:36:10 +01:00
d63a773bf5
wallet-core: report supportedAgeGroups 2022-11-01 15:31:48 +01:00
8e1622a915
wallet-core: better KYC error message 2022-11-01 13:39:42 +01:00
a121fbe5de
remove source-map-support usage, as node supports it natively
We can just use NODE_OPTIONS=--enable-source-maps now.
2022-11-01 12:39:52 +01:00
dab739a63e
wallet-core: use PeerContractTerms 2022-11-01 11:41:28 +01:00
Sebastian
e80e3f28fe
dev-experiment should call method directly 2022-10-31 15:16:52 -03:00
5a91fbe2b7
bump versions 2022-10-31 17:11:00 +01:00
78b4ab19a3
wallet-core: use string amounts for deposit response 2022-10-31 17:08:42 +01:00
780eb20227
wallet-core: fix deposit with age restrictions 2022-10-31 16:51:01 +01:00
Sebastian
93ef4dace0
sync worker doesn't use require and ESM doesn't allows it 2022-10-31 00:23:38 -03:00
Sebastian
2f17d81802
require and __filename is not supported for ESM 2022-10-31 00:07:54 -03:00
Sebastian
3f2db7707f
using new wallet api (typed interface) 2022-10-25 12:23:52 -03:00
Sebastian
7a80d33414
get rid of typescript empty object warning 2022-10-24 10:39:12 -03:00
d87f3c242c
taler-wallet-embedded: tweak init response, rollup bundling, add test 2022-10-23 19:05:54 +02:00
1ab63a1840
wallet-core: we don't rollup wallet-core anymore 2022-10-23 19:00:14 +02:00
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
b0223d662a
use node16 module resolution for taler-util 2022-10-13 14:52:18 +02:00
eb5b075c01
update deps, move idb-bridge to node16 module resolution 2022-10-13 14:24:20 +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
d7a55a165f
replace __VERSION__ with a string definition 2022-09-05 13:04:31 -03:00
Sebastian
e0e33a88db
adding informantion about the service worker version on the setting page 2022-09-05 13:04:31 -03:00
4a0512884d
upgrade typescript (and some related deps) 2022-09-05 16:20:01 +02: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
07e1818679
Revert "no need to compile after install"
This reverts commit c3ba7fb523.
2022-05-24 18:00:25 +02:00
Sebastian
c3ba7fb523
no need to compile after install 2022-05-24 00:20:42 -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
9d38cb56a6
wallet: crypto worker fixes, better taler-crypto-worker integration 2022-03-24 01:10:41 +01:00
d881f4fd25
wallet: simplify crypto workers 2022-03-23 21:24:36 +01:00
Sebastian
136c39ba9f
-fix TS2345: Argument of type 'AmountJson' is not assignable to parameter of type 'never' 2022-03-23 14:20:18 -03:00
f187c1e13f
missing files 2022-03-23 16:38:34 +01:00
c539d1803c
wallet: address crypto worker hang and warning about worker termination 2022-03-23 13:11:36 +01:00
5d23eb3635
wallet: improve error handling and error codes 2022-03-22 21:16:38 +01:00
f8d12f7b0d
wallet: t_s/d_us migration 2022-03-21 19:20:48 +01:00
05838080f5
wallet: round timestamps in db-less requests to the exchange 2022-03-17 11:08:53 +01:00
151aa904e0
cache breaker 2022-03-16 15:21:15 +01:00
c0be242292
wallet: db-less benchmarking 2022-03-15 17:51:11 +01:00
Sebastian
bc596e11b9
moving synchronousWorkerFactory to index.node since use nodejs API 2022-03-15 11:04:53 -03:00
Sebastian
984cbb7ab7
save tos etag after forced refresh 2022-03-15 00:24:39 -03:00
332745862e
wallet: towards db-less benchmarking, some refactoring 2022-03-14 18:31:36 +01:00
9d66078852
wallet-core: do not rely on reserve history for withdrawals 2022-03-10 16:30:24 +01:00
6ee0354940
wallet: improve retry handling for payments, update error codes 2022-03-08 23:09:20 +01:00
d5a933e4cb
wallet-core: handle reserve retries better
We now always increment the next retry timeout before doing anything
else, so that it is impossible to accidentally retry immediately.

This fixes a bug where we previously made many, very frequent requests
to the bank integration API.
2022-03-08 20:39:56 +01:00
1d1c847b79
wallet: throttle all http requests
even from browsers / service workers
2022-03-08 19:19:29 +01:00
3e6f6eb3d7
wallet-core: remove old+wrong backwards compatibility code path 2022-03-08 12:32:29 +01:00
6df9202935
fix recoup protocol breakage 2022-03-07 21:49:11 +01:00
0323868e10
fix tipping 2022-03-07 20:44:18 +01:00
0290c5fd37
address protocol changes in the exchange
The exchange now has a wad fee and truncates the payto hash in signatures
2022-03-07 12:09:38 +01:00
5fbe82b374
disable setupRefreshPlanchet C crypto worker call 2022-02-21 16:17:59 +01:00
5c93f15157
towards implementing breaking exchange protocol changes 2022-02-21 12:40:57 +01:00
8920ea9c54
dependencies / tsconfig 2022-02-10 20:13:07 +01:00
5844a3065c
DB reset must be async 2022-02-03 14:36:37 +01:00
d2f17c8dac
bump version(s) 2022-01-27 14:33:41 +01:00
26ee8e3c71
fix exchange-timetravel test case with latest exchange version 2022-01-24 21:14:28 +01:00
171d070a83
make tipping work with latest merchant protocol 2022-01-24 20:51:47 +01:00
Sebastian
882d6b3710
last activity -> pending; fix downloadTos 2022-01-24 14:12:12 -03:00
Sebastian
ac60a0559c
forcing update when querying the terms, and fixing bug in request header parsing 2022-01-16 18:37:42 -03:00
Sebastian
f8ae2671c1
de-duplicating imports and fixing another typescript minor issues 2022-01-16 17:55:00 -03:00
Sebastian
bf0cb6ab13
splitting syncWorker with the factory so the former do not require nodejs runtime 2022-01-16 17:54:59 -03:00
Sebastian
8b0294ee41
better description of coin test selection and using c8 for coverage runtime 2022-01-14 12:50:38 -03:00
17c3ced648
make more use of the denom cache 2022-01-13 22:01:14 +01:00
cd2473e1ad
cache denomination lookups 2022-01-13 12:08:40 +01:00
Sebastian
cea0ac02b6
import db from the wallet web extension 2022-01-13 01:34:17 -03:00
Sebastian
4b289cde5d
adding a max timeout since retry counter can be very high 2022-01-13 01:34:16 -03:00
Sebastian
f6ec105b72
fixing high cpu usage after some time
retryinfo was not being updated and not being used by exchangeCheckRefresh pending operation
2022-01-13 01:34:16 -03:00
Sebastian
5eeb00e158
importDb feature in wallet core 2022-01-13 01:34:16 -03:00
9f6e398884
do withdrawal with fewer DB accesses 2022-01-12 16:54:38 +01:00
dc596f1f4d
implement latest recoup protocol 2022-01-12 15:51:56 +01:00
dbdad96b27
revert empty balance 2022-01-11 22:17:40 +01:00
a74cdf0529
fix DB indexing issues 2022-01-11 22:15:56 +01:00
a05e891d6e
towards new recoup API 2022-01-11 14:48:02 +01:00
Sebastian
83b9d32b78
filter out exchanges with other currency when doing currency selection for deposit 2022-01-10 16:07:27 -03:00
a2591a29af
logging, bump version 2022-01-10 01:19:19 +01:00
a7b89247e4
wallet-core: towards exchange protocol v12 2022-01-05 20:29:55 +01:00
188ff0b453
upgrade rollup plugins, as older ones caused miscompilation 2022-01-05 18:40:43 +01:00
dc040ba41c
update dependencies to fix rollup issue 2022-01-05 16:48:22 +01:00
Sebastian
2e71117f59
deposit from wallet webex: wip 2021-12-23 15:17:36 -03:00
2237058bcc
style 2021-12-13 11:28:57 +01:00
c493a3069e
wallet-core: reset reserve retry when resetting withdrawal retry 2021-12-13 11:28:15 +01:00
38d8239f93
idb-bridge: use lodash cloneDeep 2021-12-09 18:19:48 +01:00
423af144ee
put 'setInsecureTrustExchange' behind env variable in benchmark 2021-12-09 12:00:10 +01:00
dbfc599540
wallet-core: use crypto worker for eddsa signing 2021-12-09 10:39:50 +01:00
684c53e105
wallet-core: trust exchange for exchange benchmark 2021-12-08 16:23:00 +01:00
02bbf08283
wallet-core: fix computation of timestamp for exchange update 2021-12-08 01:52:24 +01:00
668ffa7302
wallet-core: implement exportDb API call 2021-12-01 18:16:47 +01:00
9f60e3d7ec
wallet: use correct denoms as refresh targets 2021-12-01 18:07:55 +01:00
dbbe1b0a61
fix recoup error handling 2021-12-01 12:23:17 +01:00
5c4c25516d
wallet: support both protocol versions 2021-11-27 20:57:07 +01:00
Sebastian
403de8170e
bump version to 0.9 2021-11-26 12:55:41 -03:00
Sebastian
f07436aa49
new exchange-added notifiaction and including tos information in the wxApi.listExchange api 2021-11-24 08:58:48 -03:00
7fac3bd17d
logging / explicit wire deadline 2021-11-24 01:57:11 +01:00
ae8af3f27c
wallet: tipping protocol change / merchant version info 2021-11-23 23:51:12 +01:00
Sebastian
60cfb0e78f
add reservePub to the withdrawal transaction info 2021-11-19 14:51:35 -03:00
Sebastian
4941546886
version 10 2021-11-19 14:51:35 -03:00
9f0429cb2f
wallet: implement exchange protocol v9 2021-11-17 10:23:30 +01:00
c33ed91971
wallet: experiment with C-based crypto worker for some primitives 2021-11-16 17:20:44 +01:00
ms
9692f589c6
Bring euFin-based tests to pass.
Note: timetravel-withdraw is now failing for both
pybank and eufin.  That is likely due to the wallet
not refreshing expired denominations.
2021-11-13 12:55:15 +01:00
ab6fd6c8c7
move HTTP status codes to taler-util 2021-11-03 13:17:57 +01:00
Sebastian
83b63d1cc0
FIXING: Insufficient Rollup version: @rollup/plugin-commonjs requires at least rollup@2.38 but found rollup@2.37.1. 2021-11-02 12:44:22 -03:00
589c2a3382
wallet-cli: benchmarking 2021-10-20 13:06:31 +02:00
269022a526
move some more crypto to taler-util package 2021-10-18 21:48:45 +02:00
c532648694
implement fakebank withdrawal 2021-10-14 11:36:43 +02:00
Sebastian
fbf501e727
fixing tos request 2021-10-13 14:26:18 -03:00
Sebastian
78fb5f79a8
fix browser packaging 2021-10-11 10:22:53 -03:00
e2fe2d6db1
add anastasis skeleton, put crypto in taler-util 2021-10-07 12:01:40 +02:00
Sebastian
bff5b3f59c
FIX: skip checking noncePriv eq if the URI doesn't specify a noncePriv value 2021-10-01 13:35:25 -03:00
Sebastian
62b64cb453
make no sense to send the noncePriv if the proposal is already paid 2021-09-20 00:17:45 -03:00
Sebastian
315b167bee
issue #5860 2021-09-17 15:49:07 -03:00
ms
490620ad04
Adapt tests to Sandbox' new access control. 2021-09-17 16:02:34 +02:00
Sebastian
9f00987380
added integration with the wallet-core to get info about the last tos approved 2021-09-13 15:32:15 -03:00
Sebastian
217f34397f
first approach to new design for withdraw 2021-09-08 15:35:44 -03:00
Sebastian
147da7c160
removing blocked scope due to babel/issues/8709#issuecomment-421538014 2021-08-24 13:24:56 -03:00
4c41e70565
DB schema cleanup 2021-08-24 15:43:06 +02:00
a09359bd39
implement freezing for payments 2021-08-24 15:08:34 +02:00
408d8e9fc8
towards handling frozen refreshes 2021-08-24 14:30:33 +02:00
828e65b0eb
fix un-offered denom situation, test case almost works 2021-08-23 22:28:46 +02:00
a3687d84ba
separate node entry points
Signed-off-by: Florian Dold <florian@dold.me>
2021-08-20 13:18:55 +02:00
a576fdfbf8
backup 2021-08-19 19:26:37 +02:00
f5a8ae33e3
cleanup / formatting 2021-08-19 18:34:23 +02:00
8929086ebf
logging 2021-08-19 16:06:09 +02:00
c0e6b6d0f6
run pending operations at least once, style fixes 2021-08-19 15:12:33 +02:00
defc393d6e
add missing file 2021-08-19 13:56:00 +02:00
3ce740d87d
store 'list issue date' of denoms, cleanup 2021-08-19 13:48:45 +02:00
2f945b2aeb
merchant test cases 2021-08-12 21:01:40 +02:00
df77676977
convert performance.now to integer before converting to BigInt 2021-08-12 19:20:48 +02:00
fb0f8043ea
reset deposit lastError 2021-08-07 18:19:04 +02:00
f40593185a
remove extra slash 2021-08-07 18:02:16 +02:00
c077c0d8c0
consider deposit operations for pending operations 2021-08-07 17:59:06 +02:00
e9da70b5b8
construct deposit URL correctly 2021-08-07 17:40:31 +02:00
06db37640e
perf: do bulk read 2021-08-06 17:15:46 +02:00
05e52d4e11
perf and logging improvements 2021-08-06 16:27:18 +02:00
9026b0aaad
merchant test: pass h_contract 2021-08-06 11:45:08 +02:00
Jonathan Buchanan
4f88d7f896
taler-wallet-core ios compatibility 2021-07-30 17:35:38 -04:00
Sebastian
7c2d2a3e15
simplest implementation to remove one provider, also added a user-defined name for provider 2021-07-15 15:05:15 -03:00
72f7664c70
comment 2021-07-13 14:13:38 +02:00
e2287d6d5b
make TextEncoder/Decoder creation lazy for polyfill to work 2021-07-13 14:10:38 +02:00
1c0cce3f58
tolerate zero-value payments 2021-07-12 15:55:31 +02:00
2a48caa341
improve error messages in DB transactions 2021-07-12 15:54:25 +02:00
0b854299d1
formatting 2021-07-12 15:13:04 +02:00
Sebastian
ebfc79756f
add providers filter to runBackupCycle 2021-07-07 13:28:10 -03:00
Sebastian
7ba3327322
exported backup types from wallet core 2021-07-01 11:33:48 -03:00
42fe576320
implement backup scheduling, other tweaks 2021-06-25 13:27:06 +02:00
3603a68669
sync: handle HTTP 304 correctly 2021-06-23 13:06:32 +02:00
eaced5ca63
set gzip timestamp to 0 in backup blob 2021-06-23 11:46:10 +02:00
6c14268c1a
skip existing coins when applying a pay coin re-selection 2021-06-23 10:18:40 +02:00
09d1dd83ec
prevent conflicting coin allocation with concurrent payments 2021-06-22 18:43:11 +02:00
39c4b42daf
implement long-polling for auto-refunds 2021-06-22 15:30:19 +02:00
c51b372abe
comment 2021-06-22 14:55:54 +02:00
e35c2f581b
simplify task loop, test coin suspension 2021-06-22 13:52:28 +02:00
7383b89cab
get rid of cyclic imports 2021-06-22 12:18:12 +02:00
Sebastian
d42a74565e
fix #6042 2021-06-21 10:08:35 -03:00
Sebastian
7f3ce304cb
missing globalThis Polyfill, remove duplicate url util 2021-06-20 16:14:56 -03:00
99550b0011
hide internal wallet state, keep it internal to package 2021-06-17 21:06:54 +02:00
Sebastian
954ed23911
using block inside case of switch breaks when building with babel 7
see https://github.com/babel/babel/issues/8709
2021-06-17 13:16:15 -03:00
a4902de891
temporary fix for exchange operations 2021-06-17 18:06:25 +02:00