Commit Graph

97 Commits

Author SHA1 Message Date
Dmitry Holodov
7619b9a6af updates for cross-chain bootnodes (#486) 2023-06-19 14:47:27 -05:00
Dmitry Holodov
9e3ef7b527 ETH transfer fixes and sweep ETH addition (#481) 2023-06-09 01:43:11 -05:00
Dmitry Holodov
0f1865c33f additonal erc20 and taker decimal checks (#478) 2023-05-30 21:49:22 -05:00
Matt
0caff397ce add relayer fee to swapcli past (#474) 2023-05-22 23:00:46 -05:00
Dmitry Holodov
c5bd052620 query-all no longer reports peers with no current offers (#476) 2023-05-21 19:26:58 -05:00
Dmitry Holodov
0ab11176c4 unified RPC/websockets client (#472) 2023-05-20 16:29:42 -05:00
Dmitry Holodov
f41c9af432 ensure that the status channel is always initialized (#471) 2023-05-20 16:04:26 -04:00
Dmitry Holodov
0abc9e6139 fix: bootnode version RPC call (#467) 2023-05-08 21:19:19 -04:00
Matt
3859162e58 add prometheus metrics (#464) 2023-05-07 13:39:31 -06:00
noot
8f566b6fbe feat: add transfer methods to swapcli (#462) 2023-05-04 14:26:26 -04:00
noot
1d8dff524e fix: add Claimed log watcher to xmrmaker (#459) 2023-05-04 11:48:15 -04:00
Dmitry Holodov
df057ac5cd time index shift (#450) 2023-05-02 10:52:28 -05:00
noot
c131112da1 feat: close stream after NotifyETHLocked is sent (#446) 2023-05-01 23:03:26 -04:00
bing
b3dcb96074 feat: update GetPast() and GetOngoing() to sort from newest to oldest (#448) 2023-04-30 17:57:49 -05:00
noot
19014027a0 fix: move counterparty-relay checks to backend (#442) 2023-04-28 13:04:26 -04:00
noot
82733bc375 feat: swapcli commands to manually claim/refund and for database functions (#441) 2023-04-28 12:14:08 -04:00
noot
4c10263ebd fix xmrtaker key overwrite on restart (#423) 2023-04-26 12:22:04 -04:00
noot
dbcc97f9c1 feat: add bootnode binary (#397) 2023-04-21 12:52:07 -04:00
noot
0a90f6bd4d implement database rpc service for querying recovery DB (#383) 2023-04-19 12:51:51 -04:00
noot
f344d09fc6 add AUTHORS file and update copyright in license header (#389) 2023-04-18 12:25:30 -04:00
Dmitry Holodov
15b8378c76 ERC20 balance support (#380)
* Added --token flag to swapcli's balances request allowing the user to query their token balance
* --eth-asset flag on swapcli make changed to --token
* Added TokenInfo RPC API method to retrieve an ERC20 token's metadata
* Added an end-to-end ERC20 unit test to the daemon package
* Fixed ERC20 token approval amount to SwapCreator contract to use the minimum value required (instead of approving the entire user's balance for transfer by the contract)
* Fixed a race condition between concurrent contract calls to approve/new_swap in ERC20 token swaps
* Removed hard coded assumptions that all tokens have 18 decimals
* Maked the decimal places in our test ERC20 token configurable
* Fixed token exchange rate calculations
* Updated ongoing and past swap queries to correctly support ERC20 tokens
* Initial unit tests in swapcli's main package
2023-04-17 11:59:47 -05:00
Matt
8bd9281a4e swapd version & shutdown (#379) 2023-04-14 17:35:00 -05:00
Dmitry Holodov
a17f95d414 SwapFactory to SwapCreator rename, upgrade to solc 0.8.19 (#372) 2023-04-09 03:08:17 -05:00
Dmitry Holodov
7fef2d7b76 XMR taker is relayer of last resort for the maker (#366)
Co-authored-by: noot <36753753+noot@users.noreply.github.com>
2023-04-05 20:16:41 -05:00
noot
4545aff7cd remove swap_refund in favour of swap_cancel (#371) 2023-04-04 20:52:27 -04:00
noot
b26228805c add license header to files; update readme disclaimer (#368) 2023-04-04 13:12:12 -04:00
noot
4c3caedcc3 fix: remove ws eth endpoint requirement, update taker exit (#358) 2023-03-28 10:21:28 -04:00
noot
58d94723e1 add estimated time for swap to complete for swap_getOngoing (#351) 2023-03-20 22:49:17 -04:00
noot
310bafbc7e update swap_getPast to match swap_getOngoing; update docs (#350) 2023-03-19 20:27:31 -04:00
Dmitry Holodov
0e80eee4dc integrated relayer into swapd (#342) 2023-03-17 14:22:16 -05:00
Dmitry Holodov
51d89a4d18 added more required tags to serialized structs (#330) 2023-02-28 22:41:03 -06:00
noot
b097cbbba4 add timeouts to swap.Info (#331)
Co-authored-by: Dmitry Holodov <dimalinux@protonmail.com>
2023-02-27 20:31:03 -05:00
noot
f7d244754c update relayer fee to be fixed at 0.009 ETH (#316) 2023-02-25 13:04:58 -05:00
Dmitry Holodov
1d7c00a8ed dedicated monero address type (#327)
Adds custom type for monero addresses with better validations.
2023-02-25 11:18:16 -06:00
noot
59eaccaa0c feat: add start/end times to swap.Info and swap RPC returns (#317) 2023-02-22 09:59:47 -05:00
Dmitry Holodov
8ca306af68 added JSON marshaling support to the Status type (#323) 2023-02-22 09:25:28 -05:00
Dmitry Holodov
b157adc28b JSON validation (#309)
Integrates the go-playground validator library into our codebase for objects that are serialized/deserialized.
2023-02-18 18:37:52 -06:00
Dmitry Holodov
943e95cc11 JSON updates (#305)
* ensures  all p2p message types have JSON tags
* when available, marshaling uses our project types
* "common" package was decoupled from the "message" package
* protocol version bumped
2023-02-16 01:15:58 -06:00
noot
17ab2f11ff feat: add relayer discovery and transaction submission via network (#291)
Co-authored-by: Dmitry Holodov <dimalinux@protonmail.com>
2023-02-03 19:01:32 -05:00
Dmitry Holodov
82a3f884d4 reduce monero wallet contention (#285)
Сreates a new monero-wallet-rpc instance for temporary swap wallets, eliminating the need for monero wallet locks.
2023-01-29 14:10:23 -06:00
noot
8e1db226fd implement suggested exchange rate (#262)
Pulls chainlink's ETH and XMR price feeds to create suggested exchange rates.
Co-authored-by: Dmitry Holodov <dimalinux@protonmail.com>
2023-01-12 22:50:52 -06:00
Dmitry Holodov
2905d1b1f9 Fixed Point Math (#269)
Updates our code to use the fixed point match library apd.Decimal.
2023-01-10 16:03:22 -06:00
noot
5068dab46a remove previous net/* contents, move net/swapnet/* to net/ (#270) 2023-01-09 17:09:11 -05:00
noot
3ef8ae9427 refactor net package to separate generic and swap-specific functionality (#268) 2023-01-08 09:59:34 -05:00
Dmitry Holodov
ed15ed9c82 libp2p QUIC and NAT traversal features (#251)
Enables additional libp2p NAT traversal features and enables nodes to communicate using UDP/QUIC in addition to TCP. Switches to using libp2p's "routed host". Most commands that previously accepted multiaddress values now accept a Peer IDs instead.
2022-12-19 18:25:24 -06:00
phazejeff
b6f07845b9 feat: get-swap-timeout functionality (#260) 2022-12-19 14:59:30 -05:00
Dmitry Holodov
1e83673f23 add package comments (#236)
package comments added to all packages
2022-12-02 00:43:32 -06:00
noot
21c2f2a585 implement auto-recover for xmrtaker (#238) 2022-11-24 07:09:14 -05:00
noot
cac8928e22 implement auto-recover for xmrmaker (#235) 2022-11-22 07:14:44 -05:00
noot
04cd5b4809 store swap recovery information in database, remove "infofile" (#227) 2022-11-19 10:52:15 -05:00