Commit Graph

303 Commits

Author SHA1 Message Date
woodser
426d25f78c rename splitOutput to reserveExactAmount 2023-07-26 09:24:29 -04:00
woodser
242bc0e3bb subtract mining fees from destinations in trade protocol
fixes to scheduling and the deposit view
display address usage context
fix npe when price is null
2023-07-26 09:24:29 -04:00
woodser
13d87a32a5 update monero-java (v0.8.0) and monero-project (v0.18.2.2 w/ extensions)
subtract mining fees from payment destinations
optimize wallet rpc calls for periodic refresh from 3 to 1
fixes to saving wallet files
respect frozen outputs
restore from multisig seed (experimental)
2023-07-26 09:24:29 -04:00
woodser
f459666276 squeeze create offer view to avoid scrolling 2023-07-26 09:24:29 -04:00
woodser
a1829ee9f3 remove mempool service 2023-07-14 08:30:46 -04:00
woodser
0843f27b63 remove button to edit offer in OfferBookView 2023-07-13 05:12:33 -04:00
woodser
ff9f0a7204 bump version to 1.0.8 2023-07-13 05:12:33 -04:00
woodser
c4898a8ec0 Revert "Support for open JDK 20 by updating dependencies"
This reverts commit 5923a34ef9.
2023-07-11 10:15:19 -04:00
napoly
5923a34ef9 Support for open JDK 20 by updating dependencies 2023-07-10 07:22:29 -04:00
woodser
6c7f9a288d bump version to 1.0.7 2023-06-17 14:05:20 -04:00
woodser
b414ac942d fix amounts in trade statistics view 2023-06-17 14:05:20 -04:00
woodser
59c0496d34 show offers as pending, fix offer funding from manual subaddress 2023-06-17 14:05:20 -04:00
woodser
455b1f739c remove button to edit offers 2023-06-17 14:05:20 -04:00
woodser
722b02f4c9 support reserving exact offer amount by splitting output 2023-06-13 09:03:05 -04:00
woodser
2ca8ccb1f3 remove message of losing maker fee on removing offer 2023-06-13 09:03:05 -04:00
woodser
37c6f36868 repurpose delete spv button to rescan outputs (hidden w/o implementation) 2023-06-13 09:03:05 -04:00
woodser
06be2a4829 manage monero connections from ui #623
use tor for all monero connections by default
renames from btc to xmr
updated translations
2023-06-06 12:52:41 -04:00
woodser
ec49e2f327 rename 'cash by atm' to 'cash at atm' 2023-06-06 12:52:41 -04:00
woodser
9fffd74ddb deposit view shows base address and externally used addresses
update deposit view on new block
avoid extra request to tx pool on deposit view init
2023-06-05 12:49:42 -04:00
woodser
4993dc8a1f show payment details of australian payid and cash by atm
show terms and conditions prompt on cash by atm
2023-06-05 11:33:13 -04:00
woodser
655583477a support cash by atm payment method #626 2023-06-01 08:26:18 -04:00
woodser
b90163baa5 fix fee calculation taking offer within range 2023-05-31 08:22:10 -04:00
woodser
69b0d54c7e update payout unlocked state if trade wallet missing 2023-05-31 08:22:10 -04:00
woodser
55edf10635 fix account limits displayed in payment account form 2023-05-25 20:50:42 -04:00
woodser
79247e87fa hide xmr auto confirmation settings 2023-05-25 20:50:42 -04:00
woodser
8b735d17b7 fix npe formatting offer volume with negative market rate 2023-05-25 20:50:42 -04:00
woodser
da0f4f4652 fix language support on changing language 2023-05-25 20:50:42 -04:00
woodser
02eb2fb005 fix npe in offer payment account selection 2023-05-20 10:09:51 -04:00
woodser
5aba26ff82 refactor offer tabs to fiat, bitcoin, other (with gold and silver) 2023-05-20 08:38:52 -04:00
woodser
a2c2f670da remove instances of 'Haveno DAO' 2023-05-17 16:55:48 -04:00
woodser
1257072211 change 'cash by mail' to 'pay by mail' 2023-05-17 16:55:48 -04:00
woodser
29706339ef add gold and silver, refactor money types to traditional and crypto 2023-05-17 16:55:48 -04:00
napoly
65bc78d3d7 moving away from JUnit 4 completely to JUnit 5 Jupiter 2023-05-17 08:25:09 -04:00
Vinicius Oliveira
86e73fa702
Changes on dark theme. (#615) 2023-05-09 15:36:38 -04:00
woodser
a2c0abcbc1 improve reliability of chat messages ack by not using weak listeners 2023-04-30 16:47:14 -04:00
woodser
6e901c9852 prevent trade mixup in ui by synchronizing trade and state events 2023-04-29 07:41:52 -04:00
woodser
6b105f80cf update installer instructions 2023-04-29 07:41:52 -04:00
Vinicius Oliveira
f7423433d6
Updated dark theme colors. (#604) 2023-04-26 20:48:15 -04:00
woodser
6d2819bde7 improve error handling
show error popup on error initializing trade
instruct to close monero-wallet-rpc on error opening wallets
throw error if trade missing wallet on init or failure to sign payout tx
2023-04-26 13:52:31 -04:00
woodser
5545bcde38 take offer view shows pending trade wallet balance 2023-04-26 13:52:31 -04:00
woodser
e0db4528da update p2p connection and message packages
remove inventor and monitor packages

Co-authored-by: Alva Swanson <alvasw@protonmail.com>
Co-authored-by: Alejandro García <117378669+alejandrogarcia83@users.noreply.github.com>
Co-authored-by: jmacxx <47253594+jmacxx@users.noreply.github.com>
Co-authored-by: HenrikJannsen <boilingfrog@gmx.com>
2023-04-26 13:52:31 -04:00
woodser
0f41c8d8b8 always show arbitrator tickets and signed offers view if arbitrator 2023-04-26 13:52:31 -04:00
woodser
e0929653af refactor trade init error handling, fix deadlock in offer book service
wait min of 1 min and 1 conf before deleting trade with fund request
2023-04-24 23:11:19 -04:00
woodser
37e812dead remove XmrTxProofService 2023-04-24 23:11:19 -04:00
woodser
33147e1c7c use BUYER_SENT_PAYMENT_SENT_MSG when peers see payment sent message
use SELLER_RECEIVED_PAYMENT_SENT_MSG only for ack to buyer
2023-04-24 23:11:19 -04:00
woodser
7e8e145c85 resend payment sent msg until ack, payment received msg if not published
improve payment confirmation states in ui
2023-04-23 07:24:16 -04:00
woodser
2b7a461411 disable payment sent button on click 2023-04-23 07:24:16 -04:00
woodser
d41ad6fa5f TransactionListItem does not fetch tx updates 2023-04-23 07:24:16 -04:00
woodser
70420b2f78 fix thread error in OfferDetailsWindow 2023-04-23 07:24:16 -04:00
woodser
d0a6646bcd Signed Offers view only appears for arbitrator 2023-04-23 07:24:16 -04:00
woodser
fa5d190383 add instructions to create installers 2023-04-19 07:37:12 -04:00
woodser
427c762620 progress notifications during take offer are more frequent and reliable 2023-04-18 16:50:16 -04:00
woodser
cffbfa8aaa rename clearXchange to zelle 2023-04-18 16:50:16 -04:00
woodser
2afa5d761d improve stability on tor, refactor startup and shut down
refactor startup sequence to improve message reliability
refactor shut down sequence to finish processing messages
reduce monerod requests to improve slow tor connections
refactor trade wallet polling
monero node service uses default data directory unless local
connections service checks connection by polling daemon
connections service supports getRefreshPeriodMs and shutting down
add make config: monerod-stagenet-custom
fix bugs in key image polling
force stop wallet on deletion
trade manager initializes persisted trades on data received
support hardcoding monero log level and request stack traces
remove xmrAddress from Arbitrator model
fix formatting of MoneroWalletRpcManager
2023-04-17 10:11:32 -04:00
woodser
1b753e4f29 stability fixes on tor
optimize when multisig info imported
fetch updates for tx progress indicators off main thread
add synchronization locks
refactor address entry management
add totalTxFee to process model
prevent same user from taking same offer at same time
set refresh rate to 30s for tor
2023-04-07 21:27:39 -04:00
woodser
a03941817e update buyer seller step view even if error 2023-04-06 11:08:49 -04:00
woodser
fd69f4250b support tor connection to monero network through monero-java
cleanup startup routine for stability
remove call to `get_connections`
increase wallet startup timeout to 1 hour
increase app startup timeout to 5 minutes
skip checkstyle in make commands
2023-04-06 11:08:49 -04:00
woodser
8305c62510 document packaging executable binaries 2023-04-06 11:08:49 -04:00
napoly
4bef95172c Update Signed Offers view in legacy UI 2023-03-20 13:21:36 -04:00
napoly
3b8f19c4ce Removing star and unused imports with checkstyle 2023-03-19 15:03:24 -04:00
woodser
4650003838 use byte[] for signatures instead of strings 2023-03-12 12:08:50 -04:00
woodser
19d83749eb show progress percent while taking offer 2023-03-12 12:08:50 -04:00
woodser
9d87e30da0 fixed price offer in legacy ui does not set market price margin 2023-03-10 05:47:55 -05:00
woodser
60341002fd prevent non-terminating BigDecimal division 2023-03-10 05:47:55 -05:00
woodser
47f3d98597 remove unused fields from TradePeer and Contract
fix concurrent modification exception applying prices to trade stats
standardize offer fee tx ids (unused)
2023-03-10 05:47:55 -05:00
woodser
a16b03bb5c increase penalty fee to security deposit 2023-03-10 05:47:55 -05:00
woodser
5b8f9237ce rename core package from btc to xmr 2023-03-08 11:39:10 -05:00
woodser
e71f9a54ac remove unused messages and fields from protobuf models
rename BitcoinModule to MoneroModule
change to HavenoUtils.formatXmr(...)
remove "_as_long" postfix from models
2023-03-08 11:39:10 -05:00
woodser
1a1fb130c0 rename all packages and other names from bisq to haveno 2023-03-08 11:37:33 -05:00
woodser
ab0b9e3b77 transition Balances to use native xmr atomic units 2023-03-07 08:33:56 -05:00
woodser
b18e9ad4bf fix Res.get() warning on pmt confirmation w/ "Preparing confirmation..." 2023-03-07 08:33:56 -05:00
woodser
f91db182d8 desktop app creates offers with floating market price 2023-03-07 08:33:56 -05:00
woodser
9b4f8046b7 switch to xmr atomic units as native units 2023-03-06 08:53:00 -05:00
woodser
ed0f458bc4 support broadcasting maker and taker reserve txs in legacy ui
Co-authored-by: niyid <neeyeed@gmail.com>
2023-03-04 08:35:51 -05:00
woodser
4dde53f0e8 support password prompt in legacy ui
Co-authored-by: niyid <neeyeed@gmail.com>
2023-02-27 09:19:59 -05:00
woodser
6dca11f471 arbitrator sends original unsigned payout tx if published
synchronize on trade when processing dispute messages
2023-02-26 08:35:50 -05:00
woodser
c7080f3dbc splash screen shows "test network" if not mainnet 2023-02-24 10:51:13 -05:00
woodser
ce579b78ca arbitrator sends same dispute payout tx to both peers on resolve w/ grpc
fix npe in trade.get*DepositTx()
2023-02-24 09:58:33 -05:00
woodser
e2a8dc702b show popup for error notifications sent through notification service 2023-02-11 16:50:32 -05:00
woodser
190003b5ba migrate to DisputeValidation
Co-authored-by: HenrikJannsen <boilingfrog@gmx.com>
2023-02-11 16:50:32 -05:00
woodser
6f16a5ee92 remove unused protobuf fields
remove TraderSignedWitnessMessage
remove tx fee from offer and trade
set dispute's disputePayoutTxId when payout observed
synchronize access to PersistenceManager.persistNow()
fix concurrent modification exception in OfferBookChartView
2023-02-11 16:50:32 -05:00
woodser
60dc4901e4 move trade wallet management functions from XmrWalletService to Trade
persist security deposits in TradePeer
set deposit tx and reserved key images when deposit tx created
listen to account service in trade manager
2023-02-07 14:31:03 -05:00
woodser
aafb47e2ce UI cleanup, can confirm payment sent and received after dispute opened
show buyer and seller trade fee in dispute summary window
remove "Error polling trade wallet warning" if disconnected
show notification when dispute opened or closed in legacy app
resolve disputes under Support > Arbitration, hide other views
show "support ticket opened" when dispute request is acked
rename all variations of TradingPeer to TradePeer
rename "payment started" to "payment sent" for consistency
2023-02-07 14:31:03 -05:00
napoly
a50e151c98 reduce debug logs for apache http client 2023-02-07 11:42:31 -05:00
woodser
15d2c24a82 reprocess payout messages on error to improve resilience
reprocess on curved schedule, restart, or connection change
invalid messages are nacked using IllegalArgumentException
disputes are considered open by ack on chat message
don't show trade completion screen until payout published
cannot confirm payment sent/received while disconnected from monerod
add operation manual w/ instructions to manually open dispute
close account before deletion
fix popup with error "still unconfirmed after X hours" for arbitrator
misc refactoring and cleanup
2023-02-02 15:23:48 -05:00
woodser
a0235c8ebd
add date and key images to SignedOffer
arbitrator retains failed trades after reserve tx received
legacy ui shows trade details including reserve tx, with or w/o contract
fix npe searching arbitrator tickets due to null payment accounts
synchronize offer book list items
fix npe before key image poller initialized
2023-01-26 08:26:22 -05:00
woodser
a49611a234 verify payout & dispute payout tx fees are within range of recreated tx 2023-01-16 16:27:15 -05:00
woodser
9260cf53ee verify arbitrator signature when dispute closed 2023-01-16 11:35:09 -05:00
woodser
cd7f176e2b fix 'trade not found' bug caused by open offer being spent
do not remove open offer with spent funds if reserved for trade
fix concurrent modification exception
2023-01-15 10:58:45 -05:00
woodser
308f6e8077 handle errors initializing trade after deposits requested
offer remains valid until trade initialized
delete maker and taker trades on error after deposits requested
schedule trade deletion if unfunded after timeout or startup
DepositResponse supports error message to confirm failure
show deposit tx ids in trade details window
2023-01-13 07:26:01 -05:00
woodser
646380bc7a minimum support for account witness verification & storage based on bisq
verify peer witness data and share with arbitrator for signing
arbitrator can sign witness hash, owner pub key (see developer-guide.md)
taker signs offer id nonce in SendOfferAvailabilityRequest
maker signs deposit tx hash in SendSignContractRequest
buyer verifies witness with payload on deposit confirmation
seller verifies witness with payload on payment sent message
add synchronization to User paymentAccountsAsObservable and elsewhere
2023-01-11 08:54:37 -05:00
woodser
2c3dabfbf7 recover from error closing dispute, show payout confirmation w/ tx fee 2022-12-30 18:49:07 +00:00
woodser
48baa1e602 use actual security deposits in dispute resolution 2022-12-30 18:49:07 +00:00
woodser
f2892d5157 close open disputes on trade completion 2022-12-27 12:56:36 +00:00
woodser
2d7654b8d7 verify maker and taker fees 2022-12-27 12:56:36 +00:00
woodser
1c6d4cec83 cache incoming txs to improve performance of funds tab 2022-12-23 16:21:24 +00:00
woodser
ad17228b38 separate withdraw tx fee and amount in ui 2022-12-23 08:53:26 +00:00
woodser
06c2ce432b take offer funded from available balance 2022-12-21 23:40:28 +00:00
woodser
e8242612b2 update haveno support links to monero.social, update unconfirmed warning 2022-12-21 15:29:12 +00:00
woodser
3a50397a61 remove taker fee tx check on pending trades initialized 2022-12-21 08:33:59 +00:00
woodser
e4046bd84e fix dispute and trader chat button and states
ui can open dispute after payment sent
ui indicates if dispute opened by self or peer
2022-12-21 08:33:59 +00:00
woodser
f13e1ec610 cannot open dispute until both deposits confirmed and available 2022-12-20 10:14:46 +00:00
woodser
05ba2ce305 show step progress while initializing trade 2022-12-19 11:26:19 +00:00
woodser
03b26fa423 fix visual dividers in offer detail windows 2022-12-18 18:50:46 +00:00
woodser
31dfdd7710 remove btc fee service 2022-12-16 09:16:11 +00:00
woodser
9fda20f88b update to new xmr price server api
remove timestamp data structure
2022-12-16 09:16:11 +00:00
woodser
2dc5481101 adjust QR code size and resolution 2022-12-04 14:38:22 +00:00
woodser
dd0a307a84 support funding make or take offer directly
QR code encodes payment URI
security deposit absorbs miner fee up to 5%
use binary search to maximize security deposit and minimize dust
show itemized funding popup on create offer
2022-12-04 14:38:22 +00:00
napoly
bd70b935e4 P2P status indicator with update prompt
Co-authored-by: jmacxx <47253594+jmacxx@users.noreply.github.com>
Co-authored-by: Christoph Atteneder <christoph.atteneder@gmail.com>
2022-12-01 10:14:07 +00:00
napoly
4cbc511bbd fix buyer trade info payout transaction ID hide if empty 2022-11-23 14:26:26 +00:00
napoly
27fdf87e84 fix dispute deposit transaction IDs in legacy UI 2022-11-23 09:55:35 +00:00
woodser
0d981a2df6 get trade account payloads over grpc, support crypto account forms 2022-11-23 09:42:43 +00:00
napoly
1f61e82946 fix transaction IDs in legacy UI trade info views 2022-11-13 07:45:25 -05:00
woodser
4fb62d8669 fix confirmation progress in ui
fix my role label to show during trade initialization
support arbitrator role label
2022-11-07 08:26:30 -05:00
woodser
247087ef46 refactor arbitration protocol
add dispute states and open/close messages routed through arbitrator
both traders publish dispute payout tx, winner is default
verify signatures of payment sent and received messages
seller sends deposit confirmed message to arbitrator
buyer sends payment sent message to arbitrator
arbitrator slows trade wallet sync rate after deposits confirmed
various refactoring, fixes, and cleanup
2022-11-07 08:26:30 -05:00
woodser
f36dde2857 refactor payout protocol
send payment key & multisig hex on deposit confirm for resilience
support payout published, confirmed, unlocked states
keep trade wallets open throughout trade
close and delete trade wallets when payout unlocks
arbitrator idles trade wallets after deposits confirm (1/hour)
2022-10-27 08:06:18 -04:00
woodser
e79450f65e fix trade is in an invalid state warning
Co-authored-by: duriancrepe <duriancrepe@protonmail.com>
2022-10-17 11:22:01 -04:00
duriancrepe
2eb275281e fix packageInstallers for all platforms 2022-10-12 10:42:34 -04:00
erciccione
868e6dabbb remove notarization process from gradle
Bisq commit 854c6218b3

Co-Authored-by: Christoph Atteneder <christoph.atteneder@gmail.com>
2022-10-06 09:25:18 -04:00
woodser
79021dc9c6 revert getters for peer and arbitrator node addresses to avoid NPEs 2022-10-04 15:35:01 -04:00
woodser
767f4cf8c0 reset address entries of taker's offer model when done
fixes the "outdated addressEntry" warning
2022-10-04 15:35:01 -04:00
woodser
dc9c04759f listen for published payout tx
fix "Swapping pending OFFER_FUNDING" warning
move payout tx from TradingPeer to Trade
2022-10-02 14:41:24 -04:00
woodser
5fbc41946e
refactor node addresses and pub key rings to TradingPeer (#460) 2022-10-01 13:29:38 -04:00
woodser
93472b9759
fixes based on refactored tests (#454)
log trade id with error
open dispute chat on user thread
fix null arbitrator signature by copying offer payload before modifying
2022-09-29 09:46:21 -04:00
DomPro11
6209c9578a
fix color scheme of offer book in market view (#443) 2022-09-24 08:36:47 -04:00
woodser
c5f5a5af42 process messages on user thread and protocol tasks off user thread 2022-09-24 08:36:07 -04:00
woodser
c21ebe6a9d normalize names of protocol tasks 2022-09-21 09:00:41 -04:00
jmacxx
6d8305c891 Prevent UI trading actions when there are no P2P connections. 2022-09-17 07:52:56 -04:00
woodser
3f5fe671cd decrypt payment info after confirmation for double spend protection
retrieve decryption key from arbitrator if peer fails to send
2022-09-17 07:28:04 -04:00
woodser
355a6146b6 add confirmed trade state 2022-09-17 07:28:04 -04:00
woodser
a51aeeb484 offer book view checks for invalid signer or signature
merge OfferFilter into OfferFilterService
2022-09-17 07:26:12 -04:00
woodser
dbc7ff265a show wallet transaction dates 2022-09-02 14:28:00 -04:00
woodser
24a8ecea2b funds tab shows num confirmations per receive address 2022-09-02 14:28:00 -04:00
woodser
3da228750f fix jfx error on offer book added 2022-09-02 14:28:00 -04:00
woodser
526a1b5f37 fix "Funds needed: .123 XMR (null)" bug 2022-08-17 14:49:49 -04:00
woodser
db6367c656 remove badge on support and settings tabs on startup 2022-08-17 14:49:49 -04:00
woodser
f464110fb5 update locked -> pending balance 2022-08-17 14:49:49 -04:00
woodser
c32550997d fix jfx error in SpreadView 2022-08-17 14:49:49 -04:00
erciccione
3e305b1ca6 trade agreement: add note at the top and change bisq -> haveno 2022-08-17 09:08:40 -04:00
erciccione
56412b749d improve some wording across the app 2022-08-17 09:08:21 -04:00
woodser
6fbfef029e fix price disappearing when first payment account created 2022-08-15 13:16:49 -04:00
woodser
f9d700074a cache txs fetched from daemon 2022-08-15 12:03:07 -04:00
woodser
3727d12ef6
select online, registered, and least used arbitrator (#400)
support registering and unregistering arbitrators over grpc
maker always sends InitTradeRequest to arbitrator
share original contract for comparision
remove backup arbitator from model
cleanup trade states
2022-08-13 09:47:33 -04:00
woodser
250f4be626 update confirming payment sent/received message 2022-08-12 08:23:39 -04:00
woodser
cebdef31c0 only remove trade if not in funded state
track sent vs seen deposit request state
cleanup trade phases
2022-08-09 14:21:38 -04:00
woodser
3753a42023 update to monero-project v0.18.0.0, monero-java v0.7.2 2022-08-08 13:45:46 -04:00
woodser
333b7421f5 cleanup trade states, consolidate protocol tasks, remove old tasks 2022-07-31 14:51:27 -04:00
woodser
3d43ae1f20 confirm payment sent and received off main thread 2022-07-31 14:51:27 -04:00
woodser
50126874a0 add multisig wallet state and wait for multisig to complete
refactor trade protocol
2022-07-31 14:51:27 -04:00
woodser
a5f457d8e9 fetch prices repeatedly when run as daemon 2022-07-29 18:04:35 -04:00