diff --git a/docs/JOINMARKET-QT-GUIDE.md b/docs/JOINMARKET-QT-GUIDE.md index d637f7c..fe85810 100644 --- a/docs/JOINMARKET-QT-GUIDE.md +++ b/docs/JOINMARKET-QT-GUIDE.md @@ -4,7 +4,7 @@ The gui can be run directly from Python script by doing `python joinmarket-qt.py` from within `scripts/`, or by running the executable file/binary (**[CLICK HERE](https://github.com/AdamISZ/joinmarket-clientserver/releases/)** to download the latest release). -**LATEST VERSION of JoinMarket-Qt is GUI version 16**. You can check the version via `About` in the menu. +**LATEST VERSION of JoinMarket-Qt is GUI version 17**. You can check the version via `About` in the menu. No other files / setup should be needed. You might need to `chmod 755` on Linux. diff --git a/docs/release-notes/release-notes-0.7.2.md b/docs/release-notes/release-notes-0.7.2.md new file mode 100644 index 0000000..4e2e6e0 --- /dev/null +++ b/docs/release-notes/release-notes-0.7.2.md @@ -0,0 +1,85 @@ +Joinmarket-clientserver 0.7.2: +================= + + + +This release requires Python 3.6+ - see "Upgrading" section in the 0.7.0 release notes for more information if needed. + +This is mostly bugfix release, fixing some issues with certain cases of the new Payjoin functionality; anyone wishing to use that functionality should upgrade, to make it work much more reliably (remember: Payjoin falls back to normal payment if anything goes wrong). +It also adds a bit more functionality, in particular QR codes generate-able by the Payjoin receiver. + +It also bugfixes the 'not-self' broadcast feature introduced in the last release. + +Please report bugs using the issue tracker at github: + + + +Upgrading +========= + +To upgrade: + +(If you are upgrading from a version pre-0.6.2 then please see the section "Move user data to home directory" in [the 0.6.2 release notes](https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.6.2.md), and follow the instructions there (except the `commitmentlist` file - that can actually be left alone, the previous release notes were wrong on this point).) + +(If you are upgrading from a version pre-0.7.0 please read the "Upgrading" section in [the 0.7.0 release notes](https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.7.0.md).) + +First run the `install.sh` script as mentioned in the README. When prompted to overwrite the directory `jmvenv`, accept. + +Note that `./install.sh -?` will show the options for installation. + +Notable changes +=============== + +### BIP 78 (Payjoin) improvements and fixes + +See the [previous](release-notes-0.7.1.md) for details on how to use Payjoin as a receiver, or for more details on sending and receiving, see [this](../PAYJOIN.md) documentation. +In this release, a couple extra elements of functionality are added: the receiver can now create a QR code for the sender, in the Payjoin receiver dialog. Also, the Tor configuration settings: `tor_control_port` and `tor_control_host` are added in the `[PAYJOIN]` section of `joinmarket.cfg` for people who want to use non-default configurations of Tor. + +More importantly perhaps, there are a couple of bugfixes where the implementation deviated slightly from the BIP78 standard, which led to payjoins failing in certain cases - for this reason, updating to this version should be considered required rather than optional. + +`7414959` QR code support for BIP78 payjoin receiver in Qt GUI + +`6a8149f` Removes utxo field from non-receiver inputs + +`f931421` Payjoin receiver times out when sender falls back + +`fde39a7` payjoin: make tor control host configurable + +`e6bc0c1` Bugfix: don't randomize payjoin outputs + +##### Various improvements and bugfixes + +The most important here: in 0.7.1 we (re-)introduced 'not-self' (and 'random') broadcast via `tx_broadcast` config entry, however with `not-self` there was still a fallback to self-broadcast, in case the broadcast via maker failed; this makes little sense, so the fallback is removed, in the fix below. Those using this option should be strongly aware of the current limitation: if few or none of the makers you coinjoin with have updated to 0.7.1+ , and/or they simply fail to broadcast the transaction, your script will currently just hang, waiting for broadcast. You can do it manually via some other channel, but note how this is not really compatible with multi-transaction automated schedules like tumbler. +The other fixes here are minor. + +`004945f` `d26cea8` Never self-broadcast with not-self, add warning message to GUI + +`c7ee7ec` bugfix: remove P2EP factory from joinmarketd + +`43368e1` Output values on "Not enough funds" exception + +`7ea1c9a` Silence unnecessary warning + + +##### Documentation + + +`68fc551` Add orderbook.md doc file + +`557f7a9` Minor fix in sourcing commitments doc + +`9dcde07` Add link to IRC logs + + +Credits +======= + +Thanks to everyone who directly contributed to this release - + +- @kristapsk +- @PulpCattel +- @nixbitcoin +- @AdamISZ + + +And thanks also to those who submitted bug reports, tested, reviewed and otherwise helped out. diff --git a/jmbase/jmbase/support.py b/jmbase/jmbase/support.py index 81bce09..7415cb2 100644 --- a/jmbase/jmbase/support.py +++ b/jmbase/jmbase/support.py @@ -5,7 +5,7 @@ from getpass import getpass from os import path, environ from functools import wraps # JoinMarket version -JM_CORE_VERSION = '0.7.2dev' +JM_CORE_VERSION = '0.7.2' # global Joinmarket constants JM_WALLET_NAME_PREFIX = "joinmarket-wallet-" diff --git a/jmbase/setup.py b/jmbase/setup.py index 0ba718a..7a5c905 100644 --- a/jmbase/setup.py +++ b/jmbase/setup.py @@ -2,7 +2,7 @@ from setuptools import setup setup(name='joinmarketbase', - version='0.7.2dev', + version='0.7.2', description='Joinmarket client library for Bitcoin coinjoins', url='http://github.com/Joinmarket-Org/joinmarket-clientserver/jmbase', author='', diff --git a/jmbitcoin/setup.py b/jmbitcoin/setup.py index 806c30f..b38841c 100644 --- a/jmbitcoin/setup.py +++ b/jmbitcoin/setup.py @@ -2,7 +2,7 @@ from setuptools import setup setup(name='joinmarketbitcoin', - version='0.7.2dev', + version='0.7.2', description='Joinmarket client library for Bitcoin coinjoins', url='http://github.com/Joinmarket-Org/joinmarket-clientserver/jmbitcoin', author='', diff --git a/jmclient/setup.py b/jmclient/setup.py index dccdb49..09bd850 100644 --- a/jmclient/setup.py +++ b/jmclient/setup.py @@ -2,14 +2,14 @@ from setuptools import setup setup(name='joinmarketclient', - version='0.7.2dev', + version='0.7.2', description='Joinmarket client library for Bitcoin coinjoins', url='http://github.com/Joinmarket-Org/joinmarket-clientserver/jmclient', author='', author_email='', license='GPL', packages=['jmclient'], - install_requires=['joinmarketbase==0.7.2dev', 'mnemonic', 'argon2_cffi', + install_requires=['joinmarketbase==0.7.2', 'mnemonic', 'argon2_cffi', 'bencoder.pyx>=2.0.0', 'pyaes'], python_requires='>=3.6', zip_safe=False) diff --git a/jmdaemon/setup.py b/jmdaemon/setup.py index fb05436..5e9e055 100644 --- a/jmdaemon/setup.py +++ b/jmdaemon/setup.py @@ -2,13 +2,13 @@ from setuptools import setup setup(name='joinmarketdaemon', - version='0.7.2dev', + version='0.7.2', description='Joinmarket client library for Bitcoin coinjoins', url='http://github.com/Joinmarket-Org/joinmarket-clientserver/jmdaemon', author='', author_email='', license='GPL', packages=['jmdaemon'], - install_requires=['txtorcon', 'pyopenssl', 'libnacl', 'joinmarketbase==0.7.2dev'], + install_requires=['txtorcon', 'pyopenssl', 'libnacl', 'joinmarketbase==0.7.2'], python_requires='>=3.6', zip_safe=False) diff --git a/scripts/joinmarket-qt.py b/scripts/joinmarket-qt.py index 84fb17e..a05a7a9 100755 --- a/scripts/joinmarket-qt.py +++ b/scripts/joinmarket-qt.py @@ -58,7 +58,7 @@ donation_address_sw = "bc1q5x02zqj5nshw0yhx2s4tj75z6vkvuvww26jak5" donation_address_url = "https://bitcoinprivacy.me/joinmarket-donations" #Version of this Qt script specifically -JM_GUI_VERSION = '17dev' +JM_GUI_VERSION = '17' from jmbase import get_log, stop_reactor from jmbase.support import DUST_THRESHOLD, EXIT_FAILURE, utxo_to_utxostr,\