Commit Graph

363 Commits

Author SHA1 Message Date
tecnovert
06065958b7
ui: Fix xmr svg path, edit offer automation strategy. 2023-02-21 00:08:18 +02:00
tecnovert
09cc523ac3
Added restrict_unknown_seed_wallets setting. 2023-02-19 21:52:22 +02:00
tecnovert
577849f01c
api: Start automationstrategies 2023-02-19 16:31:11 +02:00
tecnovert
b6046fdbf3
api: getcoinseed shows seed id 2023-02-18 01:47:44 +02:00
tecnovert
c2d6cdafdd
ui: Don't show bids on expired offers as available. 2023-02-18 00:07:27 +02:00
tecnovert
c322c9ae0c
Add total_bids_value_multiplier to automation strategies.
order value is the max value of a bid that can be accepted.
order value * total_bids_value_multiplier is the max sum of all bids that can be accepted.
2023-02-17 22:51:49 +02:00
tecnovert
c13606ab54
Improve log output for unprocessed revoke messages.
issue #24
It's normal for a node to receive revoke messages for offers it does not have.
A node will ignore offers for coins that are active.
2023-02-17 00:09:16 +02:00
tecnovert
2922b171a6
Load in-progress bids only when unlocked. 2023-02-16 22:57:55 +02:00
tecnovert
ac16fc07a4
Add automation override option. 2023-02-16 10:38:38 +02:00
tecnovert
dc0bd147b8
tests: Add script test 2023-02-14 23:35:11 +02:00
tecnovert
553af1a3e8
api: Add include_sent offers filter. 2023-01-11 10:35:14 +02:00
tecnovert
c4321b7740
Add PARTct to coin code. 2022-12-20 22:19:01 +02:00
tecnovert
80a78b4070
preparescript: Download BTC utxo snapshot first, allow resume. 2022-12-14 00:20:53 +02:00
tecnovert
5ce178e673
Fix checkWalletSeed 2022-12-13 07:56:46 +02:00
tecnovert
ef6653a8db
coins: Encrypt wallets before importing seeds, allow BTC to start without wallet.
Create BTC wallet on unlock if missing.
2022-12-13 00:12:28 +02:00
tecnovert
2a9e423eaa
Handle lost noscript lock transaction. 2022-12-11 20:31:43 +02:00
tecnovert
6860279faa
tests: Add prefunded itx and xmr protocol tests 2022-12-11 01:26:42 +02:00
tecnovert
0e1cb6d03d
Support xmr-protocol swaps to BTC and PART 2022-12-08 03:42:59 +02:00
tecnovert
7d43512845
xmr: Add prefunded itx. 2022-12-08 03:33:14 +02:00
tecnovert
c90fa6f2c6
system: Allow preselecting inputs for atomic swaps. 2022-12-05 17:04:23 +02:00
tecnovert
a250daca8b
xmr: Ensure incoming transfers are unlocked. 2022-12-02 13:58:26 +02:00
tecnovert
789cd0f6ab
system: Reload cached swaps on session errors 2022-12-01 20:51:06 +02:00
tecnovert
2a35148a4b
xmr: Support daemon rpc login details. 2022-11-28 19:54:41 +02:00
tecnovert
ba5339d8bd
ui: Add sent offer status filter. 2022-11-18 23:34:57 +02:00
tecnovert
6e5c54b447
ui: Send locked status to templates. 2022-11-18 23:31:52 +02:00
tecnovert
c5f31f0d1e
ui: Add wallet encryption templates.
tests: Test wallet encryption.
2022-11-18 00:58:14 +02:00
tecnovert
0f7df9e5f1
preparescript: Add WALLET_ENCRYPTION_PWD env var.
Removed unnecessary START_DAEMONS env var.
Remove all cached addresses from the basicswap db for a wallet after reseeding.
Check that addresses retreived from the db are owned by teh wallet before they're used/displayed
2022-11-17 00:36:13 +02:00
tecnovert
b43d58afbf
api: Add wallet/createutxo 2022-11-15 23:50:36 +02:00
tecnovert
8022ada01f
Fix xmr self bid. 2022-11-14 21:49:06 +02:00
tecnovert
54e434e1c9
ui: Connect new settings. 2022-11-13 23:18:33 +02:00
tecnovert
bbe7556d18
Disable v23 descriptor wallets.
Missing sethdseed, signmessage doesn't work and dumprivkey is missing (preventing a workaround).
2022-11-12 22:17:49 +02:00
tecnovert
fc31615a97
api: Add wallet lock/unlock commands and getcoinseed. 2022-11-12 18:22:23 +02:00
tecnovert
ae2ddc4049
Log events for all sent transactions. 2022-11-08 23:07:58 +02:00
tecnovert
8b2d2b446b
api: Add show_extra parameter to bids endpoint
Add itx_refund_tx_est_final and ptx_refund_tx_est_final to bid extra data
2022-11-08 22:30:28 +02:00
tecnovert
c440f9e3a3
coins: Fix Firo seedid 2022-11-08 16:43:44 +02:00
tecnovert
ca264db0d0
Add non-segwit Firo support.
Rework tests to combine atomic and xmr test cases.
Modify btc interface to support P2WSH_nested_in_BIP16_P2SH
Add coin feature tests to test_btc_xmr.py
2022-11-08 13:14:03 +02:00
tecnovert
f210024e93
coins: Decode pivx v3 transactions correctly. 2022-10-26 17:47:30 +02:00
tecnovert
50ed1bfccf
For CLTV coins check the lock value relative to the current time rather than the bid creation time. 2022-10-25 23:28:02 +02:00
tecnovert
59fb6c18ed
coins: Rename Pivx -> PIVX 2022-10-24 20:49:36 +02:00
tecnovert
a9f3eeefff
ui: Fix notifications. 2022-10-21 21:05:46 +02:00
tecnovert
3c2eb5f9f8
ui: Format notification timestamps. 2022-10-21 20:51:50 +02:00
tecnovert
aa14da27af
dash: Fix initialiseWallet
Only the upgradetohd command sets the hdseed
upgradetohd can only run once the chain is synced

Basicswap stores the hash of the root_key in it's db to check for the expected seed.
Prefer not to store the real key.
2022-10-21 18:39:19 +02:00
tecnovert
7298867e18
dash: Add to prepare script. 2022-10-20 22:23:25 +02:00
tecnovert
9fc4fe3b79
debug: Reduce default min_sequence_lock_seconds when debug mode is active. 2022-10-18 21:18:18 +02:00
tecnovert
468d8c5cc1
xmr swap: Set correct block height on refund_tx. 2022-10-18 19:59:46 +02:00
tecnovert
842027f114
pivx: Add expected error string for stopDaemon when .cookie exists. 2022-10-14 00:58:54 +02:00
tecnovert
6ae8651d1b
ui: Hide all except 'Reseed Wallet' button if expected_seed is false. 2022-10-13 23:16:43 +02:00
tecnovert
eb9eb49bd9
Persistent notifications. 2022-10-13 22:32:53 +02:00
tecnovert
c7bbdc7022
Fail with more descriptive error when processing message involving inactive coin. 2022-10-12 22:37:35 +02:00
tecnovert
3ed6781c9f
Ignore undecryptable messages when expiring. 2022-10-12 20:48:26 +02:00
tecnovert
58a2707526
merge: Fix merge and lint issues. 2022-10-11 07:55:35 +02:00
gerlofvanek
9495249e70 GUI v.01
-
2022-10-10 23:44:14 +02:00
tecnovert
ef0f5ea1ea
protocol: Validate CLTV block values 2022-09-26 19:20:52 +02:00
tecnovert
46d1856f71
ui: Render 404 for unknown pages.
Wait for wallet update to complete, to handle corner case where user opens wallet page before refreshing.
Withdraw txn in selenium test.
2022-09-23 22:07:41 +02:00
tecnovert
afba673085
refactor: Use persistent connection when expiring messages. 2022-09-11 17:35:18 +02:00
tecnovert
d74699992b
coins: Add PIVX
No CSV or segwit.
sethdseed requires a fully synced chain, manual intervention required to set a key derived from the master mnemonic.
Requires a pivxd version with a backported scantxoutset command.
2022-09-01 12:37:18 +02:00
tecnovert
e4e35b0d89
preparescript: Fix addcoin 2022-08-18 00:23:51 +02:00
tecnovert
48e5dcbcc9
refactor: Add createRawSignedTransaction to interface 2022-08-16 20:53:58 +02:00
tecnovert
b179667cc5
ui: Fix missing coin from data. 2022-08-10 23:58:53 +02:00
tecnovert
20c0c372d0
refactor: Move all coin interfaces to a dir 2022-08-09 00:10:37 +02:00
tecnovert
80f0098a3d
ui: Rates table example 2022-08-04 11:47:27 +02:00
tecnovert
412770d399
ui: rateslist returns js list of rates. 2022-08-03 23:59:57 +02:00
tecnovert
1c4f208d27
refactor: E275 missing whitespace after keyword 2022-07-31 20:09:43 +02:00
tecnovert
1601a57aed
ui: Add websocket notifications. 2022-07-31 19:33:01 +02:00
tecnovert
871bdb918e
ui: Update to bittrex v3 api. 2022-07-28 17:01:11 +02:00
tecnovert
cd5af7032f
ui: Use coin tickers as wallet keys in json/wallets 2022-07-25 23:10:58 +02:00
tecnovert
8b09607083
tests: Prevent out of sequence refund in test_13_itx_refund 2022-07-21 00:27:22 +02:00
tecnovert
fa74b9982c
tests: Add xmr swap failure states to tests. 2022-07-20 00:24:14 +02:00
tecnovert
2c49d13aa0
tests: Add non xmr swap failure states to tests. 2022-07-18 22:57:16 +02:00
tecnovert
ede01d3fc8
tests: Start wallet restore test.
Fix LTC pidfile in config.
Update LTC onion port for core version 21.
2022-07-15 17:04:24 +02:00
tecnovert
868dc27d64
ui: Add indication when XMR node is bootstrapping 2022-07-06 15:32:44 +02:00
tecnovert
91e285bf4a
ui: Split wallet cached data into balance and blockchain state.
Add XMR synced indicator.
2022-07-06 00:46:37 +02:00
tecnovert
0580f9ebac
tests: Fix NMC tests. 2022-07-04 22:29:49 +02:00
tecnovert
0c620ea388
doc, tests: Test sequence diagrams are accurate.
Add delay between detecting PTX and redeeming ITX.
Add bid state history to json api.
Hide Tx none states in bid state history.
2022-07-03 23:58:16 +02:00
tecnovert
a2afd3f00f
refactor: Separate MSG4F and lock txn sending 2022-07-01 16:37:10 +02:00
tecnovert
3976b9c203
tests: Fix ci tests. 2022-06-29 13:46:25 +02:00
tecnovert
d5e35b8168
doc, ui: Add sequence diagrams 2022-06-29 01:45:46 +02:00
tecnovert
e7a62a6a82
debug: Log auto accepting event. 2022-06-22 22:51:39 +02:00
tecnovert
b64437db84
coins: Raise Litecoin version to 0.21.2 2022-06-16 15:58:59 +02:00
tecnovert
a51a895141
docker: Manually install protobuf to avoid error.
Error: "TypeError: Descriptors cannot not be created directly"

Use pycryptodome ripemd160 implementation else it must be manually enabled in hashlib/openssl.
2022-06-16 14:28:52 +02:00
tecnovert
cddc4daf70
ui: Show offer amount swapped. 2022-06-16 00:19:06 +02:00
tecnovert
3ed6eca95f
ui: Show bids that can be accepted. 2022-06-15 00:35:33 +02:00
tecnovert
0edcf249aa
refactor: Add bid states to db. 2022-06-11 23:56:21 +02:00
tecnovert
89c60851ac
automation: Accept multiple concurrent bids. 2022-06-08 22:23:44 +02:00
tecnovert
d909115ea4
refactor: Rename EventQueue table to Action 2022-06-06 23:03:31 +02:00
tecnovert
0c2c86070f
preparescript: --usebtcfastsync option will initialise the BTC datadir from a chain snapshot. 2022-06-04 23:08:22 +02:00
tecnovert
6153b76ec0
ui: Allow selecting automation strategy when creating offer.
Add alternate pgp key urls.
2022-06-01 00:38:50 +02:00
tecnovert
8daa76f937
refactor: Add automation tables. 2022-05-23 23:51:06 +02:00
tecnovert
88c94c4acd
Set default anon tx ring size to 12 and add setting. 2022-04-11 00:11:51 +02:00
tecnovert
a5b192b931
Tor working for Bitcoin forks. 2022-03-27 00:08:15 +02:00
tecnovert
d1e015962c
basicswap-prepare can enable and disable tor config. 2022-03-24 00:00:35 +02:00
tecnovert
67518efcad
ui: Add option to create sized utxo. 2022-01-24 23:32:48 +02:00
tecnovert
f90a96d9ca
ui: Split wallet page 2022-01-23 14:01:01 +02:00
tecnovert
76c7a281bb
Fix getProofOfFunds failure. 2022-01-03 12:05:44 +02:00
tecnovert
1658a6fc54
Fix refunding Particl Anon lock tx. 2022-01-02 01:42:49 +02:00
tecnovert
ce5aa0a13b
Fix load bid failure case. 2022-01-02 00:20:30 +02:00
tecnovert
3e5c3e1e6a
Make errors in activateBid non fatal. 2022-01-02 00:08:09 +02:00
tecnovert
3ba551c9da
Use getblockhashafter command in getWalletRestoreHeight. 2022-01-01 23:30:32 +02:00
tecnovert
1476ad3cec
Check available balance before sending xmr bid 2022-01-01 22:55:39 +02:00
tecnovert
65951220b8
Fix bug when manually redeeming noscript lock tx with invalid amount. 2021-12-31 21:49:12 +02:00
tecnovert
55275a6470
ui: Display estimate of when lock refund tx will be swipeable. 2021-12-19 14:15:32 +02:00
tecnovert
a802788cfd
tests: Manual recovery of xmrswap chain B lock tx 2021-12-19 10:55:29 +02:00
tecnovert
f289bcf2e8
Use unique key_nos for getPathKey. 2021-12-19 08:59:35 +02:00
tecnovert
e502a00341
ui: Recover noscript txn if remote key is known. 2021-12-19 01:45:17 +02:00
tecnovert
82e2b128c9
Log events when xmr refund and refund spend txns are seen. 2021-12-16 14:26:59 +02:00
tecnovert
4a7eff0118
Log traceback to file in debug mode. 2021-12-16 10:44:10 +02:00
tecnovert
053c263751
ui: Add option to set debug tweak option from bid page. 2021-12-15 16:14:23 +02:00
tecnovert
d51de1f680
Add anon and blind Particl to validateSwapType 2021-12-10 09:50:36 +02:00
tecnovert
4b7b16145f
ui: Identity labels 2021-12-06 01:06:34 +02:00
tecnovert
1e01851152
ui: Display XMR subaddress on wallets page. 2021-12-04 12:44:27 +02:00
tecnovert
cd4103ce3e
tests: Deduplicate test_run.py 2021-11-27 17:58:58 +02:00
tecnovert
58e4b506fe
ui: Add debug ind option. 2021-11-27 01:02:51 +02:00
tecnovert
fa0600fca3
Use separate chain to generate smsg addresses. 2021-11-26 03:14:15 +02:00
tecnovert
f459a6295e
ui: Add pagination to the bids page. 2021-11-25 15:01:47 +02:00
tecnovert
dd7440b897
Create CachedMainWalletAddress if missing. 2021-11-24 23:54:31 +02:00
tecnovert
99534756de
Variable bid amount and rate. 2021-11-22 22:24:48 +02:00
tecnovert
8a9f4f9e38
ui: Add rate lookup helper when creating offers. 2021-11-21 22:59:39 +02:00
tecnovert
fafcfa4731
ui: Display watched outputs once per coin. 2021-11-15 01:47:49 +02:00
tecnovert
20c59663c1
Count failed and successful bids by peer address. 2021-11-15 01:26:43 +02:00
tecnovert
b152150932
ui, xmr: List of candidate remote XMR daemon urls can be set through the http ui 2021-11-13 23:15:09 +02:00
tecnovert
eff5235205
xmr: Check for existing spend of lock tx 2021-11-12 17:55:23 +02:00
tecnovert
d2b05fd57e
coins: Add startup_tries setting 2021-11-10 13:06:48 +02:00
tecnovert
b8ea028d04
ui: Skip cached info if coin was disabled 2021-11-09 17:26:26 +02:00
tecnovert
0cf3f8e3b3
ui: Can display chain A lock tx inputs. 2021-11-06 00:34:25 +02:00
tecnovert
edddf9158a
refactor: Remove encodeSegwitP2WSH and getScriptAddress 2021-11-05 11:39:25 +02:00
tecnovert
1d932cdd01
protocol: Add protocol version to order and bid messages
Move chain start heights to bid, use avoid scantxoutset for decred style swaps
2021-11-04 23:49:52 +02:00
tecnovert
8259df4399
doc: Simplify Windows install notes. 2021-11-03 23:20:19 +02:00
tecnovert
6e82961da9
particl: Can swap PARTct -> XMR 2021-11-01 15:52:40 +02:00
tecnovert
1ef71ea79b
particl: Can swap anon outputs 2021-10-23 16:00:32 +02:00
tecnovert
6dd6063182
refactor: Replace asserts. 2021-10-22 00:47:04 +02:00
tecnovert
6a9e759629 xmr: Cache main wallet address 2021-10-20 21:52:06 +02:00
tecnovert
a40519737d protocol: Enable private offers
Users can send private offers that will only be seen by one address.

To send a private offer:
 1. recipient creates a new address to receive offers on
 2. recipient sends the pubkey for the newly created address to the offerer
 3. offerer imports the recipient's pubkey
 4. offerer sends a new offer to the recipients key instead of the public network

Nodes will ignore offers sent on keys other than the network key or keys created for offer-receiving.
2021-10-20 21:50:45 +02:00
tecnovert
f63815b26b
ui: Add page to manage SMSG addresses 2021-10-19 20:59:18 +02:00
tecnovert
4ce8c58872
ui: Reseed wallet must trigger update 2021-10-18 22:28:42 +02:00
tecnovert
bf00f80b4d
ui: Start describing xmr bid states. 2021-10-18 20:48:48 +02:00
tecnovert
062283c31a
ui: Improved wallets page. 2021-10-15 01:13:48 +02:00
tecnovert
146c9b784c
Change connection errors to warnings. 2021-09-02 22:42:26 +02:00
tecnovert
2be16465fb
preparescript: Support production docker config. 2021-06-30 16:37:21 +02:00
tecnovert
398ef268a6
Raise Bitcoin, Particl and Monero versions. 2021-06-25 23:02:54 +02:00
tecnovert
bbd3d701c0
preparescript: Fix UI_HTML_PORT bug.
Warn on os.chmod failure, workaround for mounted ntfs volumes.

client: Set delay_event in stopRunning()
Raise version
2021-02-16 23:41:07 +02:00
tecnovert
a5dcd9f77d
refactor: Move getTicker() to coin interface. 2021-02-16 01:20:24 +02:00
tecnovert
6516c6d138
client: Hide offers where coins are not enabled.
Better rate calculation.
2021-02-15 23:49:18 +02:00
tecnovert
5beb1d17b9
ui: Expose bid valid for.
Set smsgsregtestadjust to false in tests.
Fix offer smsg valid for.
Set active_ind on bid records.
api: All times returned should be in unix-time.
2021-02-15 15:34:47 +02:00
tecnovert
1953820cd1
client: Bug fix, coin_name() is capitalised. 2021-02-14 16:53:44 +02:00
tecnovert
d6a1ff6030
docker: Set timezone in TZ env var. 2021-02-14 15:06:46 +02:00
tecnovert
e3033799b0
ui: Enable/disable coins through settimgs page. 2021-02-14 12:12:41 +02:00
tecnovert
36a40b5fa3
ui: Expose offer valid time. 2021-02-14 00:54:01 +02:00
tecnovert
f2018184e7
protocol: Start adding anon particl option. 2021-02-11 16:01:47 +02:00
tecnovert
c4fc2c70dc
api: Add withdraw. 2021-02-07 12:01:58 +02:00
tecnovert
b1ea76dcb6
ui: Expose Particl blinded and anon balances. 2021-02-07 00:35:12 +02:00