Commit graph

71 commits

Author SHA1 Message Date
e092f44ace
minor testing fixes 2026-05-17 18:03:37 +00:00
f840069ecb
update copyright dates 2026-02-11 13:02:12 +00:00
851335106f
cmdtest.py xmr_autosign: support compat mode testing
Testing:

    # Compat mode is now enabled by default:
    $ test/cmdtest.py -ne xmr_autosign

    # The old testing behavior is also supported:
    $ test/cmdtest.py -ne xmr_autosign_nocompat
2025-11-15 09:50:21 +00:00
81ece1ff3b
support Bitcoin Core v30.0
As of Core v30, legacy BDB wallets are no longer supported.  Users with legacy
tracking wallets must convert them to descriptor wallets.  See `bitcoin-cli
migratewallet` for details.

The maximum OP_RETURN data size has been increased to 4096 bytes, while the one
data output per transaction limitation has been retained.  This seems like a
reasonable compromise.  The MMGen Project discourages the use of MMGen Wallet
to spam the blockchain.
2025-10-26 10:35:54 +00:00
3a967b46dc
minor testing/build fixes 2025-09-17 09:33:04 +00:00
a3eef0128a
Windows/MSYS2 build and testing fixes 2025-09-15 09:28:41 +00:00
258f1b0236
various testing fixes 2025-09-11 17:37:04 +00:00
0952cc80a3
various testing fixes 2025-09-09 11:27:05 +00:00
0e26bbf005
test-release.sh: add SOC config variable 2025-09-09 11:27:05 +00:00
8c3b28a332
test-release.sh: fixes, BTC-only fixes 2025-09-09 11:27:04 +00:00
b1382b3a16
test-release.sh: add geth, reth tests 2025-09-09 11:27:04 +00:00
60ca7a2918
eth: sign transactions with libsecp256k1 2025-06-29 14:53:50 +00:00
9638a96ec6
test suite: minor fixes 2025-06-16 14:35:30 +00:00
ec84abc907
RUNE swap support
Testing/demo:

    $ test/cmdtest.py --demo runeswap
2025-06-15 09:17:02 +00:00
2993fdba9e
RUNE tracking wallet support
Testing/demo:

    $ test/cmdtest.py --demo --coin=rune rune
2025-05-28 11:40:40 +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
19592955cb
test suite: minor fixes 2025-04-29 10:13:38 +00:00
2f6ef808fb
test suite: minor fixes and cleanups 2025-04-26 10:38:55 +00:00
b485d7a99a
cmdtest ethdev, swap, ethswap, ethbump: changes and fixes 2025-03-30 10:20:21 +00:00
0b73aad126
cmdtest.py ethdev: minor fixes 2025-03-29 09:30:16 +00:00
b2e210485f
test/cmdtest_d: remove prefixes on files 2025-03-29 09:30:15 +00:00
8b504c895a
modtest.py, daemontest.py: remove prefixes from test files 2025-03-23 10:14:31 +00:00
168e6bbc56
whitespace, comments, minor cleanups 2025-03-15 18:24:52 +00:00
5252e8d691
test-release.py: restore Pylint test 2025-03-15 18:24:52 +00:00
94bee46cb8
new mmgen-cli utility
Communicate with all your coin daemons from a single utility!

Usage information and examples:

    $ mmgen-cli --help
2025-03-10 14:28:55 +00:00
e54f039690
update copyright dates 2025-02-16 14:42:27 +00:00
7131b892e3
minor fixes and cleanups 2025-01-27 16:01:48 +00:00
783b05e373
migrate from Pylint to Ruff
Testing:

    $ test/test-release.sh -v lint
2025-01-03 14:23:14 +00:00
353a4a1f4e
Nix compatibility fixes 2024-12-30 11:31:39 +00:00
866aa6035a
test suite: minor fixes and cleanups 2024-12-30 11:31:39 +00:00
13976084ab
test suite: use eth-keys instead of ethkey 2024-12-30 11:31:39 +00:00
5f3920b11a
unit_tests.py -> modtest.py, daemontest.py 2024-10-18 10:43:27 +00:00
926716090a
test suite: rename some directories
- cmdtest_py_d -> cmdtest_d
- objtest_py_d -> objtest_d
- objattrtest_py_d -> objattrtest_d
2024-10-18 10:32:15 +00:00
5150ca586b
update file header 2024-10-18 10:32:06 +00:00
d520e31e53
test-release.sh: add separate help test 2024-10-08 12:55:59 +00:00
d8aca5bb6c
test suite: whitespace, minor cleanups 2024-10-08 12:55:59 +00:00
647c7a2601
cmdtest.py regtest: cleanups 2024-10-08 12:55:57 +00:00
8edc7da5a2
BCH cashaddr: full support
- BCH addresses are now displayed in cashaddr format by default.  This may be
  overridden on the command line with --cashaddr=0, or in the config file by
  setting `bch_cashaddr` to false
- In tracking wallet views, the ‘h’ key toggles between legacy and cashaddr
  address display
- Transaction views display BCH addresses in both formats simultaneously
- The --usecashaddr=0 daemon option is no longer required and should be omitted

Testing:

    $ test/unit_tests.py -v cashaddr bip_hd.multicoin
    $ test/gentest.py --coin=bch -v --type=C 1 test/ref/bitcoin_cash/bchwallet.dump
    $ test/cmdtest.py -e bch_txview_cashaddr1 bch_txview_cashaddr2
    $ test/cmdtest.py --coin=bch -e txsend regtest.view autosign_automount
    $ test/cmdtest.py --coin=bch -n ref3_addr
2024-09-29 11:59:57 +00:00
489d0e733d
test suite: minor fixes 2024-09-20 09:35:58 +00:00
ca343e2097
autosign, test suite autosign: cleanups 2024-08-26 13:47:02 +00:00
a0eb2871f9
minor fixes and cleanups throughout 2024-07-27 09:56:20 +00:00
7692980f39
minor testing fix, update release notes 2024-07-11 11:36:21 +00:00
82f2fb1db9
BTC-only testing fixes 2024-07-08 10:51:21 +00:00
c587ab3998
support descriptor wallets for BTC
For BTC, MMGen Wallet now creates and uses a descriptor wallet as its tracking
wallet.  For LTC and BCH, the legacy Berkeley DB wallet is used by default as
before.

While the legacy BDB wallet continues to be fully supported, BTC users are
advised to upgrade their tracking wallet to a descriptor wallet to avoid
support issues with future versions of Bitcoin Core.

Upgrade a legacy tracking wallet as follows:

    $ bitcoin-cli migratewallet mmgen-tracking-wallet

Alternatively, you may dump your tracking wallet to JSON and restore it as a
descriptor wallet using the ‘mmgen-tool’ commands ‘twexport’, ‘twimport’ and
‘rescan_blockchain’ (see the help screens for those commands for details).

Testing (add the -e option to see script output):

    # descriptor wallet:
    $ test/cmdtest.py regtest

    # Berkeley DB wallet:
    $ test/cmdtest.py regtest_legacy
2024-03-06 11:05:23 +00:00
1c5c3319d4
offline transaction signing with automount for BTC, BCH, LTC and ETH/ERC20
Previously supported only for XMR, offline transaction autosigning with no
filename arguments and automatic mounting/unmounting of the removable device
on the online machine is now available for all coins MMGen Wallet supports
transacting with.  To activate, invoke ‘mmgen-txcreate’ and ‘mmgen-txsend’
with the --autosign option.

Be aware that transactions must be created, signed and sent one at a time when
using this feature.  For bulk transaction signing, you must use the old manual
mounting method.

Example create-sign-send workflow for BTC:

    $ mmgen-txcreate --autosign bc1qxmymxf8p5ckvlxkmkwgw8ap5t2xuaffmrpexap,0.00123 B

    (remove device - insert offline - wait for signing - remove - insert online)

    $ mmgen-txsend --autosign

Unsigned or unsent transactions may be aborted as follows:

    $ mmgen-txsend --abort

And sent RBF transactions may be fee-bumped:

    $ mmgen-txbump --autosign

You can check the status of the current transaction, whether sent or unsent,
with the following command:

    $ mmgen-txsend --status

That’s all there is to it!

Testing (add the -e option to see script output):

    $ test/cmdtest.py autosign_automount
    $ test/cmdtest.py --coin=eth autosign_eth
2024-02-29 15:40:10 +00:00
0129da60e5
autosign: improve checking/creation of dirs, add autosign_clean test 2024-02-24 14:17:32 +00:00
15eb13ae50
minor fixes and cleanups 2024-02-22 12:48:13 +00:00
45ad8fbbad
test-release.sh: add separate test for ETC (Ethereum Classic) 2024-02-17 09:45:10 +00:00
1dcb0fbf5f
minor fixes, cleanups 2024-01-26 10:54:02 +00:00
8e46932475
update copyright dates 2024-01-19 11:05:10 +00:00