more release notes
[electrum-nvc.git] / RELEASE-NOTES
1 # Release 1.9.8
2
3 * Electrum servers were upgraded to version 0.9. The new server stores
4   a Patrica tree of all UTXOs, an idea proposed by Alan Reiner in the
5   bitcointalk forum. This property allows the client to directly
6   request the balance of any address. The new commands are:
7      1. getaddressbalance <address> 
8      2. getaddressunspent <address>
9      3. getutxoaddress <txid> <pos>
10
11 * In addition, two commands for message encryption were added:
12      1. encrypt <pubkey> <message>
13      2. decrypt <pubkey> <message>  
14
15   The encryption algorithm is ECIES, and code was was borrowed from
16   https://github.com/jackjack-jj/jeeq.  In order to know the public
17   key corresponding to a Bitcoin address in your wallet, you can use
18   the 'getpubkeys' command. The 'decrypt' command assumes that the
19   wallet has the private key corresponding to the public key passed as
20   argument.
21
22 * The encrypt and decrypt functions are available in the Qt GUI (from
23   the menubar, or right click on one of your addresses if you want to
24   use its public key).
25
26 * Command-line commands that require a connection to the network spawn
27   a daemon, that remains connected and handles subsequent
28   commands. The daemon terminates itself if it remains unused for more
29   than one minute. The purpose of this is to make scripting more
30   efficient. For example, a bash script using many electrum commands
31   will open only one connection.
32
33 # Release 1.9.7
34 * Fix for offline signing
35 * Various bugfixes
36 * GUI usability improvements
37 * Coinbase Buyback plugin
38
39 # Release 1.9.6
40 * During wallet creation, do not write seed to disk until it is encrypted.
41 * Confirmation dialog if the transaction fee is higher than 1mBTC.
42 * bugfixes
43
44 # Release 1.9.5
45
46 * Coin control: select addresses to send from
47 * Put addresses that have been used in a minimized section (Qt GUI)
48 * Allow non ascii chars in passwords
49
50
51 # Release 1.9.4
52 bugfixes: offline transactions
53
54 # Release 1.9.3
55 bugfixes: connection problems, transactions staying unverified
56
57 # Release 1.9.2
58 * fix a syntax error
59
60 # Release 1.9.1
61 * fix regression with --offline mode
62 * fix regression with --portable mode: use a dedicated directory
63
64 # Release 1.9
65
66 * The client connects to multiple servers in order to retrieve block headers and find the longest chain
67 * SSL certificate validation (to prevent MITM)
68 * Deterministic signatures (RFC 6979)
69 * Menu to create/restore/open wallets
70 * Create transactions with multiple outputs from CSV (comma separated values)
71 * New text gui: stdio
72 * Plugins are no longer tied to the qt GUI, they can reach all GUIs
73 * Proxy bugs have been fixed
74
75
76 # Release 1.8.1
77
78 * Notification option when receiving new tranactions 
79 * Confirm dialogue before sending large amounts 
80 * Alternative datafile location for non-windows systems
81 * Fix offline wallet creation
82 * Remove enforced tx fee
83 * Tray icon improvements
84 * Various bugfixes 
85
86
87 # Release 1.8
88
89 * Menubar in classic gui
90 * Updated the QR Code plugin to enable offline/online wallets to transmit unsigned/signed transactions via QR code.
91 * Fixed bug where never-confirmed transactions prevented further spending
92
93
94 # Release 1.7.4
95
96 * Increase default fee
97 * fix create and restore in command line
98 * fix verify message in the gui
99
100
101 # Release 1.7.3:
102
103 * Classic GUI can display amounts in mBTC
104 * Account selector in the classic GUI
105 * Changed the way the portable flag uses without supplying a -w argument
106 * Classic GUI asks users to enter their seed on wallet creation
107
108
109 # Release 1.7.2:  
110
111 * Transactions that are in the same block are displayed in chronological order in the history.
112 * The client computes transaction priority and rejects zero-fee transactions that need a fee.
113 * The default fee was lowered to 200 uBTC per kb.
114 * Due to an internal format change, your history may be pruned when
115   you open your wallet for the first time after upgrading to 1.7.2. If
116   this is the case, please visit a full server to restore your full
117   history. You will only need to do that once.
118
119
120 # Release 1.7.1:  bugfixes.
121
122
123 # Release 1.7
124
125 * The Classic GUI can be extended with plugins. Developers who want to
126 add new features or third-party services to Electrum are invited to
127 write plugins. Some previously existing and non-essential features of
128 Electrum (point-of-sale mode, qrcode scanner) were removed from the
129 core and are now available as plugins.
130
131 * The wallet waits for 2 confirmations before creating new
132 addresses. This makes recovery from seed more robust. Note that it
133 might create unwanted gaps if you use Electrum 1.7 together with older
134 versions of Electrum.
135
136 * An interactive Python console replaces the 'Wall' tab. The provided
137 python environment gives users access to the wallet and gui. Most
138 electrum commands are available as python function in the
139 console. Custom scripts an be loaded with a "run(filename)"
140 command. Tab-completions are available.
141
142 * The location of the Electrum folder in Windows changed from
143 LOCALAPPDATA to APPDATA. Discussion on this topic can be found here:
144 https://bitcointalk.org/index.php?topic=144575.0
145
146 * Private keys can be exported from within the classic GUI:
147   For a single address, use the address menu (right-click).
148   To export the keys of your entire wallet, use the settings dialog (import/export tab).
149
150 * It is possible to create, sign and redeem multisig transaction using the 
151 command line interface.  This is made possible by the following new commands:
152     dumpprivkey, listunspent, createmultisig, createrawtransaction, decoderawtransaction, signrawtransaction
153 The syntax of these commands is similar to their bitcoind counterpart. 
154 For an example, see Gavin's tutorial: https://gist.github.com/gavinandresen/3966071
155
156 * Offline wallets now work in a way similar to Armory: 
157   1. user creates an unsigned transaction using the online (watching-only) wallet.
158   2. unsigned transaction is copied to the offline computer, and signed by the offline wallet.
159   3. signed transaction is copied to the online computer, broadcasted by the online client.
160   4. All these steps can be done via the command line interface or the classic GUI. 
161
162 * Many command line commands have been renamed in order to make the syntax consistent with bitcoind.
163
164 # Release 1.6.2
165
166 == Classic GUI
167 * Added new version notification
168
169 # Release 1.6.1 (11-01-2013)
170
171 == Core
172 * It is now possible to restore a wallet from MPK (this will create a watching-only wallet)
173 * A switch button allows to easily switch between Lite and Classic GUI.
174
175 == Classic GUI
176 * Seed and MPK help dialogs were rewritten
177 * Point of Sale: requested amounts can be expressed in other currencies and are converted to bitcoin.
178
179 == Lite GUI
180 * The receiving button was removed in favor of a menu item to keep it consistent with the history toggle.
181
182 # Release 1.6.0 (07-01-2013)
183
184 == Core
185 * (Feature) Add support for importing, signing and verifiying compressed keys
186 * (Feature) Auto reconnect to random server on disconnect
187 * (Feature) Ultimate fallback to HTTP port 80 if TCP doesn't work on any server
188 * (Bug) Under rare circumstances changing password with incorrect password could damage wallet
189
190 == Lite GUI
191 * (Chore) Use blockchain.info for exchange rate data 
192 * (Feature) added currency conversion for BRL, CNY, RUB
193 * (Feature) Saraha theme
194 * (Feature) csv import/export for transactions including labels 
195
196 == Classic GUI
197 * (Chore) pruning servers now called "p", full servers "f" to avoid confusion with terms
198 * (Feature) Debits in history shown in red
199 * (Feature) csv import/export for transactions including labels 
200
201 # Release 1.5.8 (02-01-2013)
202
203 == Core
204 * (Bug) Fix pending address balance on received coins for pruning servers 
205 * (Bug) Fix history command line option to show output again (regression by SPV)
206 * (Chore) Add timeout to blockchain headers file download by HTTP
207 * (Feature) new option: -L, --language: default language used in GUI. 
208
209 == Lite GUI
210 * (Bug) Sending to auto-completed contacts works again
211 * (Chore) Added version number to title bar
212
213 == Classic GUI
214 * (Feature) Language selector in options.
215
216 # Release 1.5.7 (18-12-2012)
217
218 == Core
219 * The blockchain headers file is no longer included in the packages, it is downloaded on startup.
220 * New command line option: -P or --portable, for portable wallets. With this flag, all preferences are saved to the wallet file, and the blockchain headers file is in the same directory as the wallet
221
222 == Lite GUI
223 * (Feature) Added the ability to export your transactions to a CSV file.
224 * (Feature) Added a label dialog after sending a transaction.
225 * (Feature) Reworked receiving addresses; instead of a random selection from one of your receiving addresses a new widget will show listing unused addresses.
226 * (Chore)   Removed server selection. With all the new server options a simple menu item does not suffice anymore.
227