woodser
78ae449e18
use dns seed nodes from MainNetParams on stagenet
2024-05-05 11:30:22 -04:00
woodser
f99fab8515
repeat try withdraw tx and fix amount details
2024-05-05 08:33:49 -04:00
woodser
ceff34672d
recover from deleted wallet cache
2024-05-04 09:16:01 -04:00
woodser
b50238a805
log cleanup
2024-05-04 09:16:01 -04:00
woodser
e96b875232
use more cached wallet state instead of direct queries
2024-05-04 09:16:01 -04:00
woodser
a5883d7bcd
arbitrator assigns trade fee address
2024-05-04 09:16:01 -04:00
woodser
eefcf0191f
trade step timeout is 60s on testnet
2024-04-30 15:34:51 -04:00
woodser
2341e73da2
defer dispute payout tx if awaiting peer ack or closed
2024-04-30 13:52:04 -04:00
woodser
f8480a1a4d
remove unused import
2024-04-30 13:07:36 -04:00
woodser
e2f19c280e
defer dispute payout tx if awaiting peer ack
2024-04-30 12:53:12 -04:00
woodser
467b678ea7
check if dispute payout published on submit failure, thread fixes
2024-04-30 11:18:04 -04:00
woodser
a3f2cd875c
update balances on same thread
2024-04-30 11:18:04 -04:00
woodser
5531d4eea1
increase max tx attempts to 5
2024-04-29 11:22:49 -04:00
woodser
8e24ebfc23
import multisig hex locks on daemon due to refresh call
2024-04-29 11:22:49 -04:00
woodser
bd1be1041a
increase timeout for sign offer request ack to 30s
2024-04-29 11:22:49 -04:00
woodser
d1e5910502
non-mature currencies have chargeback risk too
2024-04-29 11:22:49 -04:00
woodser
94ab3c1f9b
show reserved amount in maker's offer details
2024-04-29 11:22:49 -04:00
woodser
e63141279c
refactoring based on congestion testing
...
retry creating and processing trade txs on failure
do not use connection manager polling to reduce requests
use global daemon lock for wallet sync operations
sync wallets on poll if behind
use local util to get payment uri to avoid blocking
all peers share multisig hex on deposits confirmed
import multisig hex when needed
2024-04-29 11:22:49 -04:00
woodser
895acc9d7c
do not fetch trade txs directly from daemon
2024-04-27 17:14:21 -04:00
woodser
6455171dea
disable payment sent/received buttons until acked
2024-04-22 04:56:49 -04:00
woodser
3a66c9cd24
import multisig hex off main thread on payment sent message
2024-04-22 04:56:49 -04:00
woodser
e4b80ef14b
do not update from pool on shared wallet sync
2024-04-22 04:56:49 -04:00
woodser
adccf27385
set deposit tx confirmations from wallet instead of daemon request
2024-04-22 04:56:49 -04:00
woodser
f0862b7aeb
synchronize reserving funds for open offer to fix race condition
2024-04-22 04:56:49 -04:00
woodser
9d9635ff50
refactor wallet poll loops to further minimize requests
2024-04-22 04:56:49 -04:00
woodser
5c0d9a1ae5
remove timeout confirming payment sent/received & revert state on error
2024-04-21 06:27:30 -04:00
woodser
0ead6d8f83
adjust public and provided monero nodes
2024-04-21 06:27:30 -04:00
woodser
b08d6833a8
public nodes option entails provided nodes
2024-04-21 06:27:30 -04:00
woodser
8097b0f499
use cached txs in xmr wallet service instead of querying wallet
2024-04-21 06:27:30 -04:00
woodser
a107acbdb4
add more mainnet nodes for diversity and reliability
2024-04-18 14:19:52 -04:00
woodser
ca2d7704ab
fixes from congestion testing
...
- refactor main wallet polling
- restart main wallet if connection changes before initial sync
- use cached wallet state throughout app
- avoid rescanning spent outputs until payout tx expected
- allow payment sent/received buttons to be clicked until arrived
- apply timeout to payment sent/received buttons
- load DepositView asynchronously
- remove separate timeout from OpenOffer
- tolerate error importing multisig hex until necessary
2024-04-18 14:19:52 -04:00
woodser
f7ac9ae37a
show sync progress before sync starts on startup
2024-04-13 10:28:50 -04:00
woodser
b86e916dcb
invoke error handler once on trade failure
2024-04-13 10:28:50 -04:00
woodser
9062bc9159
log error initializing main wallet
2024-04-13 10:28:50 -04:00
woodser
ccf2757418
increase trade protocol step timeout to 2m
2024-04-13 10:28:50 -04:00
woodser
2ba37d98fe
shut down XmrWalletService with timeout
2024-04-13 10:28:50 -04:00
woodser
3e112485ba
warn if trade wallet is more than 10 blocks behind monerod
2024-04-08 08:00:42 -04:00
woodser
b3ec46e769
register multiple pub keys for alerts and private notifications
2024-04-08 08:00:42 -04:00
woodser
fd328ceeea
update sync progress in realtime with native wallet
2024-04-07 15:24:30 -04:00
woodser
7d7660414a
trade fees are adjustable and persisted in offer payload
2024-04-07 08:33:39 -04:00
woodser
59fbd805a5
update offer state on same thread to fix blocking
2024-04-07 08:33:39 -04:00
woodser
60d82520c0
handle closing, stopping, deleting native and rpc wallet
2024-04-05 06:29:51 -04:00
woodser
01dd6a8af9
support using monero native libraries (experimental)
2024-04-01 19:28:00 -04:00
woodser
7eabde63f3
stop trade protocol if timeout while creating reserve or deposit tx
2024-03-25 10:31:36 -04:00
woodser
db12f1c2cb
apply timeout for arbitrator to sign offer and init trade
2024-03-23 10:37:07 -04:00
woodser
10a5b55dfe
check for trade timeout after arbitrator request and reserve tx
2024-03-23 10:37:07 -04:00
woodser
9661e6fba8
log details on invalid maker signature
2024-03-23 10:37:07 -04:00
woodser
897c010e0c
save wallet on multisig import and create tx
2024-03-23 10:37:07 -04:00
woodser
60c2c12a95
show address for display with onion or localhost
2024-03-21 11:13:32 -04:00
woodser
1647a582f5
update chat views from upstream, support sending logs
...
Co-authored-by: jmacxx <47253594+jmacxx@users.noreply.github.com>
2024-03-21 11:13:32 -04:00
woodser
3c7841ae28
fix chat message listeners by returning source observable list ( #830 )
2024-03-18 10:47:43 -04:00
woodser
216260da85
cancel offer waits for result
2024-03-15 11:17:29 -04:00
woodser
4a57b26469
get txs after sync to update from pool
2024-03-15 11:17:29 -04:00
woodser
8d7bb250c5
get updated balances from Balances.java
2024-03-15 11:17:29 -04:00
napoly
82eb081089
Create task to generate key pairs ( #823 )
2024-03-14 12:12:42 -04:00
woodser
307689d372
fix build warning for trade.getChatMessages() ( #807 )
2024-03-09 17:50:08 -05:00
napoly
c777133d36
Support for open JDK 21 by updating dependencies ( #647 )
2024-03-09 10:36:37 -05:00
woodser
623196bcb0
fix trade wallet name
2024-02-28 06:58:26 -05:00
woodser
0c9a3ac0a4
rename trade wallets with short id and short uid
2024-02-27 12:09:44 -05:00
woodser
1dc2e8337c
documentation fixes
2024-02-27 08:00:25 -05:00
woodser
98ffb5f34c
remove trade after cleared and shut down
2024-02-26 11:23:06 -05:00
woodser
2c0275e336
do not sync trade wallet on deletion if deposit not requested
2024-02-26 11:23:06 -05:00
woodser
be90b317f2
advance trade state on payment sent ack
2024-02-25 08:22:56 -05:00
woodser
23db847065
shut down open offer pool off ui thread to avoid blocking
2024-02-19 16:50:53 -05:00
woodser
eaf096adeb
cache wallet state to avoid requests on main thread
2024-02-19 16:50:53 -05:00
woodser
7346ced337
increase trade fees to 0.15% for maker and 0.75% for taker
2024-02-18 07:43:50 -05:00
woodser
98129c70ed
add mainnet welcome message with release warning
2024-02-17 07:20:43 -05:00
woodser
36f6dd7ade
update translations for sell limits within release windows
2024-02-16 07:10:36 -05:00
woodser
a20f251258
update translations to reserve only funds needed
2024-02-16 07:10:36 -05:00
woodser
8171299de3
revert bisq licenses and add haveno licenses
2024-02-15 07:45:35 -05:00
woodser
f91f213cd2
limit sell offers to unsigned buy limit then warn within release windows
2024-02-15 07:45:35 -05:00
woodser
a63118d5eb
increase trade limits to 3, 6, 12, 96
2024-02-12 10:22:33 -05:00
woodser
cc34ff8168
update description to reserve only the funds needed
2024-02-11 08:07:57 -05:00
woodser
548cae004d
synchronize chat messages to avoid concurrency exception
2024-02-11 08:07:57 -05:00
woodser
dc015ad83d
show offer funding address entries in receive view
2024-02-11 08:07:57 -05:00
woodser
d1d6576986
update clearnet pricenode address to port 8078
2024-02-04 12:51:17 -05:00
woodser
c908294250
set payment sent message state after sending message
2024-02-02 06:16:41 -05:00
woodser
fabec9d396
open offer manager completes shut down after thread pool
2024-02-02 06:16:41 -05:00
woodser
1a0fab8c47
validate sender hostname and update address on dispute opened message
2024-02-02 06:16:41 -05:00
woodser
6f51d333ec
resend payment sent & received messages from trade thread on startup
2024-02-02 06:16:41 -05:00
woodser
1a5a754f18
set mailbox message comparator in trade manager to fix npe
2024-01-29 08:41:04 -05:00
woodser
481b6c871a
backup wallets on shut down, skip when open on windows
2024-01-29 08:41:04 -05:00
woodser
8600c0cb0d
shut down http connections with 5s timeout
2024-01-28 06:45:05 -05:00
woodser
64aa052d83
decrease trade and offer manager shut down timeout to 60s
2024-01-27 09:07:46 -05:00
woodser
eb323f6d65
force restart trade wallet on connection refused during poll
2024-01-27 09:07:46 -05:00
woodser
2a2eb0c82f
check if trade shut down started within lock
2024-01-27 09:07:46 -05:00
woodser
33bd4587c4
remove offers from books off user thread
2024-01-27 09:07:46 -05:00
woodser
41290a1f3f
remove stacktrace on error polling trade wallet
2024-01-27 09:07:46 -05:00
woodser
221a63077c
do not backup trade wallet if arbitrator for space saving
2024-01-27 09:07:46 -05:00
woodser
8776fecef0
use wallet lock with xmr address entries
2024-01-27 09:07:46 -05:00
woodser
821d949fa7
check offer availability off user thread
2024-01-25 12:29:32 -05:00
woodser
29a488d3af
update balances off user thread
2024-01-25 12:29:32 -05:00
woodser
40650103d9
get wallet height off user thread
2024-01-25 12:29:32 -05:00
woodser
d0a489198b
delete trade wallet backup if empty and payout unlocked, else schedule
2024-01-25 12:29:32 -05:00
woodser
19d3e2853d
skip trade protocol message processing if shutting down
2024-01-23 20:45:20 -05:00
woodser
e4e8f5d311
fix npe syncing wallet normally for duration
2024-01-23 20:45:20 -05:00
woodser
6dc9842253
open dispute on trade thread
2024-01-23 20:45:20 -05:00
woodser
892eaa440a
fix trade initialization error handling and run off trade thread
2024-01-22 05:21:29 -05:00
woodser
ea4359d164
run arbitrator protocol on trade thread
2024-01-22 05:21:29 -05:00
woodser
847e9e8701
save trade wallet on shutdown with timeout
2024-01-22 05:21:29 -05:00
woodser
b88bec580e
update translations for wallet seed backup
2024-01-21 05:25:22 -05:00
woodser
a6b8723ebe
persist wallet creation date when created
2024-01-21 05:25:22 -05:00
woodser
036f40e861
remove lock synchronization in connection service to avoid blocking
2024-01-21 05:25:22 -05:00
woodser
93c87462c6
fix CI tests by skipping daemon sync check for local testnet
2024-01-19 10:29:38 -05:00
woodser
e956114239
shut down OpenOfferManager thread pool before completing shut down
2024-01-19 05:45:46 -05:00
woodser
7beae49dd2
cancel pending price request on select new provider
2024-01-19 05:45:46 -05:00
woodser
75e85179b4
fixes for local monerod
2024-01-19 05:45:46 -05:00
woodser
947caca647
do not resend payment sent message to arbitrator after ack
2024-01-17 10:17:50 -05:00
woodser
857179f42d
do not reprocess dispute closed message after illegal argument exception
2024-01-17 10:17:50 -05:00
woodser
7383ece7b3
delete backup wallets ~5 days after trade wallet
2024-01-15 10:44:43 -05:00
woodser
df27902577
add HavenoUtils.isSeedNode()
2024-01-15 10:44:43 -05:00
woodser
022028bb41
fix npe cleaning up arbitrator's mailbox messages
2024-01-13 07:28:03 -05:00
woodser
ad77912171
fix invalid pub key warning on process mailbox messages
2024-01-13 07:28:03 -05:00
woodser
2966f8461c
update balances on freeze/thaw, register open offer before processing
2024-01-13 07:28:03 -05:00
woodser
036ddef52c
update only buyer's payment sent message state property on startup
2024-01-13 07:28:03 -05:00
woodser
bcb951ca40
do not check best connection when connection is fixed
2024-01-13 07:28:03 -05:00
woodser
5c28428436
do not re-complete task to send deposits confirmed message
2024-01-12 06:52:01 -05:00
woodser
2b9d0ef5a6
fix payment sent message state property after improper shut down
2024-01-12 06:52:01 -05:00
woodser
db155283be
repeatedly acquire lock on trade shut down and fix timeout
2024-01-10 09:35:25 -05:00
woodser
d26ddac5c0
rename proto type from CONFIRMED_IN_UI* to CONFIRMED*
2024-01-10 09:35:25 -05:00
woodser
6c83fc4cf8
avoid fetching wallet subaddresses individually by caching
2024-01-09 06:59:45 -05:00
woodser
c28ffb70ff
update state from wallet notifications on UserThread
2024-01-09 06:59:45 -05:00
woodser
a6f6f5c00a
protocols skip resending payment sent/received if shut down
2024-01-09 06:59:45 -05:00
woodser
c06a85b929
clear and shut down inactive trades, move more to trade threads
2024-01-06 12:52:21 -05:00
woodser
c14f37b595
invoke main wallet listeners in thread pool
2024-01-06 12:52:21 -05:00
woodser
52a44d020e
update trades on UserThread in TradeManager to fix npe
2024-01-06 12:52:21 -05:00
woodser
0d60df2aa7
refactor trade and connection threading to new ThreadUtils
2024-01-06 12:52:21 -05:00
woodser
497de47965
do not set daemon connection to null on disconnect
2024-01-06 12:52:21 -05:00
woodser
ba8a9ae21d
await external prices on startup
2024-01-06 12:52:21 -05:00
woodser
f8d9c827ea
skip wallet initialization if shut down started
2024-01-06 12:52:21 -05:00
woodser
2ee2b747f9
check for balance before deleting trade wallet
2024-01-06 12:52:21 -05:00
woodser
e7371d1299
process trade state notifications off UserThread
2024-01-04 14:54:15 -05:00
woodser
43bbb29384
try syncing main wallet when height > target height on startup
2024-01-04 14:54:15 -05:00
woodser
0a3736bba0
reprocess trade messages off UserThread
2024-01-04 14:54:15 -05:00
woodser
5d88936600
start main wallet when daemon synced with improved UserThread
2024-01-01 09:05:04 -05:00
woodser
5466689857
set progress listener state in same thread
2024-01-01 09:05:04 -05:00
woodser
7f3fd0af08
finish open offer manager tasks before shut down
2024-01-01 09:05:04 -05:00
woodser
342c212ba8
remove global error handler for taking offer
2024-01-01 09:05:04 -05:00
woodser
fdb24ba9f8
arbitrator sends nack if trade already taken
2024-01-01 09:05:04 -05:00
woodser
c6b1d03283
set price feed state in UserThread
2024-01-01 09:05:04 -05:00
woodser
c55fb927f2
rely on trade state to delete wallet
2023-12-31 10:14:13 -05:00
woodser
3aab3f57b1
set offer state on UserThread
2023-12-31 10:14:13 -05:00
woodser
e160499d30
sync main wallet outside lock on connection changed
2023-12-31 10:14:13 -05:00
woodser
bc4d8fc8c2
split output tx is null while awaiting scheduled tx
2023-12-31 10:14:13 -05:00
woodser
2e86d4a62a
check local connection before switching
2023-12-31 10:14:13 -05:00
woodser
6c2f3ea154
improve trade state reliability
...
update trade state atomically on UserThread
nullify error handling on deposits confirmed message
set trade state before deposit request and relay
add checks before deleting wallet
UserThread.await() detects if on UserThread
2023-12-27 11:20:16 -05:00
woodser
3de4264c4b
increase offer reliability with TTL, refresh period, max attempts
2023-12-24 11:55:47 -05:00
woodser
0d33959eeb
republish offers on dedicated thread for open offer manager
2023-12-22 09:58:29 -05:00
woodser
a1f8f942fc
poll daemon and trade wallets in dedicated lock and prevent queuing
2023-12-22 09:58:29 -05:00
woodser
1dab218d7e
do not shut down connection pool in case account is re-recreated
2023-12-20 07:32:40 -05:00
woodser
c7b8571842
reset timeout timer on progress creating offer
2023-12-20 07:32:40 -05:00
woodser
1df2ab4389
replace AppSetupWithP2PAndDAO with AppSetupWithP2P
2023-12-20 07:32:40 -05:00
woodser
01a57c18f7
support setting custom node in UI with localhost running
2023-12-20 07:32:40 -05:00
woodser
f162cad439
handle connection change on dedicated thread, other thread improvements
2023-12-20 07:32:40 -05:00
woodser
b1f8411641
check local connection after setting
2023-12-20 07:32:40 -05:00
woodser
dffb676f4e
reset address entries for open offer on error taking offer
2023-12-20 07:32:40 -05:00
woodser
30e199c56e
shut down trades before main wallet to finish processing
2023-12-20 07:32:40 -05:00
woodser
e6775f3b58
move processing off UserThread for smoother experience
2023-12-18 13:45:04 -05:00
woodser
e11d65c038
check and extend timeout after taker creates reserve tx
2023-12-18 13:45:04 -05:00
woodser
48d902b58d
close trader dispute ticket on payout published
2023-12-18 13:45:04 -05:00
woodser
c42471191a
refactor trade state TRADE_COMPLETED to boolean
2023-12-18 13:45:04 -05:00
woodser
fd4e4d3917
remove warning that wallet is not synced when idling
2023-12-16 15:20:36 -05:00
woodser
66a152c888
close open dispute on preparing payment received message
2023-12-16 15:20:36 -05:00
woodser
26ea53883c
republish offers awaits prices and runs off UserThread
2023-12-16 15:20:36 -05:00
woodser
dbd8db0e88
set open offer's reserve tx fields once known and repost if invalid
2023-12-16 15:20:36 -05:00
woodser
2e13bc0051
update translation: Taking offer: X%
2023-12-14 12:03:47 -05:00
woodser
c9a79888c8
change message when daemon synced and update translations
2023-12-14 12:03:47 -05:00
woodser
94eae8f945
add (via clearnet) to connection status
2023-12-14 12:03:47 -05:00
woodser
acfb4ae4c5
log price provider
2023-12-14 12:03:47 -05:00
woodser
c7277187c5
fix cycling through price providers
2023-12-11 09:06:20 -05:00
woodser
d8ac901d4a
call wallet.sync() on startup after background sync with progress
2023-12-10 16:08:45 -05:00
woodser
74cfd474ad
clear basic trade process data on payout unlocked
2023-12-10 16:08:45 -05:00
woodser
948be8ce29
rename trade getPayoutAmount() to getPayoutAmountBeforeCost()
2023-12-10 16:08:45 -05:00
woodser
7bfba15109
do not resend deposits confirmed message after payout published
2023-12-10 16:08:45 -05:00
woodser
0c149b780f
mark dispute closed per ticket and sync for payout on ack
2023-12-10 16:08:45 -05:00
woodser
3730773006
replace BigInteger.valueOf(0) with BigInteger.ZERO
2023-12-10 16:08:45 -05:00
woodser
cd89b8bf15
update translations for startup syncs
2023-12-10 16:08:45 -05:00
woodser
41ed01dbde
update translation: Connecting to Haveno network
2023-12-10 16:08:45 -05:00
woodser
8800d9ea46
set buyer and seller payout tx fee and amount, fix csv export #720
2023-12-10 16:08:45 -05:00
woodser
846a8634e5
process mailbox messages in sequential order per trade
2023-12-05 08:49:09 -05:00
woodser
da8474a0f4
fix npe when connection is null
2023-12-05 08:49:09 -05:00
woodser
38bbfafcbb
show wallet sync progress on startup
2023-12-02 10:06:11 -05:00
woodser
f5d82df477
hide reserved subaddresses in deposit view
2023-11-29 20:31:00 -05:00
woodser
84c08e4c36
show that wallet is syncing on startup
2023-11-29 20:31:00 -05:00
woodser
9fb22f6d1f
reset startup timeout on sync progress
2023-11-29 20:31:00 -05:00
woodser
9957aa6256
check that wallet is synced within tolerance
2023-11-28 11:48:25 -05:00
woodser
7b9773e3c6
update translation: chain not synced popup
2023-11-27 14:01:34 -05:00
woodser
644bb72957
rename services and objects from Monero to Xmr for consistency
2023-11-26 11:10:49 -05:00
napoly
497f987541
fix csv export by avoiding null pointer with ZERO
2023-11-26 11:10:37 -05:00
woodser
d094997666
show daemon sync progress on startup then sync wallet
2023-11-25 14:46:44 -05:00
woodser
846b278b5d
set and display current monerod height instead of target
2023-11-24 13:31:48 -05:00
woodser
27bf72d432
poll local node for faster switching
2023-11-24 13:31:48 -05:00
woodser
3d0b8c0b09
process mailbox messages on main thread on startup
2023-11-21 13:01:10 -05:00
woodser
cfaca6e0d8
fetch txs on startup to fix balance with 0 conf PaymentReceivedMsg
2023-11-21 13:01:10 -05:00
woodser
013924b141
don't send payment sent message back to buyer
2023-11-21 13:01:10 -05:00
woodser
fc396f7478
fix peer deleting unique payment sent, received, dispute messages
2023-11-21 13:01:10 -05:00
woodser
5fc67ec65a
fix app hanging after connection change with parallel handling
2023-11-19 14:31:03 -05:00
woodser
f6f4fb014e
stop polling trade wallet after marking shut down started
2023-11-17 12:13:27 -05:00
woodser
5294baf949
reset timeout timer after maker sends sign offer request
2023-11-17 12:13:27 -05:00
woodser
83352ec1e3
set or clear connection error message on each daemon poll
2023-11-17 12:13:27 -05:00