@@ -3,71 +3,91 @@ release time)
3
3
4
4
Building this from
5
5
6
- $ git shortlog --no-merges v0.7.0..
7
-
8
- How to Upgrade
9
- --------------
10
-
11
- If you are running an older version, shut it down. Wait
12
- until it has completely shut down (which might take a few minutes for older
13
- versions), then run the installer (on Windows) or just copy over
14
- /Applications/Bitcoin-Qt (on Mac) or bitcoind/bitcoin-qt (on Linux).
15
-
16
- If you were running on Linux with a version that might have been compiled
17
- with a different version of Berkeley DB (for example, if you were using an
18
- Ubuntu PPA version), then run the old version again with the -detachdb
19
- argument and shut it down; if you do not, then the new version will not
20
- be able to read the database files and will exit with an error.
21
-
22
- Explanation of -detachdb (and the new "stop true" RPC command):
23
- The Berkeley DB database library stores data in both ".dat" and
24
- "log" files, so the database is always in a consistent state,
25
- even in case of power failure or other sudden shutdown. The
26
- format of the ".dat" files is portable between different
27
- versions of Berkeley DB, but the "log" files are not-- even minor
28
- version differences may have incompatible "log" files. The
29
- -detachdb option moves any pending changes from the "log" files
30
- to the "blkindex.dat" file for maximum compatibility, but makes
31
- shutdown much slower. Note that the "wallet.dat" file is always
32
- detached, and versions prior to 0.6.0 detached all databases
33
- at shutdown.
34
-
35
- New features
6
+ $ git shortlog --no-merges v0.7.1..
7
+
8
+ Incompatible Changes
9
+ --------------------
10
+
11
+ This release no longer maintains a full index of historical transaction ids
12
+ by default, so looking up an arbitrary transaction using the getrawtransaction
13
+ RPC call will not work. If you need that functionality, you must run once
14
+ with -txindex=1 -reindex=1 to rebuild block-chain indices (see below for more
15
+ details).
16
+
17
+ Improvements
36
18
------------
37
19
38
- * Added a boolean argument to the RPC 'stop' command, if true sets
39
- -detachdb to create standalone database .dat files before shutting down.
20
+ Mac and Windows binaries are signed with certificates owned by the Bitcoin
21
+ Foundation, to be compatible with the new security features in OSX 10.8 and
22
+ Windows 8.
40
23
41
- * -salvagewallet command-line option, which moves any existing wallet.dat
42
- to wallet.{timestamp}.dat and then attempts to salvage public/private
43
- keys and master encryption keys (if the wallet is encrypted) into
44
- a new wallet.dat. This should only be used if your wallet becomes
45
- corrupted, and is not intended to replace regular wallet backups .
24
+ LevelDB, a fast, open-source, non-relational database from Google, is
25
+ now used to store transaction and block indices. LevelDB works much better
26
+ on machines with slow I/O and is faster in general. Berkeley DB is now only
27
+ used for the wallet.dat file (public and private wallet keys and transactions
28
+ relevant to you) .
46
29
47
- * Import $DataDir/bootstrap.dat automatically, if it exists.
30
+ Pieter Wuille implemented many optimizations to the way transactions are
31
+ verified, so a running, synchronized node uses much less memory and does
32
+ much less I/O. He also implemented parallel signature checking, so if you
33
+ have a multi-CPU machine all CPUs will be used to verify transactions.
48
34
49
- Dependency changes
50
- ------------------
35
+ New Features
36
+ ------------
37
+
38
+ "Bloom filter" support in the network protocol for sending only relevant transactions to
39
+ lightweight clients.
40
+
41
+ contrib/verifysfbinaries is a shell-script to verify that the binary downloads
42
+ at sourceforge have not been tampered with. If you are able, you can help make
43
+ everybody's downloads more secure by running this occasionally to check PGP
44
+ signatures against download file checksums.
45
+
46
+ contrib/spendfrom is a python-language command-line utility that demonstrates
47
+ how to use the "raw transactions" JSON-RPC api to send coins received from particular
48
+ addresses (also known as "coin control").
51
49
52
- * Qt 4.8.2 for Windows builds
50
+ New/changed settings (command-line or bitcoin.conf file)
51
+ --------------------------------------------------------
53
52
54
- * openssl 1.0.1c
53
+ dbcache : now controls LevelDB memory usage. Running with (for example) -dbcache=1000
54
+ will use a gigabyte of memory and might make the initial blockchain download faster.
55
55
56
- Bug fixes
57
- ---------
56
+ par : controls how many threads to use to validate transactions. Defaults to the number
57
+ of CPUs on your machine, use -par=1 to limit to a single CPU.
58
58
59
- * When running -testnet, use RPC port 18332 by default.
59
+ txindex : maintains an extra index of old, spent transaction ids so they will be found
60
+ by the getrawtransaction JSON-RPC method.
60
61
61
- * Better detection and handling of corrupt wallet.dat and blkindex.dat files.
62
- Previous versions would crash with a DB_RUNRECOVERY exception, this
63
- version detects most problems and tells you how to recover if it
64
- cannot recover itself.
62
+ reindex : rebuild block and transaction indices from the downloaded block data.
65
63
66
- * Fixed an uninitialized variable bug that could cause transactions to
67
- be reported out of order.
64
+ New JSON-RPC API Features
65
+ -------------------------
68
66
69
- * Fixed a bug that could cause occasional crashes on exit.
67
+ lockunspent / listlockunspent allow locking transaction outputs for a period of time so
68
+ they will not be spent by other processes that might be accessing the same wallet.
69
+
70
+ addnode / getaddednodeinfo methods, to connect to specific peers without restarting.
71
+
72
+ importprivkey now takes an optional boolean parameter (default true) to control whether
73
+ or not to rescan the blockchain for transactions after importing a new private key.
74
+
75
+ Important Bug Fixes
76
+ -------------------
77
+
78
+ Privacy leak: the position of the "change" output in most transactions was not being
79
+ properly randomized, making network analysis of the transaction graph to identify
80
+ users' wallets easier.
81
+
82
+ Zero-confirmation transaction vulnerability: accepting zero-confirmation transactions
83
+ (transactions that have not yet been included in a block) from somebody you do not
84
+ trust is still not recommended, because there will always be ways for attackers to
85
+ double-spend zero-confirmation transactions. However, this release includes a bug
86
+ fix that makes it a little bit more difficult for attackers to double-spend a
87
+ certain type ("lockTime in the future") of zero-confirmation transaction.
88
+
89
+ Dependency Changes
90
+ ------------------
70
91
71
- * Warn the user that they need to create fresh wallet backups after they
72
- encrypt their wallet.
92
+ Qt 4.8.3 (compiling against older versions of Qt 4 should continue to work)
73
93
0 commit comments