Pre-release
Pre-release

@davecgh davecgh released this Feb 4, 2014 · 2585 commits to master since this release

Assets 4
  • Fix an issue when parsing scripts which contain invalid signatures that
    caused a chain fork on block
    0000000000000001e4241fd0b3469a713f41c5682605451c05d3033288fb2244
  • Correct an issue which could lead to an error in removeBlockNode
    (btcsuite/btcchain#4)
  • Improve addblock utility as follows:
    • Check imported blocks against all chain rules and checkpoints
    • Skip blocks which are already known so you can stop and restart the
      import or start the import after you have already downloaded a portion
      of the chain
    • Correct an issue where the utility did not shutdown cleanly after
      processing all blocks
    • Add error on attempt to import orphan blocks
    • Improve error handling and reporting
    • Display statistics after input file has been fully processed
  • Rework, optimize, and improve headers-first mode:
    • Resuming the chain sync from any point before the final checkpoint
      will now use headers-first mode
      (#69)
    • Verify all checkpoints as opposed to only the final one
    • Reduce and bound memory usage
    • Rollback to the last known good point when a header does not match a
      checkpoint
    • Log information about what is happening with headers
  • Improve btcctl utility in the following ways:
    • Add getaddednodeinfo command
    • Add getnettotals command
    • Add getblocktemplate command (wallet-specific)
    • Add getwork command (wallet-specific)
    • Add getnewaddress command (wallet-specific)
    • Add walletpassphrasechange command (wallet-specific)
    • Add walletlock command (wallet-specific)
    • Add sendfrom command (wallet-specific)
    • Add sendmany command (wallet-specific)
    • Add settxfee command (wallet-specific)
    • Add listsinceblock command (wallet-specific)
    • Add listaccounts command (wallet-specific)
    • Add keypoolrefill command (wallet-specific)
    • Add getreceivedbyaccount command (wallet-specific)
    • Add getrawchangeaddress command (wallet-specific)
    • Add gettxoutsetinfo command (wallet-specific)
    • Add listaddressgroupings command (wallet-specific)
    • Add listlockunspent command (wallet-specific)
    • Add listlock command (wallet-specific)
    • Add listreceivedbyaccount command (wallet-specific)
    • Add validateaddress command (wallet-specific)
    • Add verifymessage command (wallet-specific)
    • Add sendtoaddress command (wallet-specific)
  • Continue cleanup and work on implementing the RPC API:
    • Implement submitblock command
      (#61)
    • Implement help command
    • Implement ping command
    • Implement getaddednodeinfo command
      (#78)
    • Implement getinfo command
    • Update getpeerinfo to support bytesrecv and bytessent
      (#83)
  • Improve and correct several RPC server and websocket areas:
    • Change the connection endpoint for websockets from /wallet to /ws
      (#80)
    • Implement an alternative authentication for websockets so clients
      such as javascript from browsers that don't support setting HTTP
      headers can authenticate (#77)
    • Add an authentication deadline for RPC connections
      (#68)
    • Use standard authentication failure responses for RPC connections
    • Make automatically generated certificate more standard so it works
      from clients such as node.js and Firefox
    • Correct some minor issues which could prevent the RPC server from
      shutting down in an orderly fashion
    • Make all websocket notifications require registration
    • Change the data sent over websockets to text since it is JSON-RPC
    • Allow connections that do not have an Origin header set
  • Expose and track the number of bytes read and written per peer
    (btcsuite/btcwire#6)
  • Correct an issue with sendrawtransaction when invoked via websockets
    which prevented a minedtx notification from being added
  • Rescan operations issued from remote wallets are no stopped when
    the wallet disconnects mid-operation
    (#66)
  • Several optimizations related to fetching block information from the
    database
  • General code cleanup