Skip to content

Commit 36eb04b

Browse files
committed
Merge #1538: Release notes and version for v0.9.10
9f10af3 Release notes and version for v0.9.10 (Kristaps Kaupe) Pull request description: My first attempt at doing release, please review! Top commit has no ACKs. Tree-SHA512: f52718385b90695aee6063f911d9705b5216c4aa7fc7574a4d5e8ed1e52fd3523485c3208c2c1e07f547c5f133f07642eb1198c17db35c8f73ea1276ffb8d704
2 parents fa17236 + 9f10af3 commit 36eb04b

File tree

9 files changed

+136
-10
lines changed

9 files changed

+136
-10
lines changed

docs/JOINMARKET-QT-GUIDE.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
The GUI can be run directly from Python script by doing `./joinmarket-qt.sh` from within `scripts/`, or, if using Microsoft Windows, by running the executable file/binary (**[CLICK HERE](https://github.com/JoinMarket-Org/joinmarket-clientserver/releases)** to download the latest release). If you followed normal installation procedure under Linux, desktop entry of JoinMarketQt should be added to the application menu of your desktop environment.
66

7-
**LATEST VERSION of JoinMarket-Qt is GUI version 31**. You can check the version via `About` in the menu.
7+
**LATEST VERSION of JoinMarket-Qt is GUI version 32**. You can check the version via `About` in the menu.
88

99
No other files / setup should be needed.
1010

+126
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
Joinmarket-clientserver 0.9.10:
2+
=================
3+
4+
<https://github.com/joinmarket-org/joinmarket-clientserver/releases/tag/v0.9.10>
5+
6+
Please report bugs using the issue tracker at github:
7+
8+
<https://github.com/joinmarket-org/joinmarket-clientserver/issues>
9+
10+
Upgrading
11+
=========
12+
13+
To upgrade:
14+
15+
*Reminder: always back up and recreate your joinmarket.cfg file when doing the upgrade; this is to make sure you have the new default settings.*
16+
17+
(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).)
18+
19+
(If you are upgrading from a version pre-0.9.0 please read the [release notes](https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/release-notes/release-notes-0.9.0.md) to find out how about [fidelity bonds](../fidelity-bonds.md) are relevant to your use-case).
20+
21+
First run the `install.sh` script as mentioned in the README. When prompted to overwrite the directory `jmvenv`, accept.
22+
23+
Note that `./install.sh -?` will show the options for installation. See the section on Installation below for a new option for Tor.
24+
25+
Changes
26+
===============
27+
28+
### Removal of Python 3.6 support, 3.7 or newer is required now
29+
30+
Python 3.6 has been end-of-life since end of 2021 and Python 3.7 is also minimum requirement for planned future packaging changes.
31+
32+
* `63890ee` Drop Python 3.6 support
33+
* `9f4da21` Document requirement of Python 3.7 or newer
34+
35+
### Fee estimation changes and fee bumping
36+
37+
Command line script `bumpfee.py` is added which gives simple way to speed up unconfirmed transaction by replacing it with higher fee paying one if all inputs belong to Joinmarket wallet (so will not work with coinjoins) and original transaction has signalled BIP125 opt-in RBF flag. BIP125 signalling is also enabled by default, in previous versions that was only possible with `sendpayment.py` by adding manually command line flag.
38+
39+
Also transaction fee randomization (which we do for privacy reasons) code is now changed to randomize only upwards, but never below the manually specified or automatically estimated fee for block confirmation target.
40+
41+
* `eeb362b` added bumpfee.py script for bumping fees for rbf transactions
42+
* `907f1b0` Signal BIP125 opt-in RBF for non-cj sends by default
43+
* `67ff868` Randomize transaction fees only upwards
44+
* `d5c240b` Refactor fee estimation code
45+
46+
### Wallet RPC API improvements
47+
48+
Two new API endpoints are added - `/getinfo`, which currently allows to get version of Joinmarket running in backend, and `/wallet/recover`, which allows recover wallet from seed phrase using API.
49+
50+
* `7f4eaa9` RPC-API: add ability to recover wallet
51+
* `828398f` RPC-API: read gaplimit from config
52+
* `c9f6ac8` RPC-API: add getinfo endpoint.
53+
54+
### BIP21 bitcoin: URI changes
55+
56+
Multiple duplicate arguments with the same key, like amount, now is parsed in guarateed order, where last one wins. That matches behaviour of Bitcoin Core.
57+
58+
* `88bd45b` Parse URI params in guaranteed order, for duplicates, last one wins
59+
60+
### Code quality improvements
61+
62+
* `373493f` Refactor: move output descriptor code out of blockchaininterface
63+
* `f6795e4` Add typehints to jmbitcoin/jmbitcoin/amount.py
64+
* `3805c7a` Remove ElectrumWalletInterface
65+
* `e31e839` Add get_wallet_rescan_status() instead of getwalletinfo() for bci
66+
* `2cc7f21` Refactor: alphabetical order of imports and `abc` changes
67+
* `53a9af5` Add `**/build/` to .gitignore
68+
* `8255c18` Alphabetical order of imports and add typehints
69+
* `a85832a` Remove deprecated check for Python 3+
70+
* `6b2a248` Add typehints to BIP21 code
71+
* `e4f74b5` Deduplicate AES code
72+
* `4e5d894` Remove imports from future and past
73+
74+
### Bugfixes and other minor changes
75+
76+
* `6a47dd2` Add missing space to error message
77+
* `a94d871` ignore txs with invalid sPKs when scanning
78+
* `34c0c45` Add -l/--label-change option to sendpayment.py to automatically label change address
79+
* `abbffef` ignore matched txs with invalid sPKs when scanning
80+
* `f68ae8b` Rename "sat/vkB" to "sat/kvB"
81+
* `9ce4e98` JM requires Python 3.6+ currently
82+
* `6cf2237` Add space between address and comma for added utxos msg for easier selection by double clicking
83+
* `dd0176e` Check wallet lock file before asking for password
84+
* `90fe9b2` Fix pyaes dependency, should be in jmbase, not jmbitcoin
85+
* `dafc180` no lock check on readonly
86+
87+
### Documentation
88+
89+
* `9fe2174` Fix git command typos
90+
* `f8af2bf` Fix libsecp256k1 commit ids in docs
91+
* `cb2ad2b` docs: add restart config to directory node service
92+
93+
### Installation and dependencies
94+
95+
* `f57e9fd` Bump cryptography for 64-bit ARM and x86
96+
* `4b2cbe9` Pin werkzeug dependency to 2.2.0
97+
* `c7b59ae` Bump werkzeug from 2.2.0 to 2.2.3 in /jmclient
98+
* `77bd017` Bump pyOpenSSL and hence cryptography
99+
100+
### Testing
101+
102+
* `dd1bde0` update ygrunner test for 1427
103+
* `224de08` CI: Bump used GitHub Actions to newer versions
104+
* `3641f1e` Disable venv caching
105+
* `198117f` CI: Remove editable installs
106+
* `3c0b508` Remove unnecessary commands from setup joinmarket + virtualenv step
107+
* `9072e10` Don't alter LD_LIBRARY_PATH, PKG_CONFIG_PATH and C_INCLUDE_PATH in tests
108+
* `c921206` GitHub workflow update (test multiple Bitcoin Core versions)
109+
* `cd1f394` Add test coverage for is_bip21_uri()
110+
* `e3681f7` Fixes websocket test in test_wallet_rpc.py
111+
112+
Credits
113+
=======
114+
115+
Thanks to everyone who directly contributed to this release -
116+
117+
- @AdamISZ
118+
- @akhavr
119+
- @BitcoinWukong
120+
- @kristapsk
121+
- @openoms
122+
- @PulpCattel
123+
- @roshii
124+
- @takinbo
125+
126+
And thanks also to those who submitted bug reports, tested, reviewed and otherwise helped out.

jmbase/jmbase/support.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
import urllib.parse as urlparse
1212

1313
# JoinMarket version
14-
JM_CORE_VERSION = '0.9.10dev'
14+
JM_CORE_VERSION = '0.9.10'
1515

1616
# global Joinmarket constants
1717
JM_WALLET_NAME_PREFIX = "joinmarket-wallet-"

jmbase/setup.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33

44
setup(name='joinmarketbase',
5-
version='0.9.10dev',
5+
version='0.9.10',
66
description='Joinmarket client library for Bitcoin coinjoins',
77
url='https://github.com/JoinMarket-Org/joinmarket-clientserver/tree/master/jmbase',
88
author='',

jmbitcoin/setup.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33

44
setup(name='joinmarketbitcoin',
5-
version='0.9.10dev',
5+
version='0.9.10',
66
description='Joinmarket client library for Bitcoin coinjoins',
77
url='https://github.com/JoinMarket-Org/joinmarket-clientserver/tree/master/jmbitcoin',
88
author='',

jmclient/setup.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22

33

44
setup(name='joinmarketclient',
5-
version='0.9.10dev',
5+
version='0.9.10',
66
description='Joinmarket client library for Bitcoin coinjoins',
77
url='https://github.com/JoinMarket-Org/joinmarket-clientserver/tree/master/jmclient',
88
author='',
99
author_email='',
1010
license='GPL',
1111
packages=['jmclient'],
12-
install_requires=['joinmarketbase==0.9.10dev', 'mnemonic==0.20',
12+
install_requires=['joinmarketbase==0.9.10', 'mnemonic==0.20',
1313
'argon2_cffi==21.3.0', 'bencoder.pyx==3.0.1',
1414
'klein==20.6.0', 'pyjwt==2.4.0',
1515
'autobahn==20.12.3', 'werkzeug==2.2.3'],

jmdaemon/setup.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33

44
setup(name='joinmarketdaemon',
5-
version='0.9.10dev',
5+
version='0.9.10',
66
description='Joinmarket client library for Bitcoin coinjoins',
77
url='https://github.com/JoinMarket-Org/joinmarket-clientserver/tree/master/jmdaemon',
88
author='',
@@ -13,6 +13,6 @@
1313
'cryptography==3.3.2; platform_machine != "aarch64" and platform_machine != "amd64" and platform_machine != "x86_64"',
1414
'cryptography==41.0.2; platform_machine == "aarch64" or platform_machine == "amd64" or platform_machine == "x86_64"',
1515
'pyopenssl==23.2.0', 'libnacl==1.8.0',
16-
'joinmarketbase==0.9.10dev'],
16+
'joinmarketbase==0.9.10'],
1717
python_requires='>=3.7',
1818
zip_safe=False)

jmqtui/setup.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from setuptools import setup
22

33
setup(name='joinmarketui',
4-
version='0.9.10dev',
4+
version='0.9.10',
55
description='Joinmarket client library for Bitcoin coinjoins',
66
url='https://github.com/JoinMarket-Org/joinmarket-clientserver/tree/master/jmqtui',
77
author='',

scripts/joinmarket-qt.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
donation_address_url = "https://bitcoinprivacy.me/joinmarket-donations"
5454

5555
#Version of this Qt script specifically
56-
JM_GUI_VERSION = '32dev'
56+
JM_GUI_VERSION = '32'
5757

5858
from jmbase import get_log, stop_reactor, set_custom_stop_reactor
5959
from jmbase.support import EXIT_FAILURE, utxo_to_utxostr,\

0 commit comments

Comments
 (0)