Commit graph

2,141 commits

Author SHA1 Message Date
866aa6035a
test suite: minor fixes and cleanups 2024-12-30 11:31:39 +00:00
7293135db8
test suite: vendor tx_valid.json from Bitcoin Core repo (v28.0) 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
e1d7beb266
eth-requirements.txt: remove versioning from py-ecc, mypy-extensions 2024-12-30 11:31:39 +00:00
51e456a4e5
improve load_cryptodome() monkey-patch function 2024-12-30 11:31:39 +00:00
265be8593c
CoinProtocol.Base: make Lockable, tokensym init cleanups 2024-12-30 11:31:32 +00:00
7539c4d40d
Support Bitcoin Core 28.0 2024-11-17 12:23:30 +00:00
3d4f1c607b
Support Litecoin Core 0.21.4 2024-11-17 12:22:38 +00:00
df3559d420
support negated command-line options
- all options without parameters may be negated by prefixing the option name
  with ‘no-’
- if the option name itself begins with ‘no-’, then the option is negated
  by removing the ‘no-’ prefix
- negation may be used to override options set in the cfg file
- command-line options may also be overridden, with the last-listed option
  taking precedence
- as with ordinary options, substring matching is supported

Examples:

    OPTION        NEGATED OPTION
    --no-license  --license
    --no-license  --lic
    --quiet       --no-quiet
    --quiet       --no-q

Testing:

    $ test/cmdtest.py opts cfgfile
2024-10-20 10:19:02 +00:00
34deadb0f5
test suite cfgfile: cleanups 2024-10-20 10:16:23 +00:00
399f7d42a7
opts: minor cleanups 2024-10-20 10:16:17 +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
9bc284ae24
whitespace: cmdtest_d 2024-10-18 10:32:14 +00:00
6d90d180c1
whitespace: test/unit_tests_d 2024-10-18 10:32:14 +00:00
72fd9c1ca1
whitespace: test/tooltest2_d 2024-10-18 10:32:14 +00:00
ce14c1ba79
whitespace: test/overlay 2024-10-18 10:32:13 +00:00
1fee9804bb
whitespace: test/obj{attr}test_d/ 2024-10-18 10:32:13 +00:00
f9e6d994f0
whitespace: test/misc 2024-10-18 10:32:13 +00:00
6130efcf0c
whitespace: test/include 2024-10-18 10:32:12 +00:00
74bc49f973
whitespace: tests, top level 2024-10-18 10:32:12 +00:00
de6750a34b
whitespace: scripts, setup.py, other 2024-10-18 10:32:11 +00:00
747279c106
whitespace: examples 2024-10-18 10:32:11 +00:00
7fdaba0f78
whitespace: wallet 2024-10-18 10:32:11 +00:00
362e581798
whitespace: tx 2024-10-18 10:32:10 +00:00
4ea4e5e472
whitespace: tw 2024-10-18 10:32:10 +00:00
f77a6115e4
whitespace: tool 2024-10-18 10:32:10 +00:00
8694854e65
whitespace: proto (other) 2024-10-18 10:32:09 +00:00
1623ea6beb
whitespace: proto.xmr 2024-10-18 10:32:09 +00:00
6346c1d11a
whitespace: proto.eth (plus cleanup) 2024-10-18 10:32:09 +00:00
4a0a199e85
whitespace: proto.btc 2024-10-18 10:32:08 +00:00
b7de7b9701
whitespace: various 2024-10-18 10:32:08 +00:00
b5600fc563
whitespace: top-level modules 2024-10-18 10:32:08 +00:00
96b6b38c01
whitespace: main_*.py 2024-10-18 10:32:07 +00:00
4daf293dc2
xmrwallet.py -> xmrwallet (23 files) 2024-10-18 10:32:07 +00:00
22caf40821
whitespace, minor changes 2024-10-18 10:32:06 +00:00
5150ca586b
update file header 2024-10-18 10:32:06 +00:00
f1888658d0
remove some unused code 2024-10-18 10:32:06 +00:00
50fc415282
CoinAmt: improvements
- do strict type checking in initializer, forbid double initialization
- add dynamic decimal precision based on protocol
- dunder method fixes, cleanups
- JSON-RPC library now returns floats (i.e. amounts) as strings instead of Decimal,
  eliminating an extra conversion step
2024-10-18 10:32:05 +00:00
0924928ef3
tx.feespec2abs(): cleanup 2024-10-18 10:32:05 +00:00
09856a52cb
proto.btc.tx: rel fee display cleanup 2024-10-18 10:32:05 +00:00
8ddd94c125
proto.eth.tx: fee display cleanups 2024-10-18 10:32:04 +00:00
dece143f9b
tx.new: user fee, fee estimate cleanups 2024-10-18 10:32:04 +00:00
e42c404d9d
unit_tests.py obj: refactor 2024-10-18 10:32:04 +00:00
fc55750cd2
tx, tw: whitespace, cleanups 2024-10-18 10:32:03 +00:00
4ffe5c48d2
tx.file: new transaction file format
- the new format is plain JSON, readable with tools such as `jq`.  Filenames
  and extensions for raw, signed and sent transactions remain unchanged

- reading/writing the legacy format continues to be supported, but new
  transactions cannot be written to it.  This means users who upgrade MMGen
  Wallet to this commit on their online computer(s) must upgrade it on their
  offline signing device(s) as well: upgraded offline installations can
  interoperate with non-upgraded online installations, but not vice-versa

- no additional action is required: this change is transparent to the user

Testing:

    $ test/unit_tests.py tx.txfile
    $ test/cmdtest.py -n main
    $ test/test-release.sh -A autosign
2024-10-12 09:14:45 +00:00
a38f4e4fd9
tx.file: cleanups; other minor cleanups 2024-10-12 09:14:40 +00:00
6e728b7f4d
opts: allow combined short option with parameter; add tests
`foo -abparam`, equivalent to `foo -a -bparam`, is now allowed, in conformity
with standard Unix option parsing convention.
2024-10-10 11:28:51 +00:00
212cb2d0fb
opts parsing bugfix 2024-10-08 13:21:16 +00:00
d7e3b55e3b
opts, help: refactor, parse cmdline opts natively, filter global opts
- command-line options are now parsed natively, without use of the getopt module
- global options and --longhelp helpscreen are now contextual, depending on coin
  and executed command
- commands invoked with out-of-context global options (e.g. `mmgen-walletgen
  --coin=btc`) now fail with an ‘unrecognized option’ error

Testing:

    $ test/test-release.sh help
    $ test/cmdtest.py opts
2024-10-08 12:56:02 +00:00