119 Commits

Author SHA1 Message Date
Dmitry Holodov
7619b9a6af updates for cross-chain bootnodes (#486) 2023-06-19 14:47:27 -05:00
Dmitry Holodov
8941163c00 USDT compatibility (#484) 2023-06-17 04:30:20 -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
noot
f2b880a40d fix: store newSwap tx in db, handle pending newSwap on restart (#470) 2023-05-21 21:41:55 -04:00
noot
8f566b6fbe feat: add transfer methods to swapcli (#462) 2023-05-04 14:26:26 -04:00
Dmitry Holodov
998347ded0 added new waitForNewSwapReceipt method for xmrmaker (#455) 2023-05-03 11:08:00 -05:00
Dmitry Holodov
e3c24b5e4a eth endpoint defaults and error handling (#451) 2023-05-02 23:12:45 -05:00
noot
dd70cca012 release: update mainnet contract (#452) 2023-05-02 15:26:40 -04:00
Dmitry Holodov
df057ac5cd time index shift (#450) 2023-05-02 10:52:28 -05:00
noot
fb95751dda feat: update SwapCreater.sol claimRelayer to no longer use forwarder (#449)
Co-authored-by: Dmitry Holodov <dimalinux@protonmail.com>
2023-05-01 19:23:17 -04:00
Dmitry Holodov
f9a63ff7c3 min and max offer amount checks (#445)
Co-authored-by: noot <36753753+noot@users.noreply.github.com>
2023-04-30 17:36:31 -05:00
Dmitry Holodov
caa5251e59 move to gsnforwarder that is bytecode identical on mainnet and dev (#427) 2023-04-26 13:55:00 -05:00
noot
83d4cee884 release: mainnet contract address, set env defaults to mainnet (#417) 2023-04-25 19:18:29 +02:00
noot
177b96da76 contract comment updates (#415) 2023-04-25 08:43:03 -04:00
noot
9cc39e84da solc optimize contract bytecode (#414) 2023-04-25 08:02:56 -04:00
noot
3c2ea1e580 fix contract semver (#410) 2023-04-24 17:06:10 -04:00
noot
dc64531325 fix: add SweepingXMR status, fixes restart during sweep (#399)
Co-authored-by: Dmitry Holodov <dimalinux@protonmail.com>
2023-04-24 16:44:26 -04:00
noot
5426ebecdc fix: update event watcher to not checks blocks twice (#408) 2023-04-23 15:27:54 -05:00
noot
5d49051f39 fix: a few more contract checks (#398)
Co-authored-by: Dmitry Holodov <dimalinux@protonmail.com>
2023-04-23 11:33:58 -04:00
drank40
d9334f1605 fix: modified struct initialization syntax in contract (#406) 2023-04-23 11:09:51 -04:00
noot
c4a5e12615 small additions to contract unit tests (#388) 2023-04-19 12:23:36 -04:00
Dmitry Holodov
59c10d8d03 upgraded go version and dependencies (#390)
Co-authored-by: noot <36753753+noot@users.noreply.github.com>
2023-04-19 10:49:39 -04:00
noot
f344d09fc6 add AUTHORS file and update copyright in license header (#389) 2023-04-18 12:25:30 -04:00
noot
c0c87e8ecb contract updates and cleanup (#382)
Co-authored-by: Dmitry Holodov <dimalinux@protonmail.com>
2023-04-17 13:49:53 -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
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
fea16bc0fe update contract to allow setting t0/t1 separately (#364) 2023-04-05 14:54:55 -04:00
noot
b26228805c add license header to files; update readme disclaimer (#368) 2023-04-04 13:12:12 -04:00
noot
b83f57e60c move stagenet from goerli to sepolia (#363)
Co-authored-by: Dmitry Holodov <dimalinux@protonmail.com>
2023-03-30 23:53:13 -04:00
noot
4c3caedcc3 fix: remove ws eth endpoint requirement, update taker exit (#358) 2023-03-28 10:21:28 -04:00
Dmitry Holodov
528715b602 swapd daemon setup/start decoupled from CLI parsing (#354) 2023-03-25 19:18:51 -05:00
Dmitry Holodov
0e80eee4dc integrated relayer into swapd (#342) 2023-03-17 14:22:16 -05:00
noot
baea93c839 fix xmrmaker exit when claim fails (#347) 2023-03-11 23:03:01 -06:00
noot
0f346d76fc fix contract claimRelayer vulnerability (#348)
Co-authored-by: Dmitry Holodov <dimalinux@protonmail.com>
2023-03-11 21:36:25 -05:00
Dmitry Holodov
51d89a4d18 added more required tags to serialized structs (#330) 2023-02-28 22:41:03 -06: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
Dmitry Holodov
94a67b9949 swapd error on subcommand (#311) 2023-02-20 15:05:38 -06: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
f65e5b6a77 global solidity imports (#310)
* Switched to solc to v0.8.17
* Uses selective solidity symbol imports
2023-02-18 18:15:24 -06:00
Dmitry Holodov
bb9a50dd7f upgrade linter (#297)
Upgraded linter to 1.50.1 and improved protocol documentation.
2023-02-07 22:31:06 -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
noot
ea43b6a86c feat: implement swap relayer cmd package (#282) 2023-01-25 01:17:55 -05:00
Janaka-Steph
d13521daef Modify scripts to run on MacOS (#233)
Updates scripts/docs to support macOS as well as Linux/aarch64 (arm64)
2023-01-16 14:05:35 -06:00
Dmitry Holodov
b78cf06870 check ethereum chain ID (#278)
validates that the expected chain ID for the given environment matches the chain ID returned by the ethereum endpoint
2023-01-14 14:20:02 -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
a25f62ee3d update forwarder code check (#255) 2022-12-09 15:00:20 -05:00
noot
f9aaa5e9d1 add forwarder contract code check (#253) 2022-12-06 21:46:04 -05:00