diff --git a/doc/release-notes.txt b/doc/release-notes.txt index 414d5d68c..36b2f7530 100644 --- a/doc/release-notes.txt +++ b/doc/release-notes.txt @@ -1,99 +1,80 @@ (note: this is a temporary file, to be added-to by anybody, and deleted at release time) -Building this from - - $ git shortlog --no-merges v0.7.1.. - -Incompatible Changes --------------------- - -This release no longer maintains a full index of historical transaction ids -by default, so looking up an arbitrary transaction using the getrawtransaction -RPC call will not work. If you need that functionality, you must run once -with -txindex -reindex to rebuild block-chain indices (see below for more -details). - -Improvements ------------- - -Mac and Windows binaries are signed with certificates owned by the Bitcoin -Foundation, to be compatible with the new security features in OSX 10.8 and -Windows 8. - -LevelDB, a fast, open-source, non-relational database from Google, is -now used to store transaction and block indices. LevelDB works much better -on machines with slow I/O and is faster in general. Berkeley DB is now only -used for the wallet.dat file (public and private wallet keys and transactions -relevant to you). - -Pieter Wuille implemented many optimizations to the way transactions are -verified, so a running, synchronized node uses much less memory and does -much less I/O. He also implemented parallel signature checking, so if you -have a multi-CPU machine all CPUs will be used to verify transactions. - -New Features ------------- - -"Bloom filter" support in the network protocol for sending only relevant transactions to -lightweight clients. +Fee Policy changes +------------------ -contrib/verifysfbinaries is a shell-script to verify that the binary downloads -at sourceforge have not been tampered with. If you are able, you can help make -everybody's downloads more secure by running this occasionally to check PGP -signatures against download file checksums. +The default fee for low-priority transactions is lowered from 0.0005 BTC +(for each 1,000 bytes in the transaction; an average transaction is +about 500 bytes) to 0.0001 BTC. -contrib/spendfrom is a python-language command-line utility that demonstrates -how to use the "raw transactions" JSON-RPC api to send coins received from particular -addresses (also known as "coin control"). +Payments (transaction outputs) of 0.543 times the minimum relay fee +(0.00005430 BTC) are now considered 'non-standard', because storing them +costs the network more than they are worth and spending them will usually +cost their owner more in transaction fees than they are worth. -New/changed settings (command-line or bitcoin.conf file) --------------------------------------------------------- +Non-standard transactions are not relayed across the network, are not included +in blocks by most miners, and will not show up in your wallet until they are +included in a block. -dbcache : now controls LevelDB memory usage. Running with (for example) -dbcache=1000 -will use a gigabyte of memory and might make the initial blockchain download faster. +The default fee policy can be overridden using the -mintxfee and -minrelaytxfee +command-line options, but note that we intend to replace the hard-coded fees +with code that automatically calculates and suggests appropriate fees in the +0.9 release and note that if you set a fee policy significantly different from +the rest of the network your transactions may never confirm. -par : controls how many threads to use to validate transactions. Defaults to the number -of CPUs on your machine, use -par=1 to limit to a single CPU. +Bitcoin-Qt changes +------------------ -txindex : maintains an extra index of old, spent transaction ids so they will be found -by the getrawtransaction JSON-RPC method. Can only be set when the database is -initialized. +* New icon and splash screen +* Improve reporting of synchronization process +* Remove hardcoded fee recommendations +* Improve metadata of executable on MacOSX and Windows +* Move export button to individual tabs instead of toolbar +* Add "send coins" command to context menu in address book +* Add "copy txid" command to copy transaction IDs from transaction overview +* Save & restore window size and position when showing & hiding window +* New translations: Arabic (ar), Bosnian (bs), Catalan (ca), Welsh (cy), + Esperanto (eo), Interlingua (la), Latvian (lv) and many improvements + to current translations -reindex : rebuild block and transaction indices from the downloaded block data. +MacOSX: +* OSX support for click-to-pay (bitcoin:) links +* Fix GUI disappearing problem on MacOSX (issue #1522) -New JSON-RPC API Features -------------------------- +Linux/Unix: +* Copy addresses to middle-mouse-button clipboard -lockunspent / listlockunspent allow locking transaction outputs for a period of time so -they will not be spent by other processes that might be accessing the same wallet. -addnode / getaddednodeinfo methods, to connect to specific peers without restarting. +Command-line options +-------------------- -importprivkey now takes an optional boolean parameter (default true) to control whether -or not to rescan the blockchain for transactions after importing a new private key. +* -walletnotify will call a command on receiving transactions that affect the wallet. +* -alertnotify will call a command on receiving an alert from the network. +* -par now takes a negative number, to leave a certain amount of cores free. -gettxout retrieves a single transaction output from the current set of unspent outputs. -Optionally, the mempool transactions are taken into account. +JSON-RPC API changes +-------------------- -gettxoutsetinfo calculates statistics about the current set of unspent outputs. +* listunspent now lists account and address infromation. +* getinfo now also returns the time adjustment estimated from your peers. +* getpeerinfo now returns bytessent, bytesrecv and syncnode. +* gettxoutsetinfo returns statistics about the unspent transaction output database. +* gettxout returns information about a specific unspent transaction output. -Important Bug Fixes -------------------- -Privacy leak: the position of the "change" output in most transactions was not being -properly randomized, making network analysis of the transaction graph to identify -users' wallets easier. +Networking changes +------------------ -Zero-confirmation transaction vulnerability: accepting zero-confirmation transactions -(transactions that have not yet been included in a block) from somebody you do not -trust is still not recommended, because there will always be ways for attackers to -double-spend zero-confirmation transactions. However, this release includes a bug -fix that makes it a little bit more difficult for attackers to double-spend a -certain type ("lockTime in the future") of zero-confirmation transaction. +* Significant changes to the networking code, reducing latency and memory consumption. +* Avoid initial block download stalling. +* Remove IRC seeding support. +* Performance tweaks. +* Added testnet DNS seeds. -Dependency Changes ------------------- +Wallet compatibility/rescuing +----------------------------- -Qt 4.8.3 (compiling against older versions of Qt 4 should continue to work) +* Cases where wallets cannot be opened in another version/installation should be reduced. +* -salvagewallet now works for encrypted wallets.