Skip to content

Releases: mmgen/mmgen-wallet

MMGen Wallet version 14.0.0

27 Nov 15:03
v14.0.0
a82c134
Compare
Choose a tag to compare

MMGen Wallet Version 14.0.0 Release Notes

🎉🎉🎉 This special release marks the MMGen Project’s 10th anniversary on Github. 🎉🎉🎉

Though only one new noteworthy feature has appeared in MMGen Wallet since v13.3.0, users can benefit from numerous bugfixes, code cleanups, and installation and testing improvements, along with updated coin daemon support. Upgrading is therefore highly recommended:

$ pip3 install --upgrade mmgen-wallet

Note that the code repository and package have been renamed to mmgen-wallet while the package toplevel currently remains mmgen.

Notable new feature:

  • b51868a: support multiple loaded coin daemon wallets

Other important changes:

Minor changes and additions:

  • 7135744: use pycryptodomex instead of pysha3 for keccak_256 function
  • efb3a3f: new script examples/whitepaper.py: extract the Bitcoin whitepaper from the blockchain

Python requirement: >= 3.8 (tested on 3.8, 3.9 and 3.11)

This release has been tested on the following platforms:

Debian 11 (Bullseye) / x86_64
Debian 12 (Bookworm) / x86_64
Ubuntu 20.04 (Focal) / x86_64
Ubuntu 22.04 (Jammy) / x86_64
Arch Linux 2023-11-20 (Python 3.11) / x86_64
ArchLinuxArm 2023-11-20 [userspace] (Python 3.11) / Rock Pi 4 (armv8)
Debian 11 (Bullseye) [Armbian] / Rock Pi 4 (armv8)
Debian 11 (Bullseye) [Armbian] / Orange Pi PC2 (armv8) [BTC + XMR autosign]
Windows 10 Enterprise / MSYS2 2023-10-26 / x86_64 [qemu]

and with the following coin daemon versions:

Bitcoin Core 25.1.0
Bitcoin-Cash-Node 26.1.0
Litecoin Core 0.21.2.2
Monerod 0.18.3.1
Go-Ethereum (Geth) 1.13.4
Parity Ethereum 2.7.2

Solc v0.8.7 is required for ERC20 token contract creation

Altcoin address generation has been additionally tested using the following reference tools:

zcash-mini a2b3504 (https://github.com/FiloSottile/zcash-mini)
pycoin-0.92.20230326 (https://github.com/richardkiss/pycoin)
vanitygen-plusplus e7858035 (https://github.com/10gic/vanitygen-plusplus)
monero-python 1.1.1 (https://github.com/monero-ecosystem/monero-python)
ethkey (OpenEthereum 3.3.5)

MMGen Wallet version 13.3.1

08 Nov 11:40
v13.3.1
8cdcbd0
Compare
Choose a tag to compare

MMGen Wallet Version 13.3.1 Release Notes

This minor point release updates the Python package name from mmgen to mmgen-wallet.

MMGen Wallet is now available on PyPi (Linux only for now):

$ python3 -m pip install mmgen-wallet

Before installation, existing users are advised to first remove the old package:

$ python3 -m pip uninstall mmgen

MMGen version 13.3.0

13 Jun 19:05
v13.3.0
3ca9639
Compare
Choose a tag to compare

MMGen Version 13.3.0 Release Notes

Notable new features for this release:

  • automatic change address selection
  • curses-like scrolling interface for tracking wallet views
  • offline transaction autosigning for Monero
  • Config API (encapsulates configuration data, making the entire MMGen code base usable as a library for other Python projects)

New features in chronological order:

  • a78be65: Support Monero integrated addresses

  • 164ef9d: mmgen-xmrwallet: new txview operation

  • 1d392f1: mmgen-tool listaddresses: fully reimplemented UI (same as twview and txhist)

  • 68caeb3: mmgen-txcreate: warn user if change address is used

  • cbe7498: mmgen-txcreate: automatic change address selection

  • 045fdef: mmgen-txcreate: automatic change address selection by address type

  • f62322b: mmgen-tool twexport: address pruning

  • b26657f: Curses-like scrolling UI for tracking wallet views via --scroll option

  • 5552898: proto.btc.tx: set sequence numbers for all inputs explicitly

  • 9412505: mmgen-txcreate: consider addresses in the tracking wallet with labels to be reserved, i.e. equivalent to used, for purposes of automatic change address selection (can be overridden with --autochg-ignore-labels option)

  • c7adb56: Config API, Part I (eliminate global configuration variables)

  • e90e25b: Config API, Part II (make entire MMGen code base usable as a library for external projects -- usage example provided in script examples/coin-daemon-info.py)

  • dc685e9: mmgen-keygen: new viewkey-address file type via --viewkeys option

  • 686fdfc: mmgen-autosign: use default wallet as autosign wallet by default

  • de77f9c: Monero offline transaction autosigning (invoke mmgen-xmrwallet --help for usage information and tutorial)

  • a1986fe: mmgen-xmrwallet: new txlist operation

Windows/MSYS2 changes:

  • ebb7754: use native MSYS2 terminal and UCRT64 environment by default

Testing changes:

  • 4aa9f73: use monero-python instead of MoneroPy as reference tool

  • 056de3b: test.py: add --demo option

  • e1f6896: use pycryptodome/pycryptodomex for Keccak testing

...plus loads of bugfixes, cleanups and code rewrites (345 commits, 373 files changed, 17902 insertions, 10670 deletions)

Requires Python >= 3.7 (tested on 3.7, 3.9, 3.10 and 3.11)

This release has been tested on the following platforms:

    Debian 10 (Buster) / x86_64
    Debian 11 (Bullseye) / x86_64
    Debian 12 (Bookworm) / x86_64
    Ubuntu 22.04 (Jammy) / x86_64
    Arch Linux (Python 3.11) / x86_64
    ArchLinuxArm [userspace] (Python 3.11) / Rock Pi 4 (armv8)
    Debian 11 (Bullseye) [Armbian] / Rock Pi 4 (armv8)
    Debian 11 (Bullseye) [Armbian] / Orange Pi PC2 (armv8) [BTC + XMR autosign]
    Windows 10 Enterprise / MSYS2 2023.03.18 / x86_64 [qemu]

and with the following coin daemon versions:

    Bitcoin Core 25.0.0
    Bitcoin-Cash-Node 26.0.0
    Litecoin Core 0.21.2.2
    Monerod 0.18.2.2
    Go-Ethereum (Geth) 1.11.16
    Parity Ethereum 2.7.2

Solc v0.8.7 is required for ERC20 token contract creation

Altcoin address generation has been additionally tested using the following reference tools:

    zcash-mini a2b3504 (https://github.com/FiloSottile/zcash-mini)
    pycoin 0.92.20220529 (https://github.com/richardkiss/pycoin)
    vanitygen-plusplus e7858035 (https://github.com/10gic/vanitygen-plusplus)
    monero-python 1.1.1 (https://github.com/monero-ecosystem/monero-python)
    ethkey (OpenEthereum 3.3.5)

MMGen version 13.2.0

30 Aug 12:49
v13.2.0
0e50ead
Compare
Choose a tag to compare

MMGen Version 13.2.0 Release Notes

This release introduces three important new features: 1) transaction history via mmgen-tool txhist, an invaluable aid in helping you to choose which outputs to spend; 2) tracking wallet export/import to JSON; and 3) fast blockchain rescanning during address import and elsewhere.

Important new features:

New testing feature:

Important workaround:

  • localhost resolution workaround for MSWin/MSYS2 (may speed up RPC performance for all backends on some systems): 8cbdab9

Python requirements: >= 3.7 (3.7, 3.8, 3.9, 3.10 tested)

This release has been tested on the following platforms:

    Debian 10 (Buster) / x86_64
    Debian 11 (Bullseye) / x86_64
    Ubuntu 20.04 (Focal) / x86_64
    Ubuntu 22.04 (Jammy) / x86_64
    Arch Linux / x86_64
    ArchLinuxArm [userspace] / Rock Pi 4 (armv8)
    Debian 11 (Bullseye) [Armbian] / Rock Pi 4 (armv8)
    Debian 11 (Bullseye) [Armbian] / Orange Pi PC2 (armv8) [BTC-only]
    Windows 10 Enterprise / MSYS2 2022.06.03 / x86_64 [qemu]

and with the following coin daemon versions:

    Bitcoin Core 23.0.0
    Bitcoin-Cash-Node 24.1.0
    Litecoin Core 0.21.2.1
    Monerod 0.18.1.0
    Go-Ethereum (Geth) 1.10.21
    OpenEthereum 3.3.5
    Parity Ethereum 2.7.2
    Erigon v2022.05.02 [14557a234] (no token operations, eth_call() issues with devnet)

Solc v0.8.7 is required for ERC20 token contract creation

Altcoin address generation has been additionally tested using the following reference tools:

    zcash-mini a2b3504 (https://github.com/FiloSottile/zcash-mini)
    pycoin 0.92.20220529 (https://github.com/richardkiss/pycoin)
    vanitygen-plusplus e7858035 (https://github.com/10gic/vanitygen-plusplus)
    MoneroPy 98e7feb (https://github.com/bigreddmachine/MoneroPy)
    ethkey (OpenEthereum 3.3.5)

MMGen version 13.1.0

10 May 13:02
v13.1.0
3176c56
Compare
Choose a tag to compare

MMGen Version 13.1.0 Release Notes

This release completes the process of modularizing the MMGen code base and fully separating protocol-dependent from protocol-independent code.

In addition to improved reliability, maintainability and extensibility, this major code overhaul has led to significant performance improvements and reductions in memory usage.

Important new feature:

Other changes/additions/improvements (most recent first):

  • add pure-Python RIPEMD-160 code and wrapper routine: 40d90b3
  • mmgen-tool: add extract_key_from_geth_wallet command: 096f363
  • mmgen-tool: add eth_checksummed_addr command: aecc03e
  • crypto.py: improve user entropy implementation: 589c378
  • rewrite public key and address generation code: 32c522c
  • rewrite test/gentest.py utility: b43d827

Important bugfixes:

  • RPC: disable *_PROXY environment vars for requests backend: ba2cc40
  • mmgen-tool pubhex2addr: fix incorrect output for ETH, XMR and ZEC-Z protocols: af65676
  • mmgen-tool addr2pubhash: reject non-PKH addresses: 4e3b11a
  • mmgen-passchg: improve secure wallet deletion logic: 9e3d8d9

Python requirements: >= 3.7 (3.7, 3.8, 3.9, 3.10 tested)

This release has been tested on the following platforms:

    Debian 10 (Buster) / x86_64
    Debian 11 (Bullseye) / x86_64
    Ubuntu 20.04 (Focal) / x86_64
    Ubuntu 22.04 (Jammy) / x86_64
    Arch Linux / x86_64
    Arch Linux [userspace] / Rock Pi 4 (armv8)
    Debian 10 (Buster) [Armbian] / Rock Pi 4 (armv8)
    Debian 11 (Bullseye) [Armbian] / Orange Pi PC2 (armv8) [BTC-only]
    Windows 10 Enterprise [MSYS2-2022.02.15] / x86_64 [qemu]

and with the following coin daemon versions:

    Bitcoin Core 23.0.0
    Bitcoin-Cash-Node 24.0.0
    Litecoin Core 0.18.1
    Monerod 0.17.3.0
    Parity Ethereum 2.7.2
    Go-Ethereum (Geth) 1.10.14 (1.10.17 works but has geth init issues)
    OpenEthereum 3.3.5
    Erigon v2022.05.02 [14557a234] (partial testing, eth_call() issues with devnet)

Solc v0.8.7 is required for ERC20 token contract creation

Altcoin address generation has been additionally tested using the following reference tools:

    zcash-mini a2b3504 (https://github.com/FiloSottile/zcash-mini)
    pycoin 0.92.20220213 (https://github.com/richardkiss/pycoin)
    vanitygen-plusplus e7858035 (https://github.com/10gic/vanitygen-plusplus)
    MoneroPy 98e7feb (https://github.com/bigreddmachine/MoneroPy)
    ethkey (OpenEthereum 3.3.5)

MMGen version 13.0.2

07 Jan 20:10
v13.0.2
4369fe3
Compare
Choose a tag to compare

MMGen Version 13.0.2 Release Notes

This micro-release adds a couple of tweaks to the build/install system for compatibility with the latest version of MSYS2. Windows users should upgrade, after first upgrading MSYS2, if necessary. Note that the MMGen install process has changed. For details, refer to Keeping your installation up to date on the Windows install wiki page.

Changes from v13.0.1:

  • setup.cfg: remove an unneeded dependency
  • setup.py: update libsecp256k1 make command

MMGen version 13.0.1

04 Jan 20:51
v13.0.1
c1f9d28
Compare
Choose a tag to compare

MMGen Version 13.0.1 Release Notes

This is a minor bugfix/compatibility release. Ethereum and Bitcoin Cash Node users should upgrade. Users of the test suite should also upgrade.

Changes from v13.0.0:

  • support Python 3.10
  • eth rlp: fix import for Python 3.10 (collections -> collections.abc)
  • support Bitcoin Cash Node v24.0.0, Geth v1.10.14
  • unit_tests.py dep: continue without LED support

MMGen version 13.0.0

14 Oct 13:58
v13.0.0
ff96938
Compare
Choose a tag to compare

MMGen Version 13.0.0 Release Notes

Important new features:

  • [XMR]: New 'mmgen-xmrwallet' interactive command: create and sync wallets, create and relay transactions (optionally via Tor proxy), support offline TX signing: 3d8ee62, cb98afd
  • [ETH]: Support Geth: ac7bced
  • Support multiple daemons per coin: dfc732a

Other changes/additions/improvements (most recent first):

  • Deterministic testing: 8e739e7, 08fc25d
  • Run test scripts from overlay tree: 96a250b
  • [ETH]: Support Erigon (WIP): 877be3f, b88c4bb
  • Migrate from distutils to setuptools, fully automate build and install process: 25fb862, 4a95714
  • Move data files to package directory: ea81d46
  • [ETH]: Support ETC via Parity (v2.7.2): 1575b30
  • Daemon version checking: a4eee3e

Important bugfixes:

  • mmgen-txsign: Support all address types with flat keylist: f64be2b

Python requirements: >= 3.7 (3.7, 3.8, 3.9 tested)

This release has been tested on the following platforms:

    Debian 10 (Buster) / x86_64
    Debian 11 (Bullseye) / x86_64
    Ubuntu 20.04 (Focal) / x86_64
    Arch Linux / x86_64
    Debian 10 (Buster) [Armbian] / Rock Pi 4 (armv8) (no Parity or OE)
    Windows 10 Enterprise [MSYS2] / qemu-x86_64

and with the following coin daemon versions:

    Bitcoin Core 22.0.0
    Bitcoin-Cash-Node 23.1.0
    Litecoin Core 0.18.1
    Monerod 0.17.2.3
    Parity Ethereum 2.7.2
    Go-Ethereum (Geth) 1.10.9
    OpenEthereum 3.3.0
    Erigon 2021.09.5-alpha [0976b9e45] (WIP, partial testing)

Solc v0.8.7 is required for ERC20 token contract creation

Altcoin address generation has been additionally tested using the following reference tools:

    zcash-mini a2b3504 (https://github.com/FiloSottile/zcash-mini)
    pycoin 021907c (https://github.com/richardkiss/pycoin)
    vanitygen-plus 2212312 (https://github.com/exploitagency/vanitygen-plus)
    MoneroPy 98e7feb (https://github.com/bigreddmachine/MoneroPy)
    ethkey (OpenEthereum 3.3.0)

MMGen version 0.12.2

28 Nov 16:37
v0.12.2
3212600
Compare
Choose a tag to compare

MMGen Version 0.12.2 Release Notes

This is a minor compatibility release to support the latest scripts in the mmgen-node-tools suite. If you use the node tools, an upgrade is recommended.

MMGen version 0.12.1

27 Jun 10:55
v0.12.1
4c7944e
Compare
Choose a tag to compare

MMGen Version 0.12.1 Release Notes

In addition to some new features, this release includes many changes “under the hood” that make the MMGen code base harder, more modular, and more extensible.

Significant new features:

  • asyncio/aiohttp support: f9a483f
  • txcreate,twview,listaddresses: display exact transaction date: b671453
  • mnemonic entry modes: 04add0d

Significant code changes:

  • data objects: always raise exception on failure: 0852321
  • new Lockable class: lock global vars after initialization: 4c2410e
  • eliminate global vars g.proto, g.coin, g.rpc and others: c3f185e
  • rewritten transaction classes: c3f185e
  • new LEDControl class: 5ba2f51
  • rewritten terminal code: d8e1d5f

This release has been tested on the following platforms:

    Debian Buster / x86_64
    Ubuntu Focal / x86_64
    Armbian Bionic / Rock Pi 4 (armv8)
    Armbian Bionic / Orange Pi PC2 (armv8)
    Raspbian Buster / Raspberry Pi B (armv7) (BTC only)
    Windows 10 Enterprise Eng. / MSYS2 / qemu-x86_64

and with the following coin daemon versions:

    Bitcoin Core 0.20.0
    Bitcoin-ABC 0.21.8
    Litecoin Core 0.18.1
    Monerod 0.16.0.0
    OpenEthereum 3.0.1

Python version 3.6 or greater is required.

Altcoin address generation has been additionally tested using the following tools as references:

    zcash-mini a2b35042 (https://github.com/FiloSottile/zcash-mini)
    pycoin 11f60a7c (https://github.com/richardkiss/pycoin)
    vanitygen-plus 22123128 (https://github.com/exploitagency/vanitygen-plus)
    MoneroPy 98e7feb2 (https://github.com/bigreddmachine/MoneroPy)
    ethkey 2.7.2 (https://github.com/paritytech/parity-ethereum)