btcwallet v0.6.0-alpha
Pre-release
Pre-release
jrick
released this
27 May 19:07
·
1102 commits
to master
since this release
New features:
- Add initial account support (#155):
- Add account names for each account number
- Create initial account with the "default" name
- Create new accounts using the createnewaccount RPC
- All accounts (with the exception of the imported account) may be
renamed using the renameaccount RPC - RPC requests with an unspecified account that default to the unnamed
account in Bitcoin Core Wallet default to "default", the name of the
initial account - Several RPCs with account parameters do not work with btcwallet
accounts due to concerns over expectations of API compatibility with
Bitcoin Core Wallet. A new RPC API is being planned to rectify this
(#220).
- Store transactions, transaction history, and spend tracking in the
database (#217, #234)- A full rescan is required when updating from previous wallet
versions to rebuild the transaction history
- A full rescan is required when updating from previous wallet
- Add utility (cmd/dropwtxmgr) to drop transaction history and force a
rescan (#234) - Implement the help RPC to return single line usages of all wallet and
btcd server requests as well as detailed usage for a single request
Bug fixes:
- Handle chain reorgs by unconfirming transactions from removed blocks
(#248) - Rollback all transaction history when none of the saved recently seen
block hashes are known to btcd (#234, #281) - Prevent the situation where the default account was renamed but cannot
be renamed back to "" or "default" by removing the special case naming
policy for the default account (#253) - Create the initial account address if needed when calling the
getaccountaddress RPC (#238) - Prevent listsinceblock RPC from including all listtransactions result
objects for all transactions since the genesis block (fix included in
#227) - Add missing fields to listtransactions and gettransaction RPC results
(#265) - Remove target confirmations limit on listsinceblock results (#266)
- Add JSON array to report errors creating input signature for
signrawtransaction RPC (#267) - Use negative fees with listtransactions result types (#272)
- Prevent duplicate wallet lock attempt after timeout if explicitly
locked (#275) - Use correct RPC server JSON-RPC error code for incorrect passphrases
with a walletpassphrase request (#284)
Regressions:
- Inserting transactions and marking outputs as controlled by wallet in
the new transaction database is extremely slow compared to the previous
in-memory implementation. Later versions may improve this performance
regression by using write-ahead logging (WAL) and performing more
updates at a time under a single database transaction.
Notable developer-related changes:
- Relicense all code to the btcsuite developers (#258)
- Replace txstore package with wtxmgr, the walletdb-based transaction
store (#217, #234) - Add Cursor API to walletdb for forwards and backwards iteration over
a bucket (included in #234) - Factor out much of main's wallet.go into a wallet package (#213,
#276, #255) - Convert RPC server and client to btcjson v2 API (#233, #227)
- Help text and single line usages for the help RPC are pregenerated
from descriptions in the internal/rpchelp package and saved as
globals in main. Help text must be regenerated (usinggo generate
)
each time the btcjson struct tags change or the help definitions are
modified.
- Help text and single line usages for the help RPC are pregenerated
- Add additional features to the votingpool package:
- Addresses marked as used after appearing publicly on the blockchain or
in mempool; required for future single-use address support (#207) - Modified waddrmgr APIs to use ForEach functions to iterate over
address strings and managed addresses to improve scability (#216) - Move legacy directory under internal directory to prevent importing
of unmaintained packages (enforced since Go 1.5) (#285) - Improve test coverage in the waddrmgr and wtxmgr packages (#239, #217)
Contributors (alphabetical order):
- Dave Collins
- Guilherme Salgado
- Javed Khan
- Josh Rickmar
- Manan Patel
MSI Checksums:
SHA256(btcwallet_standalone_0.6.0-alpha_x64.msi)= 7968bceb1f7f18b37861c359912aea30f39e2e03a56085f2f3b26e24462fbff0
SHA256(btcwallet_standalone_0.6.0-alpha_x86.msi)= e5738fb4f308b0341221b3ebb3ebb835e7a0dcbb6c6905b24dfdc5b790bfceba
SHA512(btcwallet_standalone_0.6.0-alpha_x64.msi)= 622bd1e50330236ff68924511aefa73a6b1d7d0bc3f207e273588c5223f909d9cf4fa78bf395e7b9c9eb8e57a032f82a46b049ab717bc7c11a68cc17e82fe818
SHA512(btcwallet_standalone_0.6.0-alpha_x86.msi)= 20820673cd626608abf3753713e15517ead430d282d6cec4471954a52bd6f296468626792c603ccf32928fcaeea1abaa93a3c85d3c07e18dca277a155b3b5e6c