Commit graph

2,768 commits

Author SHA1 Message Date
99cc5b67e6
update MANIFEST.in, minor install fixes 2022-06-09 11:18:09 +00:00
0ac0bd7137
base_proto.ethereum.daemon: disable socket RPC for Geth 2022-06-09 11:18:09 +00:00
14c4ee2385
update 2 wiki pages
Updated:

- doc/wiki/install-mswin/Install-MMGen-on-Microsoft-Windows.md
- doc/wiki/using-mmgen/Getting-Started-with-MMGen.md
2022-06-09 11:18:09 +00:00
59368fd7c1
add 3 wiki pages
Added:

- doc/wiki/using-mmgen/Test-Suite.md
- doc/wiki/using-mmgen/Tool-API.md
- doc/wiki/using-mmgen/XOR-Seed-Splitting:-Theory-and-Practice.md
2022-06-09 11:18:08 +00:00
34f30fbf35
mmgen-xmrwallet: add 'new' operation for new address creation 2022-06-03 12:36:08 +00:00
7a8652cd32
minor changes and fixes 2022-06-03 12:32:32 +00:00
b57e7a74f2
pipe helpscreens to pager 2022-06-03 12:32:32 +00:00
42bb5d5fc5
addrfile.py: improve key-address validity check handling 2022-06-03 12:32:31 +00:00
0514ec24c5
new commands: mmgen-tool twexport, mmgen-tool twimport
- create a compact JSON dump of the MMGen tracking wallet with `twexport`

- recreate a working tracking wallet with updated balances from the dump in
  just a few minutes with `twimport`

- the import operation leverages the `scantxoutset` RPC call to selectively
  rescan only required blocks, reducing block rescan time to typically just
  a few seconds

- to recover historical transactions for viewing with `mmgen-tool txhist`,
  a full blockchain rescan may be performed on the recreated wallet using
  `mmgen-tool rescan_blockchain`

- supported coins: BTC, BCH, LTC
2022-05-28 19:44:11 +00:00
4631ba7e58
main_addrimport.py: cleanups, refactor some code to tw.ctl 2022-05-28 19:41:44 +00:00
9e8495fa2e
add regtest user Carol (for tracking wallet testing) 2022-05-28 19:41:44 +00:00
db20b2f34a
rpc.py: improve tracking wallet checking/creation/loading 2022-05-28 19:41:44 +00:00
0b79234f48
rpc.py: improve host_path implementation 2022-05-28 19:41:43 +00:00
15f4e1405f
minor changes and fixes 2022-05-28 19:41:43 +00:00
8cbdab9d83
support aiohttp, add localhost resolution workaround
- this may speed up RPC performance for all backends on some Windows systems
2022-05-28 19:41:43 +00:00
e7ac7fd206
mmgen-addrimport: reimplement --rescan using scantxoutset
Details:

    $ mmgen-addrimport --help
2022-05-26 16:08:26 +00:00
5488c51353
new command: mmgen-tool rescan_address
- updates an address balance using the `scantxoutset` RPC call
2022-05-26 16:07:21 +00:00
c96833c5a2
new command: mmgen-tool rescan_blockchain 2022-05-26 16:07:21 +00:00
742a041440
mmgen-tool: support explicit typing via annotations 2022-05-26 16:07:21 +00:00
cd2e2240c3
new command: mmgen-tool resolve_address 2022-05-26 16:07:21 +00:00
3823e8cdc9
minor fixes and cleanups 2022-05-26 16:07:20 +00:00
2e1f3b93e4
move coin privkey bytes derivation to derive.py 2022-05-26 16:07:20 +00:00
c8f4e0c050
support Litecoin Core v0.21.2 2022-05-26 16:07:20 +00:00
4f260056e8
avoid use of time.sleep() in event loop 2022-05-26 16:07:19 +00:00
7d2165641f
new feature: transaction history via mmgen-tool txhist
Display nicely formatted info about all transactions known to the tracking
wallet.

Interactive mode presents the user with an interface similar to `mmgen-tool
twview` or `mmgen-txcreate -i`, providing various sort, filter, column format
and printing options.

`--coin=ltc` and `--coin=bch` are also supported.  Use of `--rpc-backend=aio`
speeds up operation significantly under Linux.

Usage examples:

    # Non-interactive mode, tabular output:
    $ mmgen-tool txhist

    # Non-interactive mode, full output:
    $ mmgen-tool txhist detail=1

    # Show only transactions newer than 100000 blocks from chain tip:
    $ mmgen-tool txhist sinceblock=-100000

    # Interactive mode:
    $ mmgen-tool txhist interactive=1

Testing/demo:

    $ test/test.py -n -X bob_txhist1 regtest
    $ test/test.py -Se regtest:bob_txhist1
    $ test/test.py -Se regtest:bob_txhist2
    $ test/test.py -Se regtest:bob_txhist3
    $ test/test.py -Se regtest:bob_txhist4
    $ test/test.py -Se regtest:bob_txhist_interactive
2022-05-23 16:30:09 +00:00
85a9673d15
base_proto.bitcoin.rpc: add icall for gettransaction 2022-05-23 16:28:57 +00:00
d4cae73cf0
tw.common,tw.unspent: various changes and cleanups 2022-05-23 16:28:57 +00:00
310f6f59c5
minor changes and fixes 2022-05-23 16:28:56 +00:00
15cf330f9b
base_proto.bitcoin.tw.addrs: refactor RPC routines 2022-05-23 16:28:56 +00:00
d63cedfbdd
new modules: base_proto.{bitcoin,ethereum}.addrdata 2022-05-23 16:28:56 +00:00
2f7e022288
twview: improve age_fmt handling 2022-05-23 16:28:55 +00:00
0ae8619349
twview: improve screen width handling 2022-05-23 16:28:55 +00:00
43e075db72
add --columns long opt 2022-05-23 16:28:55 +00:00
ef13359519
function rename: base_proto_tw_subclass() -> base_proto_subclass() 2022-05-23 16:28:54 +00:00
4b41093ce9
minor fixes 2022-05-23 16:28:54 +00:00
9e91b0dbc5
test.py regtest: update miner addr for deterministic testing 2022-05-23 16:28:54 +00:00
37dd08736f
mmgen-tool twview: fix sorting, add interactive option 2022-05-23 16:28:53 +00:00
6010bf86fe
tw/common.py: new action class; add item_action.__init__() 2022-05-23 16:28:53 +00:00
d0457fd9b7
modified: doc/wiki/install-mswin/Install-MMGen-on-Microsoft-Windows.md 2022-05-23 16:28:53 +00:00
6d2a8913c9
tw/unspent.py: factor out shared from unspent-output-specific code 2022-05-23 16:28:52 +00:00
3a8cf584af
tw/unspent.py: new item_action class 2022-05-23 16:28:52 +00:00
9e1fe9d862
tw/unspent.py: move shared code to tw/common.py 2022-05-23 16:28:52 +00:00
1c0c1e4552
tw/unspent.py: variable and method renames 2022-05-23 16:28:51 +00:00
3176c568d7
Version 13.1.0 v13.1.0 2022-05-10 12:42:16 +00:00
fe34fca36b
update README, release notes, wiki documentation 2022-05-08 10:46:55 +00:00
3f618f1dfb
rpc.py: make requests the default backend for Windows 2022-05-08 10:07:17 +00:00
ba2cc40d20
rpc.py: disable proxy config from environment for requests backend
The Requests library honors the *_PROXY environment variables by default
  (a dangerous and insecure policy in the opinion of the MMGen Project).
  Thus if the user had one of these variables set and explicitly requested the
  `requests` backend via the `--rpc-backend` option, JSON-RPC communications
  would have gone over the configured proxy.

  Only the `mmgen-xmrwallet` command uses `requests` as its default backend,
  so only it was affected by this vulnerability in the default configuration,
  i.e. without use of `--rpc-backend`.

  This patch sets `trust_env=False` to disable the dangerous behavior.
2022-05-08 10:07:17 +00:00
8184fe195d
mmgen-tool: relocate ETH chksum and Geth wallet key commands 2022-05-08 10:07:16 +00:00
7e99b88d55
add v13.1.0 release notes 2022-05-06 12:52:42 +00:00
d5e8d5b96f
various fixes and cleanups 2022-05-06 12:52:41 +00:00