### 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:

 - a78be652: Support Monero integrated addresses

 - 164ef9d2: mmgen-xmrwallet: new `txview` operation

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

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

 - cbe74981: mmgen-txcreate: automatic change address selection

 - 045fdefd: mmgen-txcreate: automatic change address selection by address type

 - f62322b1: mmgen-tool twexport: address pruning

 - b26657fb: Curses-like scrolling UI for tracking wallet views via `--scroll`
   option

 - 55528989: proto.btc.tx: set sequence numbers for all inputs explicitly

 - 94125052: 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)

 - c7adb56e: Config API, Part I (eliminate global configuration variables)

 - e90e25b2: 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`)

 - dc685e9c: mmgen-keygen: new viewkey-address file type via `--viewkeys` option

 - 686fdfcc: mmgen-autosign: use default wallet as autosign wallet by default

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

 - a1986fe6: mmgen-xmrwallet: new `txlist` operation

#### Windows/MSYS2 changes:

 - ebb77548: use native MSYS2 terminal and UCRT64 environment by default

#### Testing changes:

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

 - 056de3bc: test.py: add `--demo` option

 - e1f68963: 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)