(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.6.3.. Bitcoin Improvement Proposals implemented ----------------------------------------- BIP 22 - 'getblocktemplate', 'submitblock' RPCs BIP 34 - block version 2, height in coinbase BIP 35 - 'mempool' message, extended 'getdata' message behavior Core bitcoin handling and blockchain database --------------------------------------------- * Reduced CPU usage, by eliminating some redundant hash calculations * Cache signature verifications, to eliminate redundant signature checks * Transactions with zero-value outputs are considered non-standard * Mining: when creating new blocks, sort 'paid' area by fee-per-kb * Database: better validation of on-disk stored data * Database: minor optimizations and reliability improvements * -loadblock=FILE will import an external block file * Additional DoS prevention measures JSON-RPC API ------------ * Internal HTTP server is now thread-per-connection, rather than a single-threaded queue that would stall on network I/O. * Internal HTTP server supports HTTP/1.1, pipelined requests and connection keep-alive. * Support JSON-RPC 2.0 batches, to encapsulate multiple JSON-RPC requests within a single HTTP request. * IPv6 support * Added raw transaction API. See https://gist.github.com/2839617 * Added 'getrawmempool', to list contents of TX memory pool * Added 'getpeerinfo', to list data about each connected network peer * Added 'listaddressgroupings' for better coin control * Rework gettransaction, getblock calls. 'gettransaction' responds for non-wallet TXs now. * Remove deprecated RPC 'getblocknumber' * New blockchain checkpoint at block 193,000 * listtransactions output now displays "smart" times for transactions, and 'blocktime' and 'timereceived' fields were added P2P networking -------------- * IPv6 support * Tor/I2P hidden service support * Attempts to fix "stuck blockchain download" problems * Replace BDB database "addr.dat" with internally-managed "peers.dat" file containing peer address data. * Lower default send buffer from 10MB to 1MB * proxy: SOCKS5 by default * Support connecting by hostnames passed to proxy (-proxydns) * Add -seednode connections, and use this for -dnsseed + -proxydns * Added -externalip and -discover * Add -onlynet to connect only to a given network (IPv4, IPv6, or Tor) * Separate listening sockets, -bind= Qt GUI ------ * Add UI RPC console / debug window * Re-Enable URI handling on Windows, add safety checks and tray-notifications * Harmonize the use of ellipsis ("...") to be used in menus, but not on buttons * Add 2 labels to the overviewpage that display Wallet and Transaction status (obsolete or current) * Extend the optionsdialog (e.g. language selection) and re-work it to a tabbed UI * Merge sign/verify message into a single window with tabbed UI * Ensure a changed bitcoin unit immediately updates all GUI elements that use units * Update QR Code dialog * Improve error reporting at startup * Fine-grained UI updates for a much smoother UI during block downloads * Remove autocorrection of 0/i in addresses in UI * Reorganize tray icon menu into more logical order * Persistently poll for balance change when number of blocks changed * Much better translations * Override progress bar design on platforms with segmented progress bars to assist with readability * Added 'immature balance' display on the overview page * (Windows only): enable ASLR and DEP for bitcoin-qt.exe * (Windows only): add meta-data to bitcoin-qt.exe (e.g. description) Internal codebase ----------------- * Additional unit tests * Compile warning fixes Miscellaneous ------------- * Reopen debug.log upon SIGHUP * Bash programmable completion for bitcoind(1) * On supported OS's, each thread is given a useful name