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
woodser
0bc5300a27
synchronize on wallet while importing multisig hex
2023-11-16 10:15:13 -05:00
woodser
9eea422c9e
sync main wallet on payout to update pending balance
2023-11-16 10:15:13 -05:00
woodser
35be468de0
fixes to warning when wallet is too far behind daemon
2023-11-16 10:15:13 -05:00
woodser
9ca263927f
fix typo in logging
2023-11-15 07:13:41 -05:00
woodser
dd71423d95
fix concurrent modification exception when trades added to main view
2023-11-15 07:13:41 -05:00
woodser
f9afd44345
synchronize on wallet lock getting address entries
2023-11-15 07:13:41 -05:00
woodser
e2369480b2
loser pays mining fee on resolve dispute with custom amount
2023-11-15 07:13:41 -05:00
woodser
51d5f0e1d3
synchronize wallet poll and stop polling on shut down started
2023-11-15 07:13:41 -05:00
woodser
fd0bf23867
fix npe on first start with offline --xmrNode
2023-11-13 15:40:51 -05:00
woodser
606b2cef23
resume syncing wallet after applying proxy uri change
2023-11-13 15:40:51 -05:00
woodser
9b79faf29a
increase max trade limit to 64 xmr
2023-11-12 06:03:45 -05:00
woodser
af38f82406
document signing accounts in deployment guide, minor fixes
2023-11-12 06:03:45 -05:00
woodser
5c9a6b9ed6
move redundant deposit tx from ProcessModel to getSelf().getDepositTx()
2023-11-10 15:58:58 -05:00
woodser
74b0e42dae
remove getFeePerVbyte() for btc
2023-11-10 15:58:58 -05:00
woodser
4cc2d7d112
trade history casts trade to get security deposit when available
2023-11-03 10:27:37 -04:00
woodser
8a89be1636
fix too much precision calculating security deposit
2023-11-03 10:27:37 -04:00
woodser
0f7ace7326
fix adjusting amounts by smallest volume increments
2023-11-03 10:27:37 -04:00
woodser
4749d286da
re-enable posting offers above new account limits
2023-11-03 10:27:37 -04:00
woodser
4df59bc546
update translation: Confirmed in X block(s) -> X confirmation(s)
2023-11-01 14:41:21 -04:00
woodser
2839f33696
do not update peer node address on dispute opened
2023-11-01 14:41:21 -04:00
woodser
9d5ea3db4c
adjust amount by smallest volume increments
2023-11-01 14:41:21 -04:00
woodser
23525d89ee
security deposit is based on trade amount
2023-10-31 17:56:34 -04:00
woodser
f261a38cce
fix adjustment < min amount creating offers
2023-10-31 17:56:34 -04:00
woodser
4f5f82bf0f
fix xag and xau names inverted
2023-10-29 14:13:42 -04:00
woodser
ed93096a4b
arbitrator reserved trade amount = 0
2023-10-29 14:13:42 -04:00
woodser
8f8d653871
replace trade.getBuyerSecurityDeposit() w/ getBuyer().getSecurityDeposit()
2023-10-29 14:13:42 -04:00
woodser
7592d8fbca
fix payment sent ack after offline: 'Cannot get peer's pub key ring'
2023-10-29 14:13:42 -04:00
woodser
3450f3799e
process ack on DepositsConfirmedMessage from peer with changed address
2023-10-29 14:13:42 -04:00
woodser
05e2d925f0
fix incorrect deposit amount for range trades
...
improve display of reserved and pending balances by adjusting
support subtracting fee from buyer and/or seller on dispute resolution
validate trade amount is within offer amount
expose maker's split output tx fee
expose security deposit received from buyer and seller
2023-10-28 14:45:33 -04:00
woodser
0294062312
parse commas in xmr amounts to decimal
2023-10-18 05:58:45 -04:00
woodser
4217424c6e
update translations: remove DAO from signature verification
2023-10-18 05:58:45 -04:00
woodser
df34b2e534
remove {4} from itemized offer cost in german translation
2023-10-13 10:10:15 -04:00
woodser
02987075d3
remove total mining fee from itemized offer cost
2023-10-13 09:24:19 -04:00
woodser
d65f36f122
fix decimal formatting to US convention (no commas) in offer book
2023-10-12 13:34:31 -04:00
woodser
23c14a496a
fix auto correction to < min amount when creating non-fiat offers #688
2023-10-10 16:08:19 -04:00
woodser
222af4768b
replace variations of btc with xmr in app resources
2023-10-10 16:08:19 -04:00