Skip to content

Releases: revault/revaultd

v0.4.0: Babidi Somniosidae

19 May 11:52
0.4.0
b47212b
Compare
Choose a tag to compare

New requirements:

  • Changes bitcoind minimum supported version to 22.0

Features:

  • Bitcoind version is now checked at startup
  • The bitcoind poller rescans from the latest tip, so we won't
    miss any historical vault (this holds for reorgs too)
  • We now exchange signatures with the watchtowers in a single batch
  • A participant_type field was added to the getinfo result
  • The hex field of the listpresignedtxs result was removed
  • Add cpfp_amount and miner_fee to gethistory events
  • Add status, cpfp_amount, cpfp_index and change_index to
    getspendtx and listspendtxs entries

Fixes:

  • Avoid a race condition between the signature fetcher thread and the
    bitcoind poller thread upon reorg

v0.3: Huffle Puffer

21 Dec 15:42
0.3
8ac9a8e
Compare
Choose a tag to compare

Third alpha release of revaultd for the third demo of Revault.
Notable changes include .

Features (protocol):
- Cosigning servers are now optional. If none are configured, we
won't try to poll them.
- We now support watchtowers. If some watchtowers are
configured, we'll exchange the revocation signatures with
them.

Features (API):
- A new help command was added based on doc/API.md.
- A new descriptors field was added to the response of
getinfo.
- A new getserverstatus RPC command was added
- revaultd was made a Rust library.
- We now check the size of the Spend transaction as serialized
in base64 instead of hex in getspendtx.
- We categorized JSONRPC errors into groups and assigned a
specific error code to each group.
- The vault information returned in several commands now contain
new funded_at, secured_at, delegated_at, moved_at
fields.
- A new gethistory command was added.

Features (misc):
- If configured with the CPFP BIP32 seed, we now automatically
CPFP the Unvault and Spend transaction for which priority was
set and feerate is lower than the next block feerate by more
than 4sat/vbyte.

Fixes (protocol):
- We now exchange the Spend transaction with the coordinator
serialized in base64.
- We don't create a single connection per sig message sent to
the coordinator anymore.

Fixes (misc):
- We don't crash anymore on unexpected Unvault outputs.
- We are now more robust to state races (see #145).
- We now require xpubs specified in the configuration to be on the
right network.

v0.2: Sarumane Sardinops

16 Aug 12:54
0.2
f204f10
Compare
Choose a tag to compare
Pre-release

This is a second alpha release, containing a (larger) subset of Revault
features in order to be able to test them in a demo deployment.

New features

  • We now have a response to all protocol messages which allows for
    much better error handling.
  • We can now fetch existing signatures from the Cosigning Server. This
    makes the manager signing process robust against connection
    interruption.
  • We now use descriptors in the configuration instead of raw xpubs.
  • listspendtxs now takes an optional status argument.
  • A new gethistory RPC call.
  • We now have a basic Emergency support, along with a emergency RPC
    call.
  • The cpfp_index and change_index fields were added to listspendtxs
    output.
  • The Spend transaction is now returned by listonchaintransactions.
  • We now (conservatively) check the Spend transaction size at creation
    time to avoid a situation were it would be unannounceable to the
    Coordinator due to transport limits.
  • getinfo now returns the managers_threshold.
  • revocationtxs and unvaulttxs now refuse PSBTs containing public
    keys that are not part of the descriptors.
  • We now check the coordinator isn't sending us signatures for public
    keys that aren't part of our descriptors.

Fixes

  • Increase the SQLite busy timeout to 1 minute also for write access
  • Message serialization ambiguity was fixed, which made the connection
    to the Coordinator reliable.
  • Unvault txs retrieval from DB was fixed. The SQL query for retrieving
    the presigned unvaults was wrong, which caused some issues if the
    daemon was restarted while the tx was in the state of "unvaulting".
  • The bitcoind poller logic was flaky and sometimes brittle. Many
    fixes and refactorings made it much more robust, including in very
    edgy cases such as large and specific reorgs simulated by the
    functional tests.
  • In daemon mode, we now open the log file in append mode to avoid
    overwriting it.

v0.1: Albus Pilchardus

19 Apr 14:44
0.1
895a5ac
Compare
Choose a tag to compare
Pre-release

This is an alpha release containing a subset of the Revault features
in order to be able to test them in a demo deployment.