Commit graph

65 commits

Author SHA1 Message Date
c4feeccb66
enable use of pyaes package for testing 2026-05-21 12:09:33 +00:00
3d8e98f31e
crypto.Crypto: new encrypt_aes_ctr() method 2026-05-21 12:09:33 +00:00
e092f44ace
minor testing fixes 2026-05-17 18:03:37 +00:00
c406336ca4
update coin daemon support (BTC, LTC, BCH, Geth)
- Bitcoin Core       v31.0.0
- Litecoin Core      v0.21.5.4
- Bitcoin Cash Node  v29.0.0
- Go-Ethereum        v1.17.2
2026-04-27 13:52:10 +00:00
5529e7ed9f
minor fixes and cleanups 2025-10-26 10:35:54 +00:00
2b7080c227
subprocess.run(): use text arg (10 files) 2025-10-03 10:34:04 +00:00
6ef0aef487
whitespace, minor cleanups (5 files) 2025-10-03 10:34:04 +00:00
f44ca874ec
cmdtest_d.httpd: initialize with cfg 2025-10-03 10:34:04 +00:00
4b55f1158e
btc.tx.base.decodeScriptPubKey(): reimplement, parse nulldata correctly 2025-09-29 23:09:17 +00:00
3749ff4d7e
whitespace, variable renames (8 files) 2025-09-26 10:40:23 +00:00
d54ed9d427
modtest.py seedsplit, subseed: refactor 2025-09-26 10:40:23 +00:00
4c2df87e54
minor fixes and cleanups 2025-09-26 10:40:23 +00:00
8de9022c63
CoinAmt.fmt(): reimplement using match statement, add test 2025-09-26 10:40:23 +00:00
4573e170ed
test suite: use match statement where practicable (21 files) 2025-09-23 09:20:53 +00:00
2d01fbc45c
use hashlib keccak256() function if available
Available if Python compiled with OpenSSL 3.2 or greater (Python >= 3.13)
2025-09-23 09:20:53 +00:00
9e62934151
test suite: support ethkey as alternative to eth-keys 2025-09-15 09:28:41 +00:00
0952cc80a3
various testing fixes 2025-09-09 11:27:05 +00:00
bf783fc074
test.include.unit_test: improve altcoin test skipping code 2025-09-09 11:27:04 +00:00
8fde11eb46
modtest ecc: use ecdsa package for reference sig check 2025-07-19 10:21:06 +00:00
60ca7a2918
eth: sign transactions with libsecp256k1 2025-06-29 14:53:50 +00:00
7a20e5edc7
rune: sign transactions with libsecp256k1 2025-06-29 14:04:46 +00:00
730a112f69
extmod/secp256k1mod.c: add sign, verify, pubkey recover funcs 2025-06-29 14:04:46 +00:00
a8fe14756d
TestProxy: start and stop proxy only when required 2025-06-18 12:55:52 +00:00
bc4d3791ac
new test.cmdtest_d.include.proxy module 2025-06-16 14:35:25 +00:00
c83c37d8dd
SwapAsset: remove asset property 2025-06-15 09:17:02 +00:00
5c83192bfd
minor cleanups 2025-06-13 10:23:50 +00:00
55e59cee12
RUNE low-level transaction support
Testing:

    $ test/modtest.py rune
2025-06-10 17:47:03 +00:00
9e280bed37
THORChainMemo.parse(): return SwapAsset instance in tuple 2025-06-10 17:47:03 +00:00
ba3b40c5b6
support THORChain address generation
Example:

    $ mmgen-addrgen --coin=rune 1-10

Testing:

    $ test/tooltest2.py -q --coin=rune
    $ test/modtest.py -v bip_hd.multicoin
2025-05-21 09:13:42 +00:00
4cad3c3bd5
mmgen-swaptx{create,do}: add --stream-interval option 2025-05-19 09:23:55 +00:00
fe7a2a204b
swap: new SwapCfg class 2025-05-19 09:23:55 +00:00
0dd09321fd
minor fixes and cleanups 2025-05-19 09:23:55 +00:00
e26a242e54
swap.proto.thorchain: increase streaming interval to 3 2025-05-07 18:24:07 +00:00
a46c3bbbee
amt: new TokenAmt class 2025-04-26 10:38:55 +00:00
38ea93a51f
tx.new_swap: swap to ERC20 token support 2025-04-21 14:01:16 +00:00
f33957d1bb
swap: new SwapAsset class 2025-04-21 14:01:15 +00:00
d010c39157
swap.proto.thorchain: data -> Memo 2025-04-21 14:01:15 +00:00
cf16972576
modtest.py: new swap test 2025-04-21 14:01:11 +00:00
b2e210485f
test/cmdtest_d: remove prefixes on files 2025-03-29 09:30:15 +00:00
f0563031de
Ethereum THORChain swaps
Only native ETH supported for now.  Work on ERC20 token swaps is underway.

Sample create-sign-send workflow for a BTC->ETH swap (assumes offline
autosigning is set up):

    $ mmgen-swaptxcreate --autosign BTC 0.12345 ETH

    remove device - insert - wait for signing - remove - insert

    $ mmgen-txsend --autosign

Create step for ETH->BTC swap:

    $ mmgen-swaptxcreate --autosign ETH 5.4321 BTC

For more information, see:

    $ mmgen-swaptxcreate --help

Testing:

    $ test/cmdtest.py ethswap
2025-03-23 10:14:32 +00:00
287107ce73
Memo.is_partial_memo(): match bytes instead of str 2025-03-23 10:14:32 +00:00
699b21f313
CmdTestBase: add cfg attr 2025-03-23 10:14:31 +00:00
eb80abaaee
amt.py: new UniAmt type, equivalent to BTCAmt 2025-03-23 10:14:31 +00:00
8b504c895a
modtest.py, daemontest.py: remove prefixes from test files 2025-03-23 10:14:31 +00:00
6a369f79d7
test suite: replace invalid transaction file 2025-03-17 10:16:18 +00:00
1cab2f9d6d
tx.new: support relative fees < 1 unit; add test 2025-03-15 18:24:53 +00:00
c7b2626d6e
amt.py: reimplement CoinAmt.to_unit(), add test 2025-03-15 18:24:53 +00:00
70022b04b2
use keyword-only parameters where practicable (103 files changed) 2025-03-15 18:24:52 +00:00
89ad0fd29b
keyword-only parameters throughout 2025-03-15 18:24:52 +00:00
2f6e52be73
mmgen-swaptx{create,do}: add price protection via --trade-limit option
For more information, see:

    $ mmgen-swaptxcreate --help

Testing:

    $ test/modtest.py tx.memo misc.int_exp_notation
    $ test/cmdtest.py swap
2025-03-04 09:51:05 +00:00